InfluxDB,一个处理大量数据的优秀开源数据库

在选择数据库时 对于新项目或现有项目来替换您正在使用的项目, 我已经在博客上提到过,找到选项的最佳网站是 数据库引擎, 我们可以在其中找到大量数据库,我相信您甚至不知道它们的存在。

但是转到主要话题, 我们今天要讨论的这篇文章是关于 InfluxDB 的,它是处理大量数据而不必牺牲性能的绝佳选择。

我们应该知道 InfluxDB 是一个针对时间序列数据优化的数据库 可用于本地数据中心或作为 Microsoft Azure、Amazon Web Services (AWS) 和 Google Cloud Computing 上的云解决方案。

时间序列数据库 (TSDB) 可以在没有云服务器或数据中心有自己的服务器的情况下运行. 该数据库由美国公司 Influxdata 开发。

InfluxDB 专注于存储科学领域的大量数据 和传感器发送的数据。 数据库 它比传统数据库快得多 在存储和管理时间序列方面。 还可以进行实时处理,以及使用基于 Javascript 的内部查询语言 Flux 查询数据。

这看起来更像是一种编程语言,而不是侦听端口 8086 的 SQL 查询语言,再加上 InfluxDB 没有外部依赖,并且具有用于查询数据结构的以时间为中心的内置函数 由度量、序列和点组成。 每个点由多个键值对组成,称为字段集和时间戳。 当由一组称为标签集的键值对分组时,它们定义了一个系列。 最后,该系列按字符串标识符分组以形成度量。

值可以是 64 位整数、64 位浮点数、字符串和布尔值。 点按其时间和标签集进行索引。 保留策略在指标中定义,并控制如何减少和删除数据。 连续查询定期运行并将结果存储在目标指标中。

如果时间序列要存储在数据库中,例如在使用物联网基础设施时, InfluxDB 可用于保存传感器信息,包括时间戳. 由于时序在 InfluxDB 中扮演着重要的角色,内部时序服务确保 InfluxDB 集群中的所有节点同步运行。 当然,InfluxDB 也适用于存储公司网络上的监控数据。

InfluxDB 中的数据库不必很复杂,可以提供几十个列。 例如,如果需要将传感器的某些测量值保存为时间的函数,则仅将其与几列一起使用是有意义的。

如果必须并行接收和处理来自多个来源的数据,例如在传感器的情况下,关联的数据库必须能够快速处理这些并行查询。 由于数据通常是实时接收的,因此必须相应地调整数据库的写入性能。 此外,还存在来自传感器的测量数据并不总是准确写入和定义的挑战。 时间序列数据库仍然可以存储这些数据并使其可用。

另外, 一旦保存了时间序列数据,以后很少需要更新它. 因此,没有必要为此优化时间序列数据库。 此外,还有删除或压缩不再需要的过时数据所需的功能。 这些任务也是快速时间序列数据处理的一部分。

InfluxDB 仅包含几个可用于 Linux 和 macOS 的组件。 所有功能都包含在一个文件中,便于安装和操作。

最后,如果您有兴趣了解更多信息,可以 检查以下链接中的详细信息。


发表您的评论

您的电子邮件地址将不会被发表。 必填字段标有 *

*

*

  1. 负责数据:MiguelÁngelGatón
  2. 数据用途:控制垃圾邮件,注释管理。
  3. 合法性:您的同意
  4. 数据通讯:除非有法律义务,否则不会将数据传达给第三方。
  5. 数据存储:Occentus Networks(EU)托管的数据库
  6. 权利:您可以随时限制,恢复和删除您的信息。