【问题标题】:Influx db java client batch does not write to DBInfluxdb java客户端批处理不写入数据库
【发布时间】:2017-10-23 08:57:42
【问题描述】:

我正在尝试使用他们的 Java 客户端向 influxDB 写入点。 批次对我很重要。

如果我将 influxDB.enableBatch 与 influxDB.write(Point) 一起使用,则不会插入任何数据。 如果我使用 BatchPoints 和 influxDB.write(batchPoints) - 数据插入成功。

两个代码示例均来自:https://github.com/influxdata/influxdb-java/tree/influxdb-java-2.7

    InfluxDB influxDB = InfluxDBFactory.connect(influxUrl, influxUser, influxPassword);
    influxDB.setDatabase(dbName);
    influxDB.setRetentionPolicy("autogen");

    // Flush every 2000 Points, at least every 100ms
    influxDB.enableBatch(2000, 100, TimeUnit.MILLISECONDS);
    influxDB.write(Point.measurement("cpu")
            .time(System.currentTimeMillis(), TimeUnit.MILLISECONDS)
            .addField("idle", 90L)
            .addField("user", 9L)
            .addField("system", 1L)
            .build());

    Query query = new Query("SELECT idle FROM cpu", dbName);
    QueryResult result = influxDB.query(query);

什么都不返回。

    BatchPoints batchPoints = BatchPoints.database(dbName).tag("async", "true").build();
    Point point1 = Point
            .measurement("cpu")
            .tag("atag", "test")
            .addField("idle", 90L)
            .addField("usertime", 9L)
            .addField("system", 1L)
            .build();
    batchPoints.point(point1);
    influxDB.write(batchPoints);
    Query query = new Query("SELECT * FROM cpu ", dbName);
    QueryResult result = influxDB.query(query);

这会成功返回数据。

如前所述,我需要第一种方式来运行。 我怎样才能做到这一点?

版本: 涌入数据库-1.3.6 influxdb-java:2.7

问候,伊多

【问题讨论】:

    标签: java influxdb


    【解决方案1】:

    也许为时已晚,或者您已经解决了您的问题,但我会回答您的问题,它可能对其他人有用。

    我认为您的第一个示例不起作用,因为您启用了批处理功能,它将“每 2000 点刷新一次,至少每 100 毫秒”。所以基本上它可以工作,但是您在执行实际保存之前进行选择。 当您使用influxDB.enableBatch(...); 功能时,influxdb-client 会在收集数据或超时后创建内部线程池来存储您的数据,并且不会立即完成。

    在第二个示例中,当您使用 influxDB.write(batchPoints); influxdb-client 时,会将您的数据同步写入 InfluxDb。这就是为什么您的 select 语句能够立即返回数据的原因。

    【讨论】:

      猜你喜欢
      • 2021-07-04
      • 2013-03-29
      • 2016-10-30
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2010-09-06
      • 1970-01-01
      • 2015-09-14
      相关资源
      最近更新 更多