Documentation

InfluxDB 设计洞察与权衡

InfluxDB 是一个时间序列数据库。针对这种用例进行优化需要一些权衡,主要是以性能为代价来提高功能。下面是一些导致权衡的设计见解的列表:

  1. 对于时间序列使用案例,我们假设如果相同的数据被发送多次,那么它是客户端刚刚发送几次的完全相同的数据。

    优点: 简化的 冲突解决 增加了写入性能。
    缺点: 无法存储重复数据;在极少数情况下可能会覆盖数据。

  2. 删除是很少发生的情况。 当它们发生时,几乎总是针对大量旧数据,这些数据在写入时是冷的数据。

    优点: 限制删除的访问可以提高查询和写入性能。
    缺点: 删除功能受到显著限制。

  3. 对现有数据的更新是一个罕见的事件,而有争议的更新则从未发生。时间序列数据主要是从未更新的新数据。

    优点: 限制对更新的访问可以提高查询和写入性能。
    缺点: 更新功能受到显著限制。

  4. 绝大多数写操作是针对具有非常最近时间戳的数据,并且数据是按时间升序添加的。

    优点: 按时间升序添加数据的性能显著更好。
    缺点: 以随机时间或非升序时间写入点的性能显著较差。

  5. 可扩展性至关重要。 数据库必须能够处理大量的读写。

    优点: 数据库可以处理量的读写.
    缺点: InfluxDB开发团队被迫做出权衡以提高性能.

  6. 能够编写和查询数据比获得强一致性的视图更重要。

    优点: 可以通过多个客户端在高负载下进行数据库的写入和查询。
    缺点: 如果数据库在重负载下,查询返回可能不包括最新的数据点。

  7. 许多时间series是短暂的。 有时会出现仅持续几个小时的时间序列,然后消失,例如:一个新的主机启动并报告了一段时间,然后被关闭。

    优点: InfluxDB 擅长管理非连续数据。
    缺点: 无模式设计意味着某些数据库功能不受支持,例如没有跨表连接。

  8. 没有一个点是太重要的。

    优点: InfluxDB 具有非常强大的工具来处理聚合数据和大型数据集。
    缺点: 点没有传统意义上的 ID,它们通过时间戳和系列来区分。



Flux的未来

Flux 正在进入维护模式。您可以像现在一样继续使用它,而无需对您的代码进行任何更改。

阅读更多

InfluxDB 3 开源版本现已公开Alpha测试

InfluxDB 3 Open Source is now available for alpha testing, licensed under MIT or Apache 2 licensing.

我们将发布两个产品作为测试版的一部分。

InfluxDB 3 核心,是我们新的开源产品。 它是一个用于时间序列和事件数据的实时数据引擎。 InfluxDB 3 企业版是建立在核心基础之上的商业版本,增加了历史查询能力、读取副本、高可用性、可扩展性和细粒度安全性。

有关如何开始的更多信息,请查看: