Timestream for InfluxDB 3 的架构设计最佳实践 - Amazon Timestream
Amazon Web Services 文档中描述的 Amazon Web Services 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅 中国的 Amazon Web Services 服务入门 (PDF)

要获得与亚马逊 Timestream 类似的功能 LiveAnalytics,可以考虑适用于 InfluxDB 的亚马逊 Timestream。适用于 InfluxDB 的 Amazon Timestream 提供简化的数据摄取和个位数毫秒级的查询响应时间,以实现实时分析。点击此处了解更多信息。

本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。

Timestream for InfluxDB 3 的架构设计最佳实践

遵循这些指南,您可以设计出能够实现更简单、更高效查询的 InfluxDB 模式,同时优化资源利用率。

性能优化指南

  • 按查询优先级对标签排序:

    • 对表的第一次写入决定存储中物理列事的顺序。

    • 将查询频率最高的标签放在首位,以获得更佳性能。

    • 列顺序在初始写入后不可更改。

  • 避免使用宽架构:

    • 限制每个表的列数(标签及字段)。

    • 过多的列会增加资源消耗并降低性能。

    • 如有需要,可考虑将字段拆分为单独的表。

  • 避免使用稀疏架构:

    • 稀疏架构在各行中包含大量 null 值。

    • 由表架构不统一或使用不同时间戳写入单个字段所导致。

    • 为数据存储和查询增加不必要的开销。

  • 保持表架构的同质性:

    • 每行应具有相同的标签和字段键。

    • 避免使用包含大量 null 值的表。

  • 使用适当的数据类型:

    • 为数据选择最合适的数据类型。

    • 在查询中,整数和布尔字段的性能优于字符串字段。

  • 尽可能使用最后一个值唯一值缓存,以进行重复查询。

查询简洁性指南

  • 保持 N=names:

    • 每个数据属性使用一个标签或字段。

    • 为表、标签和字段选择描述性强且简洁的名称。

    • 避免在单个名称中嵌入多个数据属性。

  • 避免使用关键字和特殊字符:

    • 请勿使用 SQL 或 InfluxQL 保留关键字。

    • 避免在表名称、标签键和字段键中使用特殊字符。

    • 在查询中使用关键词或特殊字符时,需要额外添加引号。