全部产品
弹性计算 会员服务 网络 安全 移动云 数加·大数据分析及展现 数加·大数据应用 管理与监控 云通信 阿里云办公 培训与认证 更多
存储与CDN 数据库 域名与网站(万网) 应用服务 数加·人工智能 数加·大数据基础服务 互联网中间件 视频服务 开发者工具 解决方案 物联网 智能硬件
高性能时间序列数据库 HiTSDB

使用示例

更新时间:2018-03-16 14:36:51

建议: 使用 HiTSDB SDK 之前,建议您先阅读名词解释和《HTTP API 参考》对 HiTSDB 的基本概念和 API 的使用说明进行了解。

写入数据

本段介绍如何使用 SDK 写入数据。操作前提是您已创建出 HiTSDB 对象。

Point 类为 HiTSDB 的时间点类。您可以使用 HiTSDB 对象的 put 方法将 Point 数据写入 HiTSDB 数据库。

示例代码

每秒写入一个 Point(时间点)数据:

  1. package com.aliyun.hitsdb.client.example;
  2. import java.io.IOException;
  3. import com.aliyun.hitsdb.client.HiTSDB;
  4. import com.aliyun.hitsdb.client.HiTSDBClientFactory;
  5. import com.aliyun.hitsdb.client.HiTSDBConfig;
  6. import com.aliyun.hitsdb.client.value.request.Point;
  7. public class TestWrite {
  8. public static void main(String[] args) throws InterruptedException, IOException {
  9. // 创建 HiTSDB 对象
  10. HiTSDBConfig config = HiTSDBConfig.address("example.hitsdb.com", 8242).config();
  11. HiTSDB tsdb = HiTSDBClientFactory.connect(config);
  12. // 构造数据并写入 HiTSDB
  13. for (int i = 0; i < 3600; i++) {
  14. Point point = Point.metric("test").tag("V", "1.0").value(System.currentTimeMillis(), 123.4567).build();
  15. Thread.sleep(1000); // 1秒提交1次
  16. tsdb.put(point);
  17. }
  18. // 安全关闭客户端,以防数据丢失。
  19. System.out.println("关闭");
  20. tsdb.close();
  21. }
  22. }

查询数据

本段介绍如何使用 SDK 读取数据。操作前提是您已创建出 HiTSDB 对象。

Query 类为 HiTSDB 的查询类,即于查询条件。查询数据前需要先构造出查询条件。您可以使用 HiTSDB 对象的 query 方法查询符合查询条件的数据。

示例代码

查询一小时的数据:

  1. package com.aliyun.hitsdb.client.example;
  2. import java.io.IOException;
  3. import java.util.List;
  4. import com.aliyun.hitsdb.client.HiTSDB;
  5. import com.aliyun.hitsdb.client.HiTSDBClientFactory;
  6. import com.aliyun.hitsdb.client.HiTSDBConfig;
  7. import com.aliyun.hitsdb.client.value.request.Query;
  8. import com.aliyun.hitsdb.client.value.request.SubQuery;
  9. import com.aliyun.hitsdb.client.value.response.QueryResult;
  10. import com.aliyun.hitsdb.client.value.type.Aggregator;
  11. public class TestRead {
  12. public static void main(String[] args) throws IOException {
  13. // 创建 HiTSDB 对象
  14. HiTSDBConfig config = HiTSDBConfig.address("example.hitsdb.com", 8242).config();
  15. HiTSDB tsdb = HiTSDBClientFactory.connect(config);
  16. // 构造查询条件并查询数据。
  17. long now = System.currentTimeMillis();
  18. // 查询一小时的数据
  19. Query query = Query.timeRange(now - 3600 * 1000, now)
  20. .sub(SubQuery.metric("test").aggregator(Aggregator.NONE).tag("V", "1.0").build()).build();
  21. // 查询数据
  22. List<QueryResult> result = tsdb.query(query);
  23. // 打印输出
  24. System.out.println(result);
  25. // 安全关闭客户端,以防数据丢失。
  26. tsdb.close();
  27. }
  28. }
本文导读目录