Enelyzer 使用 InfluxDB 实现实时可持续性洞察之旅

导航至

Enprove 是一家领先的能源咨询公司,致力于帮助能源密集型行业向更环保的解决方案转型。通过审计、专家建议及其创新的 SaaS 平台 Enelyzer,Enprove 推动可持续变革。Enelyzer 不仅仅是一个平台,它体现了富有远见的思维、深厚的能源专业知识以及对更美好未来的热情承诺。

挑战

Enelyzer 是一个 SaaS 平台,旨在通过采用可持续实践帮助客户减少环境足迹。它提供实时或近乎实时的洞察、报告和可视化,使企业能够改进其能源管理策略。Enelyzer 的互动方法——提出有针对性的问题并提供数据驱动的洞察——包括关于碳足迹跟踪和 CGI 报告的重要见解。

为了提供实时洞察,Enelyzer 的基础设施需要强大的查询和分析能力。随着 Enelyzer 随着新客户和工作负载的增加而扩展,性能瓶颈开始出现,首先是在其最初基于 Postgres 构建的单体系统中,然后在新近现代化的分布式架构中,挑战依然存在。由于专注于高基数时间序列数据,Enelyzer 需要专门的基础设施。尽管经过精心设计和高质量技术,关系数据库仍无法满足这些需求。在评估了几个选项后,Enelyzer 的工程团队将 InfluxDB 添加到架构中,确保针对其独特的时间序列要求优化性能。

解决方案

Enelyzer 工程团队通过添加领先的时间序列数据库 InfluxDB Cloud Dedicated,实现了 Enelyzer 技术堆栈的现代化。Cloud Dedicated 是一个单租户、托管、基于云的时间序列数据库,专为企业级工作负载而构建。该团队还使用 Rust 重写了 Enelyzer 的后端,并添加了 Telegraf 用于数据收集。在整合 InfluxDB 和 Telegraf 后,Enelyzer 工程师找到了他们寻求的性能提升,并可以再次向其客户提供实时查询和分析。

尽管进行了许多更改,Enelyzer 工程师仍将大部分性能提升归功于 InfluxDB Cloud Dedicated。InfluxDB Cloud Dedicated 提供自定义分区,优化了查询和数据存储。Enelyzer 的 InfluxDB Cloud Dedicated 实例使用自定义分区策略,按 measurement(类似于数据库表)和 point(包括时间戳、字段和标签的单个数据条目)组织数据。此策略通过减少并发和最大限度地减少资源事务来提高读取和写入性能。

架构

InfluxDB 与开放数据生态系统中的所有技术产品和服务兼容。这种高度兼容的特性使 Enelyzer 工程团队能够更快地交付功能并更快地排除错误。

Enelyzer 为客户提供两种面向客户的数据可视化、图表绘制和分析选项。Enelyzer 的用户界面提供直观的图表、可视化和自定义报告。对于需要更高级分析和警报的客户,Enelyzer 直接与 Grafana 集成。

数据通过开源插件代理 Telegraf 进入 Enelyzer 的生态系统。通过使用 Telegraf,Enelyzer 持续从各种来源(例如 MQTT、API、FTP、PLC 以及第三方或专有硬件)实时摄取数据,避免了供应商锁定。Telegraf 用于数据收集、输出和转换的插件使 Enelyzer 能够保持统一的数据管道,而与输入和输出源无关。

在其最新的现代化改造中,Enelyzer 的工程团队将 Mage AI 添加到堆栈中。Mage AI 通过 InfluxDB 管理任务调度和 ETL 管道,转换传入数据作为 Enelyzer 数据规范化过程的一部分。他们还引入了具有推理能力本体,以支持机器学习模型。

通过集成 InfluxDB Cloud Dedicated,Enelyzer 工程师解锁了显着的性能提升,直接支持其帮助企业减少环境足迹的使命。客户受益于定制的实时报告和查询、AI 驱动的预测以及来自任何数据源的无缝实时数据收集。要了解有关 Enelyzer 的更多信息,请在此处阅读完整案例研究