日本综合一区二区|亚洲中文天堂综合|日韩欧美自拍一区|男女精品天堂一区|欧美自拍第6页亚洲成人精品一区|亚洲黄色天堂一区二区成人|超碰91偷拍第一页|日韩av夜夜嗨中文字幕|久久蜜综合视频官网|精美人妻一区二区三区

RELATEED CONSULTING
相關(guān)咨詢
選擇下列產(chǎn)品馬上在線溝通
服務(wù)時(shí)間:8:30-17:00
你可能遇到了下面的問題
關(guān)閉右側(cè)工具欄

新聞中心

這里有您想知道的互聯(lián)網(wǎng)營銷解決方案
No.4時(shí)序數(shù)據(jù)庫隨筆 - 安裝

本篇環(huán)境

MocOS 11.1

IoTDB 0.11.2

JDK 1.8.0_211

二進(jìn)制安裝

二進(jìn)制安裝是最簡單的安裝方式了,三部曲,下載解壓,啟動(dòng)驗(yàn)證,實(shí)操體驗(yàn):

下載解壓

jincheng:2021IoT jincheng.sunjc$ wget https://archive.apache.org/dist/iotdb/0.11.2/apache-iotdb-0.11.2-bin.zip

jincheng:2021IoT jincheng.sunjc$ tar -zxf apache-iotdb-0.11.2-bin.zip
jincheng:2021IoT jincheng.sunjc$ ls
apache-iotdb-0.11.2 apache-iotdb-0.11.2-bin.zip
jincheng:2021IoT jincheng.sunjc$

啟動(dòng)驗(yàn)證

jincheng:apache-iotdb-0.11.2 jincheng.sunjc$ nohup sbin/start-server.sh -rpc_port 6668 >/dev/null 2>&1 &
[2] 24160
jincheng:apache-iotdb-0.11.2 jincheng.sunjc$ sbin/start-cli.sh -h 127.0.0.1 -p 6668 -u root -pw root

實(shí)操體驗(yàn)

操作部分需要對對時(shí)序數(shù)據(jù)概念有一定的了解,大家可以先看操作直觀體驗(yàn),也可以花2個(gè)小時(shí)進(jìn)行一下科普《No.1-Apache IoTDB 隨筆 - Time Series DBMS 綜述》

查看和創(chuàng)建 存儲(chǔ)組(STORAGE GROUP)

STORAGE GROUP 是IoTDB 中組織時(shí)間序列數(shù)據(jù)的邏輯概念,在實(shí)際業(yè)務(wù)中你可以用STORAGE GROUP來邏輯區(qū)分不同的邏輯組織(部門/業(yè)務(wù)團(tuán)隊(duì))、地理區(qū)間(廠區(qū)/省市)等等你想對時(shí)序數(shù)據(jù)進(jìn)行大的分組區(qū)分的邏輯手段。細(xì)節(jié)我們后面介紹,這里先直觀體驗(yàn)如果查看和創(chuàng)建:

  • SHOW STORAGE GROUP
  • SET STORAGE GROUP TO root.happy
IoTDB> SHOW STORAGE GROUP
+-------------+
|storage group|
+-------------+
+-------------+
Empty set.
It costs 0.222s

IoTDB> SET STORAGE GROUP TO root.happy
Msg: The statement is executed successfully.
IoTDB> SHOW STORAGE GROUP
+-------------+
|storage group|
+-------------+
| root.happy|
+-------------+
Total line number = 1
It costs 0.026s
IoTDB>

查看和創(chuàng)建 時(shí)間序列(TIMESERIES)

TIMESERIES 是IoTDB 中的核心概念了,是實(shí)際時(shí)序數(shù)據(jù)的抽象,比如工業(yè)領(lǐng)域的某個(gè)傳感器數(shù)據(jù)的采集,對應(yīng)到IoTDB就是一個(gè)時(shí)間序列,我們使用CREATE TIMESERIES語法來創(chuàng)建新的時(shí)間序列,就像數(shù)據(jù)庫的DDL一樣,創(chuàng)建時(shí)間序列時(shí)需要定義時(shí)間序列指標(biāo)數(shù)據(jù)的數(shù)據(jù)的類型和編碼方式,同樣,這里先直觀體驗(yàn)如果查看和創(chuàng)建:

  • CREATE TIMESERIES
  • SHOW TIMESERIES
IoTDB> CREATE TIMESERIES root.happy.device1.sensor1.temperature WITH DATATYPE=FLOAT, ENCODING=RLE
Msg: The statement is executed successfully.
IoTDB> SHOW TIMESERIES
+--------------------------------------+-----+-------------+--------+--------+-----------+----+----------+
| timeseries|alias|storage group|dataType|encoding|compression|tags|attributes|
+--------------------------------------+-----+-------------+--------+--------+-----------+----+----------+
|root.happy.device1.sensor1.temperature| null| root.happy| FLOAT| RLE| SNAPPY|null| null|
+--------------------------------------+-----+-------------+--------+--------+-----------+----+----------+
Total line number = 1
It costs 0.019s
IoTDB>

