Linux|Linux MacBook Docker安装IoTDB及使用

IotDB解压安装
InfluxDB和IotDB介绍与性能对比
IotDB官方下载地址
IotDB官方文档地址
IotDB是Java开发的,运行需要安装JDK,安装oracle JDK, 不建议使用自带的openJDK

#解压 unzip apache-iotdb-0.11.2-SNAPSHOT-bin.zip #进入主目录 cd apache-iotdb-0.11.2-SNAPSHOT#启动 (前台启动) sbin/start-server.sh #nohup后台启动,输出启动日志到nohup.log文件 nohup sbin/start-server.sh >> nohup.log2>&1 &#nohup后台启动,不输出启动日志 nohup sbin/start-server.sh >/dev/null 2>&1 &#停止 sbin/stop-server.sh

终端连接IotDB
#以前的IotDB旧版本 0.9.x以下版本 连接 sbin/start-client.sh#新的版本IotDB >=0.10.x的版本连接, 默认连接本地IP和6667端口 sbin/start-cli.sh#和上面的命令等同 sbin/start-cli.sh -h 127.0.0.1 -p 6667 -u root -pw root#远程连接其他IotDB sbin/start-cli.sh -h 192.168.130.1 -p 6667 -u root -pw root

docker安装IotDB
#docker启动 docker run -d -p 6667:6667 -p 31999:31999 -p 8181:8181 --name some-iotdb apache/iotdb#进入容器 docker exec -it some-iotdb /bin/bash#执行命令,连接IotDB start-cli.sh

说明:
6667: RPC port
31999: JMX port
8181: Monitor port
5555: Data sync port
9003: internal metadata rpc port (for cluster)
40010: internal data rpc port (for cluster)
客户端使用: 版本在0.10.x 以上 latest version (or, >=0.10.x), 使用 start-cli.sh命令. 版本在 0.9.x and 0.8.1, 使用 start-client.sh命令
【Linux|Linux MacBook Docker安装IoTDB及使用】默认用户名和密码是:root/root
IotDB基本操作
#连接 sbin/start-cli.sh#插入数据,会自动创建分组 INSERT INTO root.iotdata.test_db.1234(timestamp, version,code3,code2,code1) values(1584602760341,'1.1.1','code3','code2','code1'); #显示时序序列测点 SHOW TIMESERIES SHOW TIMESERIES root.iotdata SHOW TIMESERIES root.iotdata.test_db#显示分组 SHOW STORAGE GROUP#添加分组 SET STORAGE GROUP TO root.ln#往分组ln添加数据 INSERT INTO root.ln.aa(timestamp,bbb) values(1585384837018000000,112); #查询最新一条数据 select last * from root.ln.aa#查询最新一个测点 select last bbb from root.ln.aa#删除分组test delete storage group root.test#删除序列下的所有测点 delete timeseries root.iotdata.test_db.* delete timeseries root.iotdata.*#按条件name = '11'查询最后时间, 比较慢 select max_time(name) from root.iotdata.test_db where name = '11'#按条件name = '11'查询最后时间, 比较快 select name from root.iotdata.test_db where name = '11' order by time desc limit 1

IotDB过期策略
#毫秒 只保留近一个小时的数据 set ttl to root.ln 3600000 #保留10天数据 60*60*24*10*1000=864000000 set ttl to root.iotdata 864000000#取消过期策略 UNSET TTL TO root.ln #显示所有策略 Show all ttl #显示一个group的ttl Show ttl on root.ln #显示多个 SHOW TTL ON root.group1,root.group2,root.group3

    推荐阅读