今天主要介绍常用的 SQL ,包括对元数据和数据的增删改查,本文的sql都是基于 0.10.0 的,这个大版本马上发布!
正文 11018 字(大部分是 sql 和打印信息,汉字不多),预计阅读时间 10 分钟。
目前 IoTDB 的接口主要有 SQL 和 NoSQL 两种,今天介绍 SQL 接口,为了方便理解,大家可以可以在下面链接下载 0.10.0 预发布版,一边看一边试:
二进制版下载链接:
https://pan.baidu.com/s/1KWnEIIE0Duwr9TZVugib6w
密码:dmrg
也可以源代码编译:
git clone https://github.com/apache/incubator-iotdb.git
cd incubator-iotdb
git fetch origin rel/0.10:rel/0.10
git checkout rel/0.10
mvn clean package -pl distribution -am -DskipTests
二进制发布包位置:
distribution/target/apache-iotdb-0.10.0-SNAPSHOT-incubating-bin.zip
好,开始!
DDL 数据定义语言
参考文档:
http://iotdb.apache.org/UserGuide/Master/Operation%20Manual/DDL%20Data%20Definition%20Language.html
1、存储组操作
# 创建存储组
IoTDB> set storage group to root.turbine
# 查询存储组
IoTDB> SHOW STORAGE GROUP
+-------------+
|storage group|
+-------------+
| root.turbine|
+-------------+
# 删除存储组
IoTDB> delete storage group root.turbine
2、创建时间序列
create timeseries root.turbine.d1.s1(temperature1) with datatype=FLOAT, encoding=GORILLA, compression=SNAPPY tags(unit=degree, owner=user1) attributes(description=mysensor1, location=BeiJing)
create timeseries root.turbine.d1.s2(temperature2) with datatype=FLOAT, encoding=GORILLA, compression=SNAPPY tags(unit=degree, owner=user1) attributes(description=mysensor2, location=TianJin)
create timeseries root.turbine.d2.s1(temperature1) with datatype=FLOAT, encoding=GORILLA, compression=SNAPPY tags(unit=degree, owner=user2) attributes(description=mysensor3, location=HeBei)
上边注册的序列可视化就是下边这个图了(手画的。。目前没可视化功能)
为了实际应用中使用更方便,除了时间序列的路径和编码等基本信息外,我们增加了测点别名、标签、属性三个概念。标签和属性总大小在配置文件中 tag_attribute_total_size 设置。
别名:测点的别名,可以和测点名一样用来读写,可以不设置。
标签:key=value 形式,可以通过标签反向查询时间序列元数据,比如,单位和拥有者,标签会常驻内存。目前只能给定一个 tag 查询条件,可精确查询和模糊查询。
属性:key=value 形式,只能根据时间序列路径展示出属性信息,如描述信息和位置。如果没有反向查询的需求,建议定义成属性。
# 插入更新 别名、标签、属性
ALTER timeseries root.turbine.d1.s1 UPSERT ALIAS=newAlias TAGS(unit=Degree, owner=me) ATTRIBUTES(description=ha, newAttr=v1)
# 删除时间序列
delete timeseries root.turbine.d2.s1
3、根据路径和标签查询序列元数据
# 查询所有时间序列数据
IoTDB> show timeseries
+------------------+------------+-------------+--------+--------+-----------+-----------+--------+-----+