IoTDB时序数据库使用

简介

Apache IoTDB 是一款低成本、高性能的物联网原生时序数据库。它可以解决企业组建物联网大数据平台管理时序数据时所遇到的应用场景复杂、数据体量大、采样频率高、数据乱序多、数据处理耗时长、分析需求多样、存储与运维成本高等多种问题。
IoTDB官网

1. 连接数据库

官方提供了多种语言的连接数据库的方式和案例,这里使用的C#语言连接IoTDB

添加NuGet包 Apache.IoTDB

csharp 复制代码
SessionPool sessionPool = new SessionPool("localhost", 6667, 2);
sessionPool.Open(false).Wait(); //此处必须使用wait,否则在close时后端会报错

2. 写数据

csharp 复制代码
List<string> fields = new List<string>() { "temple" };
List<object> values = new List<object>() { 16.5 };
RowRecord row = new RowRecord(DateTime.UtcNow, values, fields);
await sessionPool.InsertRecordAsync("root.test.device", row);

3. 读数据

目前好像只能执行sql的方式,如果官方能增加类似Sqlsugger语法糖就更好了

csharp 复制代码
var result = await sessionPool.ExecuteQueryStatementAsync("select * from root.test.device");
if (result != null)
{

    for (int i = 0; i < result.RowCount; i++)
    {
        var row = result.Next();
        Console.WriteLine($"{row.Measurements[0]}:{row.Values[0]}");
    }
}

4. 关闭数据库连接

关闭连接,也是比较简单

csharp 复制代码
await sessionPool.Close();
相关推荐
涛思数据(TDengine)1 小时前
从工业实时数据库到AI原生工业数据底座:TDengine TSDB到IDMP的演进启示
时序数据库·tdengine·国产数据库
麦聪聊数据1 小时前
企业数据流通与敏捷API交付实战(六):内部API门户与自助分发机制
数据库·低代码·restful·etl
做个文艺程序员2 小时前
深入 MySQL 内核:MVCC、Buffer Pool 与高并发场景下的极限调优
数据库·mysql·adb
杰克尼2 小时前
redis(day03-优惠券秒杀)
数据库·redis·缓存
七夜zippoe2 小时前
DolphinDB入门:时序数据库的正确打开方式
数据库·struts·时序数据库·工业互联网·dolphindb
数厘2 小时前
2.4MySQL安装配置指南(电商数据分析专用)
数据库·mysql·数据分析
一只小白0002 小时前
数据库对象实例化流程模板 + 常见错误
数据库
一江寒逸3 小时前
零基础从入门到精通MySQL(下篇):精通篇——吃透索引底层、锁机制与性能优化,成为MySQL实战高手
数据库·mysql·性能优化
DevOpenClub3 小时前
全国三甲医院主体信息 API 接口
java·大数据·数据库
一勺菠萝丶3 小时前
管理后台使用手册在线预览与首次登录引导弹窗实现
java·前端·数据库