Monasca的数据聚合和转换组件
项目描述
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_specs 和 transform_specs,以利用现有通用聚合组件为新的 Monasca 指标集创建聚合管道。
原始提案和蓝图
项目详情
下载文件
下载适用于您的平台的文件。如果您不确定选择哪个,请了解更多关于 安装软件包 的信息。