将数据迁移到InfluxDB集群
将数据从其他由TSM支持的InfluxDB实例(包括InfluxDB OSS 1.x、2.x、InfluxDB Enterprise和InfluxDB Cloud (TSM))迁移到由InfluxDB 3支持的Clustered InfluxDB。
你应该迁移吗?
在迁移到InfluxDB集群时,有一些重要的事情需要考虑。 以下问题将帮助指导您决定是否迁移。
您目前受到系列基数的限制吗?
是的,您应该迁移。系列基数是InfluxDB TSM存储引擎的一个主要限制因素。数据中唯一系列越多,数据库的性能就越差。InfluxDB 3存储引擎支持几乎无限的系列基数,毫无疑问,它是处理高系列基数工作负载的更好解决方案。
您想使用SQL查询您的数据吗?
是的,你应该迁移。InfluxDB Clustered 让你可以用 SQL 查询你的时间序列数据。有关使用 SQL 查询数据的更多信息,请参见:
你想要更好的 InfluxQL 性能吗?
是的,您应该迁移。设计InfluxDB v3存储引擎时的主要目标之一是启用对SQL和InfluxQL的高性能实现。与使用TSM(InfluxDB OSS 1.x、2.x和企业版)查询的InfluxDB相比,在查询由InfluxDB 3驱动的InfluxDB时,InfluxQL查询的性能更高。
您是否依赖于Flux查询和Flux任务?
您不应该迁移。InfluxDB Clustered 不支持 Flux。
迁移前
在您从 InfluxDB 1.x 或 2.x 迁移到 InfluxDB 集群之前,有一些由 TSM 存储引擎支持的模式设计实践在 InfluxDB 3 存储引擎中不被支持。具体来说,InfluxDB 3 强制执行以下模式限制:
- 标签和字段不能使用重复的名称
- 默认情况下,测量可以包含多达 250 列,其中每列表示时间、字段或标签。
有关更多信息,请参见 Schema restrictions。
如果您的模式不符合这些限制,您必须在迁移到 InfluxDB 集群之前更新您的模式。
数据迁移指南
将数据从InfluxDB Cloud迁移到InfluxDB集群
要将数据从使用TSM的InfluxDB Cloud迁移到使用v3存储引擎的InfluxDB Clustered,按时间批次查询数据并将查询到的数据写入InfluxDB集群中的InfluxDB 3数据库。
从 InfluxDB 1.x 迁移数据到 InfluxDB 集群
要将数据从由TSM驱动的InfluxDB 1.x(OSS或Enterprise)迁移到InfluxDB集群,请将数据导出为行协议,并将导出的数据写入您的InfluxDB集群数据库。