首页 > 解决方案 > 如何检查一个点是否是重复的最佳实践?

问题描述

我有一个数据集,有必要将时间戳增加一纳秒,以避免我的观点被视为重复。(从文档中得到建议)

检查数据库中是否已经存在具有特定标签集和时间戳的点的最佳方法是什么?

目前我这样做:

def duplicate_point(influxdb_client, influxdb_point):
    q = "SELECT * FROM random_measurement WHERE time={} AND mac='{}'".format(
        influxdb_point['time'],
        influxdb_point['tags']['mac']
    )
    result = influxdb_client.query(q)
    return bool(result)

如果结果不为空,则给定点是重复的。当发现重复时,时间戳会添加一纳秒。每次必须将一个点写入数据库时​​,我都会进行此检查,但这对吞吐量有很大影响。有没有更好的方法来处理这个问题?

标签: pythoninfluxdbinfluxdb-python

解决方案


推荐阅读