六月婷婷AV,国产偷窥猎奇福利二区,日韩三级片。,好吊色网站,日韩成人中文在线视频,国产亚洲午夜啪啪,亚洲欧美另类国产精品,国产成人av1,任你艹在线观看

高效查詢數(shù)據(jù)

主要查詢功能

TDengine 采用 SQL 作為查詢語言。應用程序可以通過 C/C++, Java, Go, C#, Python, Node.js 連接器發(fā)送 SQL 語句,用戶可以通過 TDengine 提供的命令行(Command Line Interface, CLI)工具 TAOS Shell 手動執(zhí)行 SQL 即席查詢(Ad-Hoc Query)。TDengine 支持如下查詢功能:

  • 單列、多列數(shù)據(jù)查詢
  • 標簽和數(shù)值的多種過濾條件:>, <, =, <>, like 等
  • 聚合結(jié)果的分組(Group by)、排序(Order by)、約束輸出(Limit/Offset)
  • 數(shù)值列及聚合結(jié)果的四則運算
  • 時間戳對齊的連接查詢(Join Query: 隱式連接)操作
  • 多種聚合/計算函數(shù): count, max, min, avg, sum, twa, stddev, leastsquares, top, bottom, first, last, percentile, apercentile, last_row, spread, diff等

例如:在TAOS Shell中,從表d1001中查詢出voltage > 215的記錄,按時間降序排列,僅僅輸出2條。

taos> select * from d1001 where voltage > 215 order by ts desc limit 2;
           ts            |       current        |   voltage   |        phase         |
======================================================================================
 2018-10-03 14:38:16.800 |             12.30000 |         221 |              0.31000 |
 2018-10-03 14:38:15.000 |             12.60000 |         218 |              0.33000 |
Query OK, 2 row(s) in set (0.001100s)

為滿足物聯(lián)網(wǎng)場景的需求,TDengine支持幾個特殊的函數(shù),比如twa(時間加權(quán)平均),spread (最大值與最小值的差),last_row(最后一條記錄)等,更多與物聯(lián)網(wǎng)場景相關(guān)的函數(shù)將添加進來。TDengine還支持連續(xù)查詢。

具體的查詢語法請看 TAOS SQL 的數(shù)據(jù)查詢 章節(jié)。

多表聚合查詢

物聯(lián)網(wǎng)場景中,往往同一個類型的數(shù)據(jù)采集點有多個。TDengine采用超級表(STable)的概念來描述某一個類型的數(shù)據(jù)采集點,一張普通的表來描述一個具體的數(shù)據(jù)采集點。同時TDengine使用標簽來描述數(shù)據(jù)采集點的靜態(tài)屬性,一個具體的數(shù)據(jù)采集點有具體的標簽值。通過指定標簽的過濾條件,TDengine提供了一高效的方法將超級表(某一類型的數(shù)據(jù)采集點)所屬的子表進行聚合查詢。對普通表的聚合函數(shù)以及絕大部分操作都適用于超級表,語法完全一樣。

示例1:在TAOS Shell,查找北京所有智能電表采集的電壓平均值,并按照location分組

taos> SELECT AVG(voltage) FROM meters GROUP BY location;
       avg(voltage)        |            location            |
=============================================================
             222.000000000 | Beijing.Haidian                |
             219.200000000 | Beijing.Chaoyang               |
Query OK, 2 row(s) in set (0.002136s)

示例2:在TAOS shell, 查找groupId為2的所有智能電表過去24小時的記錄條數(shù),電流的最大值

taos> SELECT count(*), max(current) FROM meters where groupId = 2 and ts > now - 24h;
     cunt(*)  |    max(current)  |
==================================
            5 |             13.4 |
Query OK, 1 row(s) in set (0.002136s)

TDengine僅容許對屬于同一個超級表的表之間進行聚合查詢,不同超級表之間的聚合查詢不支持。在 TAOS SQL 的數(shù)據(jù)查詢 一章,查詢類操作都會注明是否支持超級表。

降采樣查詢、插值

物聯(lián)網(wǎng)場景里,經(jīng)常需要通過降采樣(down sampling)將采集的數(shù)據(jù)按時間段進行聚合。TDengine 提供了一個簡便的關(guān)鍵詞 interval 讓按照時間窗口的查詢操作變得極為簡單。比如,將智能電表 d1001 采集的電流值每10秒鐘求和

taos> SELECT sum(current) FROM d1001 INTERVAL(10s);
           ts            |       sum(current)        |
======================================================
 2018-10-03 14:38:00.000 |              10.300000191 |
 2018-10-03 14:38:10.000 |              24.900000572 |
Query OK, 2 row(s) in set (0.000883s)

降采樣操作也適用于超級表,比如:將北京所有智能電表采集的電流值每秒鐘求和

taos> SELECT SUM(current) FROM meters where location like "Beijing%" INTERVAL(1s);
           ts            |       sum(current)        |
======================================================
 2018-10-03 14:38:04.000 |              10.199999809 |
 2018-10-03 14:38:05.000 |              32.900000572 |
 2018-10-03 14:38:06.000 |              11.500000000 |
 2018-10-03 14:38:15.000 |              12.600000381 |
 2018-10-03 14:38:16.000 |              36.000000000 |
Query OK, 5 row(s) in set (0.001538s)

降采樣操作也支持時間偏移,比如:將所有智能電表采集的電流值每秒鐘求和,但要求每個時間窗口從 500 毫秒開始

taos> SELECT SUM(current) FROM meters INTERVAL(1s, 500a);
           ts            |       sum(current)        |
======================================================
 2018-10-03 14:38:04.500 |              11.189999809 |
 2018-10-03 14:38:05.500 |              31.900000572 |
 2018-10-03 14:38:06.500 |              11.600000000 |
 2018-10-03 14:38:15.500 |              12.300000381 |
 2018-10-03 14:38:16.500 |              35.000000000 |
Query OK, 5 row(s) in set (0.001521s)

物聯(lián)網(wǎng)場景里,每個數(shù)據(jù)采集點采集數(shù)據(jù)的時間是難同步的,但很多分析算法(比如FFT)需要把采集的數(shù)據(jù)嚴格按照時間等間隔的對齊,在很多系統(tǒng)里,需要應用自己寫程序來處理,但使用TDengine的降采樣操作就輕松解決。如果一個時間間隔里,沒有采集的數(shù)據(jù),TDengine還提供插值計算的功能。

語法規(guī)則細節(jié)請見 TAOS SQL 的時間維度聚合 章節(jié)。