系统环境需求

    安装 IoTDB:参考 Quick Start. 假设 IoTDB 安装在 $IoTDB_HOME.

    安装 Zeppelin:

    假设 Zeppelin 安装在 $Zeppelin_HOME.

    编译解释器

    运行如下命令编译IoTDB Zeppelin解释器。

    1. $IoTDB_HOME/zeppelin-interpreter/target/zeppelin-{version}-SNAPSHOT-jar-with-dependencies.jar

    安装解释器

    当你编译好了解释器,在Zeppelin的解释器目录下创建一个新的文件夹iotdb,并将IoTDB解释器放入其中。

    启动 Zeppelin 和 IoTDB

    进入 $Zeppelin_HOME 并运行Zeppelin:

    1. # Unix/OS X
    2. > ./bin/zeppelin-daemon.sh start
    3. # Windows

    进入 并运行IoTDB:

    当Zeppelin启动后,访问 http://127.0.0.1:8080/Zeppelin-IoTDB - 图5 (opens new window)

    通过如下步骤创建一个新的笔记本页面:

    1. 点击 Create new node 按钮
    2. 设置笔记本名
    3. 选择解释器为iotdb

    现在可以开始使用Zeppelin操作IoTDB了。

    1. SET STORAGE GROUP TO root.ln.wf01.wt01;
    2. CREATE TIMESERIES root.ln.wf01.wt01.status WITH DATATYPE=BOOLEAN, ENCODING=PLAIN;
    3. CREATE TIMESERIES root.ln.wf01.wt01.temperature WITH DATATYPE=FLOAT, ENCODING=PLAIN;
    4. CREATE TIMESERIES root.ln.wf01.wt01.hardware WITH DATATYPE=INT32, ENCODING=PLAIN;
    5. INSERT INTO root.ln.wf01.wt01 (timestamp, temperature, status, hardware)
    6. VALUES (1, 1.1, false, 11);
    7. INSERT INTO root.ln.wf01.wt01 (timestamp, temperature, status, hardware)
    8. VALUES (2, 2.2, true, 22);
    9. INSERT INTO root.ln.wf01.wt01 (timestamp, temperature, status, hardware)
    10. INSERT INTO root.ln.wf01.wt01 (timestamp, temperature, status, hardware)
    11. VALUES (4, 4.4, false, 44);
    12. INSERT INTO root.ln.wf01.wt01 (timestamp, temperature, status, hardware)
    13. VALUES (5, 5.5, false, 55);
    14. SELECT *
    15. FROM root.ln.wf01.wt01
    16. WHERE time >= 1

    样例如下:

    iotdb-note-snapshot2

    用户也可以参考 编写更丰富多彩的文档。

    以上样例放置于 $IoTDB_HOME/zeppelin-interpreter/Zeppelin-IoTDB-Demo.zpln

    进入页面 http://127.0.0.1:8080/#/interpreterZeppelin-IoTDB - 图9 (opens new window) 并配置IoTDB的连接参数:

    可配置参数默认值和解释如下:

    属性默认值描述
    iotdb.host127.0.0.1IoTDB 主机名
    iotdb.port6667IoTDB 端口
    iotdb.usernameroot用户名
    iotdb.passwordroot密码
    iotdb.fetchSize10000查询结果分批次返回时,每一批数量
    iotdb.zoneId时区ID
    iotdb.enable.rpc.compressionFALSE是否允许rpc压缩
    iotdb.time.display.typedefault时间戳的展示格式