网络研讨会亮点:介绍 InfluxDB 的新时间序列数据库引擎
作者 Caitlin Croft / 产品
2023 年 3 月 1 日
导航到
作为 InfluxDB Cloud(由 IOx 提供支持)的发布部分,Paul Dix 和 Balaji Palani 提供了 InfluxDB Cloud 的概述和演示。如果您错过了,本文是对网络研讨会内容的快速 5 分钟阅读 摘要。我们分享了录音 和幻灯片,供大家随时查看。
TL;DR
- 由 IOx 提供支持的 InfluxDB Cloud 目前可在两个 AWS 区域使用 - 德国法兰克福或美国弗吉尼亚州
- 这是一个用 Rust 编写的列式数据库,使用 Apache Arrow 生态系统,并支持原生 SQL
- 包括原生 InfluxQL 支持 & 允许无限基数
关键时间戳
- :36 | Paul Dix 提供了 InfluxDB Cloud(由 IOx 提供支持)的概述和路线图更新
- 22:47 | Balaji Palani 演示了 InfluxDB Cloud 和 Apache Superset 可视化
- 38:40 | 问答时间
网络研讨会亮点
概述
由 IOx 提供支持的 InfluxDB Cloud 是一个基于 Apache Arrow 的列式数据库,考虑到云环境,其中对象存储和可扩展计算层是分开的。数据库使用对象存储进行持久化,Apache Parquet 是持久化格式。开发者可以使用 InfluxDB Cloud 在数据到达对象存储之前实时查询数据。它通过包含 SQL 查询、解析器、规划器和执行引擎支持原生 SQL。InfluxDB Cloud 使用 Apache DataFusion 作为查询引擎。Paul 深入探讨了两个不同的存储引擎(TSM 和 IOx)之间的差异,使用 Apache 生态系统的优势,以及模式设计技巧。
“InfluxDB Cloud,由IOx驱动,是针对时间序列优化且支持无限基数云列数据库,包括工作负载和查询。” —— Paul Dix | InfluxData创始人兼CTO
无限基数!
Paul Dix讨论了基数问题,当时间序列数量过多时会影响系统性能,并可能影响数据摄入成本。查询会变慢,特别是当你想要对数百万个独特的独立时间序列进行计算时。InfluxDB Cloud,由IOx驱动的设计和架构消除了这一限制。
IOx的功能使我们团队能够在未来几年开发大量功能。社区成员将能够动态地上下扩展计算层,无需大量手动工作。开发者上传历史数据将更快。我们解决了在边缘收集高精度数据的需求,这些人不需要将数据存储在中心化存储中进行实时查询,但需要它进行历史分析
“我们的目标是提供一个地方,让开发者能够发送所有的数据、指标、事件、跟踪和日志数据……InfluxDB Cloud,由IOx驱动,是实时摄取数据并在其上构建自动化系统的理想场所,并能够对其进行分析。” —— Paul Dix | InfluxData创始人兼CTO
为什么选择Rust?
Paul Dix认为Rust对于系统软件的未来至关重要。Rust编译器可以防止数据擦除和其他潜在的错误。InfluxData的开发者期待利用Rust的可嵌入性将其集成到其他系统和语言中。
“它让你对内存有细粒度的控制,拥有高级语言的安全性,并且具有出色的并发应用程序模型。” —— Paul Dix | InfluxData创始人兼CTO
Apache Arrow
团队认为Apache Arrow Flight SQL是数据库系统之间传输数据的新标准。Andrew Lamb是我们的工程团队的一员,也是Apache Arrow项目管理委员会(PMC)的主席。Apache Arrow已被数据科学家和数据仓库和大数据工程师快速采用。Paul深入探讨了使用Apache Parquet作为持久格式和Apache Arrow Flight SQL的重要性。我们甚至为Grafana构建了一个Flight SQL插件,使用户能够构建类似于传统BI工具的报告和仪表板。InfluxDB Cloud将很快推出更多集成!
“我们的目标是使Flight SQL成为更大数据库生态系统供应商的标准,并使第三方工具开发者能够轻松采用。” —— Paul Dix | InfluxData创始人兼CTO
演示时间!
观看Balaji Palani,产品市场营销副总裁,提供InfluxDB Cloud,由IOx驱动的演示。Balaji演示了新的数据探索器,开发者可以编写SQL查询并查看模式。Balaji展示了如何在Apache Superset中可视化时间戳数据,以及如何将指标和跟踪结合起来创建仪表板。现在,开发者可以使用InfluxDB在单一数据存储中收集指标、事件和跟踪。查看InfluxDB Observability仓库。
问答环节
参与者有很多问题。以下是一些最常见的提问及其答案。
问题:使用InfluxQL与SQL相比有哪些好处?
保罗:SQL中的任何内容都将包含在InfluxQL中,因为InfluxQL使用相同的底层引擎。多年来,我们听到很多人说,对于一些基本的时序查询,他们认为InfluxQL更容易使用。对于现有用户的主要好处是,由IOx驱动的InfluxDB Cloud将原生支持InfluxQL;将有一个翻译层,将暴露InfluxDB V. 1查询API层。您可以用InfluxQL提交查询,就像它在InfluxDB V. 1中一样。它将以InfluxQL 1相同的格式执行并返回结果,这意味着,如果您使用Grafana等第三方工具,您只需像与InfluxDB V1数据库交互一样与之交互,而无需重新编写仪表板。
我们的目标是使其尽可能接近原始的InfluxQL,同时利用数据库的新性能优势。在IOx上,许多查询的速度将比在传统的InfluxQL引擎上快几个数量级。显然,提高性能的请求在整个项目中一直在进行。
问题:由IOx驱动的InfluxDB Cloud支持Flux吗?
保罗:Flux已在InfluxDB Cloud的API中启用,但不在用户界面中。对于想要使用Flux的人来说,他们可以在API中使用它。我们目前正在UI中推动SQL。一旦添加了原生的InfluxQL支持,我们可能会在UI中启用它。Flux不仅仅是一种查询语言,它是一种完整的脚本语言,我们目前没有能力将其添加到Rust原生实现中。遗憾的是,这意味着在由IOx驱动的influxDB Cloud中进行的许多查询优化在Flux中不可用。Flux基本上充当一个脚本客户端,拉回大量数据并做一些事情。为了获得最佳性能,我们鼓励人们使用SQL或,当它发布时,使用InfluxQL。
问题:现在它用Rust编写,桶创建或数据摄取有变化吗?
保罗:创建桶的API是一样的。如果您在启动之前注册了InfluxDB Cloud,您将使用之前的存储系统TSM。在您的账户中,您可以创建一个新的组织,它将基于IOx。在接下来的几个月里,我们将将现有的InfluxDB Cloud账户从TSM迁移到IOx。我们的目标是到年底所有用户都升级到由IOx驱动的InfluxDB Cloud。
问题:是否可以用SQL编写InfluxDB任务?
保罗:是的,这是计划的一部分。我们希望让人们能够用SQL编写任务。我们正在考虑在数据库中添加对Python或JavaScript的脚本支持。但这目前尚未确定。能够用SQL和InfluxQL编写任务是路线图的一部分。
问题:InfluxDB OSS和InfluxDB Enterprise的产品时间表是什么?
保罗:团队主要专注于构建更多InfluxDB Cloud功能。我们计划在4月底提供云专用集群。到8月,我们希望更新InfluxDB OSS和InfluxDB Enterprise。请关注团队发布的更多更新。
有用的链接
要查看完整的网络研讨会并收听剩余的问答,请点击这里!