配置时间序列集合
您可以配置映射规则,将包含日期时间列的表迁移到时间序列集合。 时间序列集合可有效存储时间序列数据。 在时间序列集合中,写入的组织方式使得来自同一源的数据与来自相似时间点的其他数据点存储在一起。
关于此任务
您可以使用 字段自定义将string列转换为Relational Migrator中的日期时间字段。
具有时间序列配置的CDC作业在完成之前不会创建时间序列集合。
与普通集合相比,在时间序列集合中存储时间序列数据可提高查询效率,减少时间序列数据和二级索引的磁盘使用量。
时间序列集合的使用案例包括IoT 、预测和基于时间的分析。
开始之前
步骤
配置时间序列集合
在Mappings窗格中,单击 Configure按钮。
选择Time Series Collection单选按钮。
选择 Time Field。
Time Field
是每个时间序列文档中包含日期时间字段的字段的名称。 时间序列集合中的文档必须具有有效的 BSON 日期数据类型。 有关在 Relational Migrator 中将字段转换为日期时间类型的详细信息,请参阅字段自定义。注意
如果有多个日期时间列,则必须为每个时间序列集合选择一个字段。
(可选)选择 Meta Field
Meta Field
是每个时间序列文档中包含元数据的字段的名称。 指定字段中的元数据用于标记一系列唯一的文档。 元数据应该很少改变。选择 Granularity。
指定与连续传入时间戳之间的时间最匹配的
Granularity
值。 设置正确的粒度可优化MongoDB在集合中存储数据的方式,从而提高性能。 可能的值为seconds
、minutes
和hours
。(可选)选择Expire After Seconds 。
Expire After Seconds
通过指定文档过期后的秒数,启用自动删除时间序列集合中文档的功能。 MongoDB会自动删除过期文档。单击 Save And Close(连接)。
注意
当集合配置了时间序列字段时,时间序列图标会在Schema model窗格中集合名称旁边显示。
例子
以下示例将rental_date
列转换为 MongoDB 中的时间序列字段:
rental_id | rental_date | inventory_id | customer_id | return_date | 以来staff_id | last_updated |
---|---|---|---|---|---|---|
1 | 2005-05-24 22:53:30 | 367 | 130 | 2005-05-26 22:04:30 | 1 | 2006-02-15 20:30:53 |
{ rental_date: { $date: "2005-05-24T22:53:30.000Z", }, last_updated: "2006-02-16T01:30:53Z", customerId: 130, rental_date: { $date: "2005-05-26T22:04:30.000Z", }, _id: { $oid: "661597470a883992d56d60d6", }, inventory_id: 367, staff_id: 1, rental_id: 1, }