跳转到主要内容

Monasca的数据聚合和转换组件

项目描述

团队和仓库标签

https://governance.openstack.org/tc/badges/monasca-transform.svg

Monasca Transform

monasca-transform是一个数据驱动型聚合引擎,它根据业务需求收集、分组和聚合现有的单个Monasca指标,并将新的转换(派生)指标发布到Monasca Kafka队列。

  • 由于新的转换指标作为Monasca中的任何其他指标发布,因此可以在转换指标上设置和触发警报。

  • Monasca Transform使用Apache Spark进行数据聚合。Apache Spark是一个高度可扩展、快速、内存中、容错并行的数据处理框架。所有monasca-transform组件都是用Python实现的,并使用Spark的PySpark Python API与Spark交互。

  • Monasca 转换器在两个阶段对传入的指标进行转换和聚合。

    • 在第一阶段,spark streaming 应用程序被设置为以可配置的 流间隔(默认 stream_inteval 为 10 分钟)从 kafka 获取数据,并将 流间隔 内聚合的数据写入 kafka 中的 pre_hourly_metrics 主题。

    • 在第二阶段,每小时启动一次,对 Kafka 中的 metrics_pre_hourly 主题中的所有指标再次进行聚合,这次是在一个更长的间隔(一小时)内。这些每小时聚合的指标发布到 kafka 中的 metrics 主题。

Monasca Transform处理的用例

请参阅 Monasca/Transform wiki 中的 问题描述 部分。

操作

请参阅 Monasca/Transform wiki 中的 Monasca 转换器如何运行 部分。

架构

请参阅 Monasca/Transform wiki 中的 架构逻辑数据处理流程 部分。

设置开发环境

monasca-transform 使用 DevStack 作为通用的开发环境。有关如何在 DevStack 部署中包含 monasca-transform 的详细信息,请参阅 devstack 目录中的 README.md

通用聚合组件

Monasca 转换器使用一组通用的聚合组件,这些组件可以组合成一个聚合管道。

请参阅 通用聚合组件 文档,了解可用的通用聚合组件列表。

创建一个新的聚合管道示例

通用聚合组件使得为不同的 Monasca 指标构建新的聚合管道变得容易。

此创建新聚合管道的示例 new aggregation pipeline 展示了如何创建 pre_transform_specstransform_specs,以利用现有通用聚合组件为新的 Monasca 指标集创建聚合管道。

原始提案和蓝图

原始提案: Monasca/Transform-proposal

蓝图: monasca-transform blueprint

项目详情


下载文件

下载适用于您的平台的文件。如果您不确定选择哪个,请了解更多关于 安装软件包 的信息。

源代码分发

monasca_transform-2.0.0.tar.gz (141.3 kB 查看散列)

上传时间 源代码

构建分发

monasca_transform-2.0.0-py3-none-any.whl (76.2 kB 查看散列)

上传时间 Python 3

支持者