細(xì)心的你一定發(fā)現(xiàn)了,除了我們剛才說的 STORAGE GROUP,數(shù)據(jù)類型、編碼方式、TIMESERIES還出現(xiàn)了 alias/tags/attributes這些陌生的字段,這些又是什么概念在IoTDB有什么作用呢?我們下一篇和大家進(jìn)行介紹,如果在下一篇還沒有出來之前,你已經(jīng)迫不及待了怎么辦?想必大家都知道,在Apache IoTDB社區(qū)還有一位大神 叫 喬嘉林,學(xué)習(xí)IoTDB,喬老師的文章不得不收藏哈,趕緊關(guān)注 Apache IoTDB 官方公眾號,高質(zhì)文章等你來...

插入和查詢

TIMESERIES的插入和查詢,就和傳統(tǒng)數(shù)據(jù)庫越來越接近了, IoTDB 中元數(shù)據(jù)的組織方式是樹形結(jié)構(gòu),上面的 root.happy.device1.sensor1.temperature就是一個(gè)樹的Path ,那么我們怎樣插入時(shí)間序列的值和查詢對應(yīng)的時(shí)間序列呢?同樣,這里先直觀體驗(yàn)如果查看和創(chuàng)建:

  • INSERT INTO  
  • SELECT
IoTDB> INSERT INTO root.happy.device1.sensor1(timestamp,temperature) values(5927, 25.72)
Msg: The statement is executed successfully.
IoTDB> SELECT * FROM root.happy.device1.sensor1
+-----------------------------+--------------------------------------+
| Time|root.happy.device1.sensor1.temperature|
+-----------------------------+--------------------------------------+
|1970-01-01T08:00:05.927+08:00| 25.72|
+-----------------------------+--------------------------------------+
Total line number = 1
It costs 0.091s
IoTDB>

源碼和Docker安裝

我們后續(xù)篇章介紹...

帶著問題期待明天

學(xué)習(xí)的路上總是好奇心驅(qū)動(dòng)成長,不知道你在幾分鐘時(shí)間看完上面的內(nèi)容后,是否有問題?我這里有一個(gè)問題,那就是:“如果我的傳感器的值是 null 怎么辦?IoTDB支持null嗎?

IoTDB> INSERT INTO root.happy.device1.sensor1(timestamp,temperature) values(5927, null)
Msg: 401: line 1:75 mismatched input 'null' expecting {NOW, TRUE, FALSE, '-', '.', 'NaN', INT, EXPONENT, DATETIME, DOUBLE_QUOTE_STRING_LITERAL, SINGLE_QUOTE_STRING_LITERAL}

上面的插入語句我將temperature的值設(shè)置為 null,得到來 mismatched input 'null' expecting的錯(cuò)誤提示。那么目前IoTDB如何處理null的呢?

IoTDB> INSERT INTO root.happy.device1.sensor1(timestamp,temperature) values(7925, NaN)
Msg: The statement is executed successfully.
IoTDB> SELECT * FROM root.happy.device1.sensor1
+-----------------------------+--------------------------------------+
| Time|root.happy.device1.sensor1.temperature|
+-----------------------------+--------------------------------------+
|1970-01-01T08:00:05.927+08:00| 52.72|
|1970-01-01T08:00:07.925+08:00| 0.0|
+-----------------------------+--------------------------------------+
Total line number = 2

如上大家發(fā)現(xiàn)IoTDB用NaN來代表沒有值,查詢之后我們發(fā)現(xiàn)NaN應(yīng)該代表來當(dāng)前數(shù)據(jù)類型的默認(rèn)值。如上:FLOAT 的默認(rèn)值就是 0.0.

所以,這里的問題就是: “我們需要Apache IoTDB 對時(shí)間序列的值 支持 null 嗎?” 你的實(shí)際業(yè)務(wù)中有沒有場景不能用NaN默認(rèn)值,而必須允許null的存在?期待你的反饋,Apache IoTDB 為你的業(yè)務(wù)而生,你的要求就是IoTDB社區(qū)的需求!??!

作者介紹

孫金城,社區(qū)編輯,Apache Flink PMC 成員,Apache Beam Committer,Apache IoTDB PMC 成員,ALC Beijing 成員,Apache ShenYu 導(dǎo)師,Apache 軟件基金會(huì)成員。關(guān)注技術(shù)領(lǐng)域流計(jì)算和時(shí)序數(shù)據(jù)存儲(chǔ)。


網(wǎng)站題目:No.4時(shí)序數(shù)據(jù)庫隨筆 - 安裝
當(dāng)前URL:http://www.dlmjj.cn/article/dhcghdh.html