diff --git a/docs/Documentation-CHN/UserGuideV0.7.0/2-Concept Key Concepts and Terminology/1-Key Concepts and Terminology.md b/docs/Documentation-CHN/UserGuideV0.7.0/2-Concept Key Concepts and Terminology/1-Key Concepts and Terminology.md index 2131ae256d1ab42342b33a559ddae8158a5b7d2c..1eb060ef0d076f380110e022592cc478ddab8361 100644 --- a/docs/Documentation-CHN/UserGuideV0.7.0/2-Concept Key Concepts and Terminology/1-Key Concepts and Terminology.md +++ b/docs/Documentation-CHN/UserGuideV0.7.0/2-Concept Key Concepts and Terminology/1-Key Concepts and Terminology.md @@ -32,7 +32,7 @@ IoTDB中涉及如下基本概念: 传感器是指在实际场景中的一种检测装置,它能感受到被测量的信息,并能将感受到的信息按一定规律变换成为电信号或其他所需形式的信息输出并发送给IoTDB。在IoTDB当中,存储的所有的数据及路径,都是以传感器为单位进行组织。 -* 3.1.3 存储组 +* 存储组 用户可以将任意前缀路径设置成存储组。如有4条时间序列`root.vehicle.d1.s1`, `root.vehicle.d1.s2`, `root.vehicle.d2.s1`, `root.vehicle.d2.s2`,路径`root.vehicle`下的两个设备d1,d2可能属于同一个业主,或者同一个厂商,因此关系紧密。这时候就可以将前缀路径`root.vehicle`指定为一个存储组,这将使得IoTDB将其下的所有设备的数据存储在同一个文件夹下。未来`root.vehicle`下增加了新的设备,也将属于该存储组。 @@ -94,12 +94,12 @@ LayerName: Identifier | STAR 时间戳是一个数据到来的时间点。IoTDB时间戳分为两种类型,一种为LONG类型,一种为DATETIME类型(包含DATETIME-INPUT, DATETIME-DISPLAY两个小类)。 -在用户在输入时间戳时,可以使用LONG类型的时间戳或DATETIME-INPUT类型的时间戳,其中DATETIME-INPUT类型的时间戳支持格式见表格2-1。 +在用户在输入时间戳时,可以使用LONG类型的时间戳或DATETIME-INPUT类型的时间戳,其中DATETIME-INPUT类型的时间戳支持格式如表所示: -
**表格2-1 DATETIME-INPUT类型支持格式** +
**DATETIME-INPUT类型支持格式** |format| -|:---:| +|:---| |yyyy-MM-dd HH:mm:ss| |yyyy/MM/dd HH:mm:ss| |yyyy.MM.dd HH:mm:ss| @@ -128,9 +128,9 @@ LayerName: Identifier | STAR
-IoTDB在显示时间戳时可以支持LONG类型以及DATETIME-DISPLAY类型,其中DATETIME-DISPLAY类型可以支持用户自定义时间格式。自定义时间格式的语法见表格2-2。 +IoTDB在显示时间戳时可以支持LONG类型以及DATETIME-DISPLAY类型,其中DATETIME-DISPLAY类型可以支持用户自定义时间格式。自定义时间格式的语法如表所示: -
**表格2-2 DATETIME-DISPLAY自定义时间格式的语法** +
**DATETIME-DISPLAY自定义时间格式的语法** |Symbol|Meaning|Presentation|Examples| |:---:|:---:|:---:|:---:| diff --git a/docs/Documentation-CHN/UserGuideV0.7.0/2-Concept Key Concepts and Terminology/2-Data Type.md b/docs/Documentation-CHN/UserGuideV0.7.0/2-Concept Key Concepts and Terminology/2-Data Type.md index d7009960132547e56c5527777c5bc4c1aadaf289..edb449e26075982e0549a86cc300b86137a24022 100644 --- a/docs/Documentation-CHN/UserGuideV0.7.0/2-Concept Key Concepts and Terminology/2-Data Type.md +++ b/docs/Documentation-CHN/UserGuideV0.7.0/2-Concept Key Concepts and Terminology/2-Data Type.md @@ -32,7 +32,7 @@ IoTDB支持: 一共六种数据类型。 -其中**FLOAT**与**DOUBLE**类型的序列,如果编码方式采用[RLE](/#/Documents/latest/chap2/sec3)或[TS_2DIFF](/#/Documents/latest/chap2/sec3)可以指定MAX_POINT_NUMBER,该项为浮点数的小数点后位数,具体指定方式请参见本文[第5.1节](/#/Documents/latest/chap5/sec1),若不指定则系统会根据配置文件tsfile-format.properties文件中的[float_precision项](/#/Documents/latest/chap2/sec3)配置。 +其中**FLOAT**与**DOUBLE**类型的序列,如果编码方式采用[RLE](/#/Documents/latest/chap2/sec3)或[TS_2DIFF](/#/Documents/latest/chap2/sec3)可以指定MAX_POINT_NUMBER,该项为浮点数的小数点后位数,具体指定方式请参见本文[第5.1节](/#/Documents/latest/chap5/sec1),若不指定则系统会根据配置文件tsfile-format.properties文件中的[float_precision项](/#/Documents/latest/chap4/sec2)配置。 当系统中用户输入的数据类型与该时间序列的数据类型不对应时,系统会提醒类型错误,如下所示,二阶差分不支持布尔类型的编码: diff --git a/docs/Documentation-CHN/UserGuideV0.7.0/3-Operation Manual/2-Data Model Selection.md b/docs/Documentation-CHN/UserGuideV0.7.0/3-Operation Manual/2-Data Model Selection.md index fb3b7e12400d868e00612e8ffa2ca8aadb690a94..814fbb9e637529a7a2e31ad491a51ffe4792668e 100644 --- a/docs/Documentation-CHN/UserGuideV0.7.0/3-Operation Manual/2-Data Model Selection.md +++ b/docs/Documentation-CHN/UserGuideV0.7.0/3-Operation Manual/2-Data Model Selection.md @@ -50,7 +50,7 @@ IoTDB > set storage group to root.sgcc ``` IoTDB> set storage group to root.ln.wf01 -error: The prefix of root.ln.wf01 has been set to the storage group. +Msg: org.apache.iotdb.exception.MetadataErrorException: org.apache.iotdb.exception.PathErrorException: The prefix of root.ln.wf01 has been set to the storage group. ``` ### 查看存储组 @@ -103,11 +103,7 @@ IoTDB> show timeseries root.ln
-需要注意的是,当查询路径不存在时,系统会给出相应的错误提示,如下所示: -``` -IoTDB> show timeseries root.ln.wf03 -Msg: Failed to fetch timeseries root.ln.wf03's metadata because: Timeseries does not exist. -``` +需要注意的是,当查询路径不存在时,系统会返回0条时间序列。 ### 注意事项 diff --git a/docs/Documentation-CHN/UserGuideV0.7.0/3-Operation Manual/3-Data Import.md b/docs/Documentation-CHN/UserGuideV0.7.0/3-Operation Manual/3-Data Import.md index 08f692241547e678ef079f4b01085ba73bc24b97..89e11e2446c69e5dcc7002e2febf86ca92ee6f83 100644 --- a/docs/Documentation-CHN/UserGuideV0.7.0/3-Operation Manual/3-Data Import.md +++ b/docs/Documentation-CHN/UserGuideV0.7.0/3-Operation Manual/3-Data Import.md @@ -43,7 +43,7 @@ IoTDB > insert into root.ln.wf02.wt02(timestamp,status) values(1,true) IoTDB > insert into root.ln.wf02.wt02(timestamp,hardware) values(1, "v1") ``` -以上示例代码将长整型的timestamp以及值为true的数据插入到时间序列`root.ln.wf02.wt02.status`中和将长整型的timestamp以及值为”v1”的数据插入到时间序列`root.ln.wf02.wt02.hardware`中。执行成功后会出现execute successfully的提示,代表数据插入已完成。 +以上示例代码将长整型的timestamp以及值为true的数据插入到时间序列`root.ln.wf02.wt02.status`中和将长整型的timestamp以及值为”v1”的数据插入到时间序列`root.ln.wf02.wt02.hardware`中。执行成功后会返回执行时间,代表数据插入已完成。 > 注意:在IoTDB中,TEXT类型的数据单双引号都可以来表示,上面的插入语句是用的是双引号表示TEXT类型数据,下面的示例将使用单引号表示TEXT类型数据。 diff --git a/docs/Documentation-CHN/UserGuideV0.7.0/3-Operation Manual/4-Data Query.md b/docs/Documentation-CHN/UserGuideV0.7.0/3-Operation Manual/4-Data Query.md index 359eaff37b079657a305e0b1807909c9f317ec2b..506e94e4b61ac60c7509a0cb612d9fdce599d6c6 100644 --- a/docs/Documentation-CHN/UserGuideV0.7.0/3-Operation Manual/4-Data Query.md +++ b/docs/Documentation-CHN/UserGuideV0.7.0/3-Operation Manual/4-Data Query.md @@ -35,7 +35,7 @@ select temperature from root.ln.wf01.wt01 where time < 2017-11-01T00:08:00.000 ``` 其含义为: -被选择的设备为ln集团wf01子站wt01设备;被选择的时间序列为温度传感器(temperature);该语句要求选择出该设备在“2017-11-01T00:08:00.000”(此处可以使用多种时间格式,详情可参看本文3.1.8节)时间点以前的所有温度传感器的值。 +被选择的设备为ln集团wf01子站wt01设备;被选择的时间序列为温度传感器(temperature);该语句要求选择出该设备在“2017-11-01T00:08:00.000”(此处可以使用多种时间格式,详情可参看[2.1节](/#/Documents/latest/chap2/sec1))时间点以前的所有温度传感器的值。 该SQL语句的执行结果如下: @@ -50,7 +50,7 @@ select status, temperature from root.ln.wf01.wt01 where time > 2017-11-01T00:05: ``` 其含义为: -被选择的设备为ln集团wf01子站wt01设备;被选择的时间序列为“供电状态(status)”和“温度传感器(temperature)”;该语句要求选择出“2017-11-01T00:05:00.000”至“2017-11-01T00:12:00.000”之间的所选时间序列的值。 +被选择的设备为ln集团wf01子站wt01设备;被选择的时间序列为供电状态(status)和温度传感器(temperature);该语句要求选择出“2017-11-01T00:05:00.000”至“2017-11-01T00:12:00.000”之间的所选时间序列的值。 该SQL语句的执行结果如下: @@ -67,7 +67,7 @@ select status,temperature from root.ln.wf01.wt01 where (time > 2017-11-01T00:05: ``` 其含义为: -被选择的设备为ln集团wf01子站wt01设备;被选择的时间序列为“供电状态(status)”和“温度传感器(temperature)”;该语句指定了两个不同的时间区间,分别为“2017-11-01T00:05:00.000至2017-11-01T00:12:00.000”和“2017-11-01T16:35:00.000至2017-11-01T16:37:00.000”;该语句要求选择出满足任意时间区间的被选时间序列的值。 +被选择的设备为ln集团wf01子站wt01设备;被选择的时间序列为“供电状态(status)”和“温度传感器(temperature)”;该语句指定了两个不同的时间区间,分别为“2017-11-01T00:05:00.000至2017-11-01T00:12:00.000”和“2017-11-01T16:35:00.000至2017-11-01T16:37:00.000”;该语句要求选择出满足任一时间区间的被选时间序列的值。 该SQL语句的执行结果如下:
@@ -347,7 +347,7 @@ select count(status), max_value(temperature) from root.ln.wf01.wt01 group by (1d ``` 其含义为: -关于GROUP BY子句的具体含义请参见本文第4.4.2.1节,结合LIMIT子句之后该语句要求返回查询结果的第3行到第7行(首行为第0行)。 +回查询结果的第3行到第7行(首行为第0行)。 该SQL语句的执行结果如下: @@ -389,9 +389,7 @@ select * from root.ln.wf01.wt01 where time > 2017-11-01T00:05:00.000 and time < SQL语句为: ``` -select * from root.ln.wf01.wt01 -where time > 2017-11-01T00:05:00.000 and time < 2017-11-01T00:12:00.000 -slimit 1 soffset 1 +select * from root.ln.wf01.wt01 where time > 2017-11-01T00:05:00.000 and time < 2017-11-01T00:12:00.000 slimit 1 soffset 1 ``` 其含义为: @@ -408,9 +406,6 @@ SQL语句为: ``` select max_value(*) from root.ln.wf01.wt01 group by (1d, [2017-11-01T00:00:00, 2017-11-07T23:00:00]) slimit 1 soffset 1 ``` -其含义为: - -该GROUP BY子句的具体含义请参见4.4.2.1小节。 该SQL语句的执行结果如下: diff --git a/docs/Documentation-CHN/UserGuideV0.7.0/3-Operation Manual/5-Data Maintenance.md b/docs/Documentation-CHN/UserGuideV0.7.0/3-Operation Manual/5-Data Maintenance.md index 72dd3784293953cfc4153ef7ce2cedc932d2aa21..07ee6e2e6f78ab1cf9d77b50ee79c34b8c944819 100644 --- a/docs/Documentation-CHN/UserGuideV0.7.0/3-Operation Manual/5-Data Maintenance.md +++ b/docs/Documentation-CHN/UserGuideV0.7.0/3-Operation Manual/5-Data Maintenance.md @@ -45,7 +45,7 @@ error: The BOOLEAN data type should be true/TRUE or false/FALSE 当更新的列不存在时,IoTDB给出没有存在的路径的错误提示: ``` IoTDB> update root.ln.wf02 set wt02.sta = false where time < now() -error: do not select any existing path +Msg: do not select any existing series ``` ### 数据删除 @@ -65,7 +65,7 @@ delete from root.ln.wf02.wt02.status where time<=2017-11-01T16:26:00; #### 多传感器时间序列值删除 -当ln集团wf02子站的wt02设备在2017-11-01 16:26:00之前的供电状态和设备硬件版本都需要删除,此时可以使用含义更广的前缀路径(参见本文第3.1.6节)或带`*`路径(参见本文第3.1.7节)进行删除操作,进行此操作的SQL语句为: +当ln集团wf02子站的wt02设备在2017-11-01 16:26:00之前的供电状态和设备硬件版本都需要删除,此时可以使用含义更广的[前缀路径或带`*`路径](/#/Documents/latest/chap2/sec1)进行删除操作,进行此操作的SQL语句为: ``` delete from root.ln.wf02.wt02 where time <= 2017-11-01T16:26:00; @@ -79,5 +79,5 @@ delete from root.ln.wf02.wt02.* where time <= 2017-11-01T16:26:00; 需要注意的是,当删除的路径不存在时,IoTDB会提示路径不存在,无法删除数据,如下所示。 ``` IoTDB> delete from root.ln.wf03.wt02.status where time < now() -error: TimeSeries does not exist and cannot be delete data +Msg: TimeSeries does not exist and its data cannot be deleted ``` diff --git a/docs/Documentation-CHN/UserGuideV0.7.0/3-Operation Manual/6-Priviledge Management.md b/docs/Documentation-CHN/UserGuideV0.7.0/3-Operation Manual/6-Priviledge Management.md index 914844b1fb0e34ca8c2f986bb93f8dbb3e1b90cf..d2c7af514eb40584ea3ad1baf066057db35799a2 100644 --- a/docs/Documentation-CHN/UserGuideV0.7.0/3-Operation Manual/6-Priviledge Management.md +++ b/docs/Documentation-CHN/UserGuideV0.7.0/3-Operation Manual/6-Priviledge Management.md @@ -97,7 +97,7 @@ INSERT INTO root.ln.wf01.wt01(timestamp, status) values(1509465600000, true) #### 系统所含权限列表 -
**表格3-8 系统所含权限列表** +
**系统所含权限列表** |权限名称|说明| |:---|:---| diff --git a/docs/Documentation-CHN/UserGuideV0.7.0/4-Deployment and Management/1-Deployment.md b/docs/Documentation-CHN/UserGuideV0.7.0/4-Deployment and Management/1-Deployment.md index a6dcaf9b63ce5c37d889aaea4e2c32d4decb6d00..8a17d2f19623ed874e10eb5fe7d05347d1b58dc7 100644 --- a/docs/Documentation-CHN/UserGuideV0.7.0/4-Deployment and Management/1-Deployment.md +++ b/docs/Documentation-CHN/UserGuideV0.7.0/4-Deployment and Management/1-Deployment.md @@ -97,3 +97,37 @@ Shell > git clone git@github.com:apache/incubator-iotdb.git ``` > mvn clean package -pl iotdb -am -Dmaven.test.skip=true ``` + +成功后,可以在终端看到如下信息: + +``` +[INFO] ------------------------------------------------------------------------ +[INFO] Reactor Summary: +[INFO] +[INFO] IoTDB Root ......................................... SUCCESS [ 7.020 s] +[INFO] TsFile ............................................. SUCCESS [ 10.486 s] +[INFO] Service-rpc ........................................ SUCCESS [ 3.717 s] +[INFO] IoTDB Jdbc ......................................... SUCCESS [ 3.076 s] +[INFO] IoTDB .............................................. SUCCESS [ 8.258 s] +[INFO] ------------------------------------------------------------------------ +[INFO] BUILD SUCCESS +[INFO] ------------------------------------------------------------------------ +``` + +否则,你需要检查错误语句,并修复问题。 + +编译后,IoTDB项目会在名为iotdb的子文件夹下,该文件夹会包含以下内容: + +``` +$IOTDB_HOME/ +| ++- bin/ <-- script files +| ++- conf/ <-- configuration files +| ++- lib/ <-- project dependencies +``` + +### 通过Docker安装 (Dockerfile) + +你可以通过[这份指南](/#/Documents/latest/chap4/sec7)编译并运行一个IoTDB docker image。 diff --git a/docs/Documentation-CHN/UserGuideV0.7.0/4-Deployment and Management/2-Configuration.md b/docs/Documentation-CHN/UserGuideV0.7.0/4-Deployment and Management/2-Configuration.md index e036596d706e0080606f0c04b067c58e213ea6de..d8816bce7399f75e8a2398bf0bf596d56b2517a2 100644 --- a/docs/Documentation-CHN/UserGuideV0.7.0/4-Deployment and Management/2-Configuration.md +++ b/docs/Documentation-CHN/UserGuideV0.7.0/4-Deployment and Management/2-Configuration.md @@ -71,7 +71,7 @@ |名字|HEAP\_NEWSIZE| |:---:|:---| -|描述|oTDB启动时能使用的最小堆内存大小。| +|描述|IoTDB启动时能使用的最小堆内存大小。| |类型|String| |默认值|取决于操作系统和机器配置。在Linux或MacOS系统下默认值为机器CPU核数乘以100M的值与MAX\_HEAP\_SIZE四分之一这二者的最小值。在Windows系统下,32位系统的默认值是512M,64位系统默认值是2G。。| |改后生效方式|重启服务器生效| @@ -122,23 +122,23 @@ |名字| page\_size\_in\_byte | |:---:|:---| -|描述|内存中每个列写出时,写成的页单页最大的大小,单位为字节| +|描述|内存中每个列写出时,写成的单页最大的大小,单位为字节| |类型|Int32| |默认值| 65536 | |改后生效方式|即时生效| -* time\_series\_data\_类型 +* time\_series\_data\_type -|名字| time\_series\_data\_类型 | +|名字| time\_series\_data\_type | |:---:|:---| |描述|时间戳数据类型| |类型|枚举String: "INT32", "INT64"| |默认值| Int64 | |改后生效方式|即时生效| -* time\_series\_encoder +* time\_encoder -|名字| time\_series\_data\_类型 | +|名字| time\_encoder | |:---:|:---| |描述| 时间列编码方式| |类型|枚举String: “TS_2DIFF”,“PLAIN”,“RLE”| @@ -162,7 +162,7 @@ |:---:|:---| |描述| 系统统计量触发统计的频率,单位为秒。| |类型|Int32| -|默认值| 10 | +|默认值| 5 | |改后生效方式|重启服务器生效| * data\_dir @@ -192,9 +192,9 @@ |默认值| 10000 | |改后生效方式|重启服务器生效| -* flush\_wal\_period\_in\_ms +* force\_wal\_period\_in\_ms -|名字| flush\_wal\_period\_in\_ms | +|名字| force\_wal\_period\_in\_ms | |:---:|:---| |描述| 写前日志定期刷新到磁盘的周期,单位毫秒,有可能丢失至多flush\_wal\_period\_in\_ms毫秒的操作。 | |类型|Int32| @@ -205,20 +205,11 @@ |名字| flush\_wal\_threshold | |:---:|:---| -|描述| A写前日志的条数达到该值之后,刷新到磁盘,有可能丢失至多flush\_wal\_threshold个操作 | +|描述| 写前日志的条数达到该值之后,刷新到磁盘,有可能丢失至多flush\_wal\_threshold个操作 | |类型|Int32| |默认值| 10000 | |改后生效方式|重启服务器生效| -* max\_opened\_folder - -|名字| max\_opened\_folder | -|:---:|:---| -|描述| 最大同时打开的文件夹个数。默认为100。该值变大,则占用内存变多,IO随机读写变小,文件分块(即group)更加整齐;该值越小,则占用内存越少,IO随机读写变多,文件块大小不足group的概率变大group\_size\_in\_byte * max\_opened\_folder = 内存的最大占用量理论值。对于一个应用,folder的总量等于storage\_group的数量 | -|类型|Int32| -|默认值| 100 | -|改后生效方式|重启服务器生效| - * merge\_concurrent\_threads |名字| merge\_concurrent\_threads | @@ -228,33 +219,15 @@ |默认值| 0 | |改后生效方式|重启服务器生效| -* mult\_dir\_strategy +* multi\_dir\_strategy -|名字| mult\_dir\_strategy | +|名字| multi\_dir\_strategy | |:---:|:---| |描述| IoTDB在tsfile\_dir中为TsFile选择目录时采用的策略。可使用简单类名或类名全称。系统提供以下三种策略:
1. SequenceStrategy:IoTDB按顺序从tsfile\_dir中选择目录,依次遍历tsfile\_dir中的所有目录,并不断轮循;
2. MaxDiskUsableSpaceFirstStrategy:IoTDB优先选择tsfile\_dir中对应磁盘空余空间最大的目录;
3. MinFolderOccupiedSpaceFirstStrategy:IoTDB优先选择tsfile\_dir中已使用空间最小的目录;
4. (用户自定义策略)
您可以通过以下方法完成用户自定义策略:
1. 继承cn.edu.tsinghua.iotdb.conf.directories.strategy.DirectoryStrategy类并实现自身的Strategy方法;
2. 将实现的类的完整类名(包名加类名,UserDfineStrategyPackage)填写到该配置项;
3. 将该类jar包添加到工程中。| |类型|String| |默认值| MaxDiskUsableSpaceFirstStrategy | |改后生效方式|重启服务器生效| -* period\_time\_for\_flush\_in\_second - -|名字| period\_time\_for\_flush\_in\_second | -|:---:|:---| -|描述| IoTDB定时关闭文件的间隔。单位为秒。每隔设置的时间,系统会自动将内存中的数据刷入磁盘,并将当前打开的所有文件流封口。| -|类型|Int32| -|默认值| 3600 | -|改后生效方式|重启服务器生效| - -* period\_time\_for\_merge\_in\_second - -|名字| period\_time\_for\_merge\_in\_second | -|:---:|:---| -|描述| IoTDB在运行时有两部分数据存在于内存:overflow和bufferwrite,系统会自动每隔一段时间合并两部分数据。单位为秒。| -|类型|Int32| -|默认值| 7200 | -|改后生效方式|重启服务器生效| - * rpc_address |名字| rpc_address | @@ -271,34 +244,7 @@ |描述|jdbc服务监听端口。请确认该端口不是系统保留端口并且未被占用。| |类型|Short Int : [0,65535]| |默认值| 6667 | -|改后生效方式|重启服务器生效| - -* tsfile_dir - -|名字| tsfile_dir | -|:---:|:---| -|描述| IoTDB TsFile的存储路径,默认存放在和bin目录同级的data目录下的settled1、settled2、settled3三个文件夹中(数据分配策略见mult\_dir\_strategy配置项)。相对路径的起始目录与操作系统相关,建议使用绝对路径。若路径不存在,系统会自动创建。| -|类型|String[]| -|默认值| settled1, settled2, settled3 | -|改后生效方式|重启服务器生效| - -* wal\_cleanup\_threshold - -|名字| wal\_cleanup\_threshold | -|:---:|:---| -|描述| 当文件中和内存中的日志总条数达到该值后,对所有日志进行压缩并去掉无用的记录日志。该值过大会导致短暂的写入暂停,过小会增加IO和CPU消耗 | -|类型|Int32| -|默认值| 500000 | -|改后生效方式|重启服务器生效| - -* sys\_dir - -|名字| sys\_dir | -|:---:|:---| -|描述| IIoTDB系统元数据存储路径,默认存放在和bin目录同级的data目录下。相对路径的起始目录与操作系统相关,建议使用绝对路径。 | -|类型|String| -|默认值| system | -|改后生效方式|重启服务器生效| +|改后生效方式|重启服务器生效|| * time_zone @@ -318,72 +264,6 @@ |默认值| false | |改后生效方式|重启服务器生效| - -* mem\_threshold\_warning - -|名字| mem\_threshold\_warning | -|:---:|:---| -|描述| 百分比值,这个值乘以IoTDB运行时分配到的最大堆内存值后得到一个阈值。当IoTDB使用内存超过该阈值的时候,将触发把当前内存中的数据写入到磁盘上,并释放相应内存的操作。默认为IoTDB运行时能使用最大堆内存的80%。如果该值配置超过1,那么该配置项将不生效。如果该值小于等于0,那么使用默认值。| -|类型| Float | -|默认值| 0.8 | -|改后生效方式|重启服务器生效| - - -* mem\_threshold\_dangerous - -|名字| mem\_threshold\_dangerous | -|:---:|:---| -|描述| 百分比值,这个值乘以IoTDB运行时分配到的最大堆内存后得到一个阈值。当IoTDB使用内存超过该阈值的时候,将触发把当前内存中的数据写入到磁盘上,并释放相应内存的操作。同时,写入操作将被阻塞。默认为IoTDB运行时能使用最大堆内存的90%。如果该值配置超过1,那么该配置项将不生效。如果该值小于等于0,那么使用默认值。| -|类型| Float | -|默认值| 0.9 | -|改后生效方式|重启服务器生效| - -* mem\_monitor\_interval - -|名字| mem\_monitor\_interval | -|:---:|:---| -|描述| IoTDB系统每隔一段时间检查当前内存使用情况,如果超过了根据mem\_threshold\_warning或者mem\_threshold\_dangerous计算出来的阈值,将触发相应的操作。单位是为毫秒,默认值是1000毫秒。| -|类型| Int64 | -|默认值| 1000 | -|改后生效方式|重启服务器生效| - -* bufferwrite\_meta\_size\_threshold - -|名字| bufferwrite\_meta\_size\_threshold | -|:---:|:---| -|描述| 当内存中保存的TsFile文件元数据大小超过该阈值之后,会将元数据保存在TsFile文件尾部,然后关闭该文件,并释放元数据占用的内存空间。单位为byte,默认值为200M。| -|类型| Int64 | -|默认值| 209715200 | -|改后生效方式|重启服务器生效| - -* bufferwrite\_file\_size\_threshold - -|名字| bufferwrite\_meta\_size\_threshold | -|:---:|:---| -|描述| 当磁盘上的一个TsFile文件大小超过该阈值时,会关闭该TsFile文件。并打开一个新的TsFile文件接受数据写入。单位为byte,默认值为2G。| -|类型| Int64 | -|默认值| 2147483648 | -|改后生效方式|重启服务器生效| - - -* overflow\_meta\_size\_threshold - -|名字| overflow\_meta\_size\_threshold | -|:---:|:---| -|描述| 当内存中保存的Overflow文件元数据大小超过该阈值之后,会将元数据保存在TsFile文件尾部,然后关闭该文件,并释放元数据占用的内存空间。单位为byte,默认值为200M。| -|类型| Int64 | -|默认值| 209715200 | -|改后生效方式|重启服务器生效| - -* overflow\_file\_size\_threshold - -|名字| overflow\_file\_size\_threshold | -|:---:|:---| -|描述| 当磁盘上的一个Overflow文件大小超过该阈值时,会关闭该Overflow文件。并打开一个新的Overflow文件接受数据写入。单位为byte,默认值为2G。| -|类型| Int64 | -|默认值| 2147483648 | -|改后生效方式|重启服务器生效| - * concurrent\_flush\_thread |名字| concurrent\_flush\_thread | @@ -396,7 +276,7 @@ * stat\_monitor\_detect\_freq\_in\_second -|名字| concurrent\_flush\_thread | +|名字| stat\_monitor\_detect\_freq\_in\_second | |:---:|:---| |描述| 每隔一段时间(以秒为单位)检测当前记录统计量时间范围是否超过stat_monitor_retain_interval,并进行定时清理。| |类型| Int32 | diff --git a/docs/Documentation-CHN/UserGuideV0.7.0/4-Deployment and Management/3-System Monitor.md b/docs/Documentation-CHN/UserGuideV0.7.0/4-Deployment and Management/3-System Monitor.md index ea77a6276aaf3b866b162c07cf608b54d48ab419..f61144184859390a55f1508d2075fcc020e2332f 100644 --- a/docs/Documentation-CHN/UserGuideV0.7.0/4-Deployment and Management/3-System Monitor.md +++ b/docs/Documentation-CHN/UserGuideV0.7.0/4-Deployment and Management/3-System Monitor.md @@ -33,7 +33,7 @@ 本模块是IoTDB为用户提供的对其中存储数据信息的数据统计监控方式,我们会在系统中为您记录各个模块的数据统计信息,并将其汇总存入数据库中。当前0.7.0版本的IoTDB提供IoTDB写入数据的统计功能。 -用户可以选择开启或关闭数据统计监控功能(您可以设定配置文件中的`enable_stat_monitor`项,详细信息参见本文第5.2.2.2.2节)。 +用户可以选择开启或关闭数据统计监控功能(您可以设定配置文件中的`enable_stat_monitor`项,详细信息参见[第4.2节](/#/Documents/latest/chap4/sec2))。 #### 写入数据统计 diff --git a/docs/Documentation/UserGuideV0.7.0/2-Concept Key Concepts and Terminology/1-Key Concepts and Terminology.md b/docs/Documentation/UserGuideV0.7.0/2-Concept Key Concepts and Terminology/1-Key Concepts and Terminology.md index 6b516e40e9b305519ea9ab1b6160f6340eb89437..01ccc6d7a7640b13e1ab24529f77abaa36749df2 100644 --- a/docs/Documentation/UserGuideV0.7.0/2-Concept Key Concepts and Terminology/1-Key Concepts and Terminology.md +++ b/docs/Documentation/UserGuideV0.7.0/2-Concept Key Concepts and Terminology/1-Key Concepts and Terminology.md @@ -95,12 +95,12 @@ When `*` appears in the middle of the path, it represents `*` itself, i.e., a la * Timestamp -The timestamp is the time point at which a data arrives. IoTDB timestamps are divided into two types: LONG and DATETIME (including DATETIME-INPUT and DATETIME-DISPLAY). When a user enters a timestamp, he can use a LONG type timestamp or a DATETIME-INPUT type timestamp, where the support format of the DATETIME-INPUT type timestamp is shown in Table 2-1. +The timestamp is the time point at which a data arrives. IoTDB timestamps are divided into two types: LONG and DATETIME (including DATETIME-INPUT and DATETIME-DISPLAY). When a user enters a timestamp, he can use a LONG type timestamp or a DATETIME-INPUT type timestamp, where the support format of the DATETIME-INPUT type timestamp is shown in table: -
**Table 2-1 Support format of DATETIME-INPUT type timestamp** +
**Support format of DATETIME-INPUT type timestamp** |format| -|:---:| +|:---| |yyyy-MM-dd HH:mm:ss| |yyyy/MM/dd HH:mm:ss| |yyyy.MM.dd HH:mm:ss| @@ -129,9 +129,9 @@ The timestamp is the time point at which a data arrives. IoTDB timestamps are di
-IoTDB can support LONG types and DATETIME-DISPLAY types when displaying timestamps. The DATETIME-DISPLAY type can support user-defined time formats. The syntax of the custom time format is shown in Table 2-2. +IoTDB can support LONG types and DATETIME-DISPLAY types when displaying timestamps. The DATETIME-DISPLAY type can support user-defined time formats. The syntax of the custom time format is shown in table: -
**Table 2-2 The syntax of the custom time format** +
**The syntax of the custom time format** |Symbol|Meaning|Presentation|Examples| |:---:|:---:|:---:|:---:| diff --git a/docs/Documentation/UserGuideV0.7.0/2-Concept Key Concepts and Terminology/2-Data Type.md b/docs/Documentation/UserGuideV0.7.0/2-Concept Key Concepts and Terminology/2-Data Type.md index df1c2b927bfc12052da2feac6cfd291305158131..0ade2230465e89cc3f55f7ff90e1a38552ce050e 100644 --- a/docs/Documentation/UserGuideV0.7.0/2-Concept Key Concepts and Terminology/2-Data Type.md +++ b/docs/Documentation/UserGuideV0.7.0/2-Concept Key Concepts and Terminology/2-Data Type.md @@ -31,7 +31,7 @@ IoTDB supports six data types in total: * TEXT (String). -The time series of **FLOAT** and **DOUBLE** type can specify (MAX\_POINT\_NUMBER, see [this page](/#/Documents/latest/chap5/sec1) for more information on how to specify), which is the number of digits after the decimal point of the floating point number, if the encoding method is [RLE](/#/Documents/latest/chap2/sec3) or [TS\_2DIFF](/#/Documents/latest/chap2/sec3) (Refer to [Create Timeseries Statement](/#/Documents/latest/chap5/sec1) for more information on how to specify). If MAX\_POINT\_NUMBER is not specified, the system will use [float\_precision](/#/Documents/latest/chap2/sec3) in the configuration file "tsfile-format.properties" for configuration for the configuration method. +The time series of **FLOAT** and **DOUBLE** type can specify (MAX\_POINT\_NUMBER, see [this page](/#/Documents/latest/chap5/sec1) for more information on how to specify), which is the number of digits after the decimal point of the floating point number, if the encoding method is [RLE](/#/Documents/latest/chap2/sec3) or [TS\_2DIFF](/#/Documents/latest/chap2/sec3) (Refer to [Create Timeseries Statement](/#/Documents/latest/chap5/sec1) for more information on how to specify). If MAX\_POINT\_NUMBER is not specified, the system will use [float\_precision](/#/Documents/latest/chap4/sec2) in the configuration file "tsfile-format.properties" for configuration for the configuration method. * For Float data value, The data range is (-Integer.MAX_VALUE, Integer.MAX_VALUE), rather than Float.MAX_VALUE, and the max_point_number is 19, it is because of the limition of function Math.round(float) in Java. * For Double data value, The data range is (-Long.MAX_VALUE, Long.MAX_VALUE), rather than Double.MAX_VALUE, and the max_point_number is 19, it is because of the limition of function Math.round(double) in Java (Long.MAX_VALUE=9.22E18). diff --git a/docs/Documentation/UserGuideV0.7.0/3-Operation Manual/2-Data Model Selection.md b/docs/Documentation/UserGuideV0.7.0/3-Operation Manual/2-Data Model Selection.md index 8c967d67b1b7f193635602128ed8eeae7f4bb2cf..663b9e1c72e00371e7d32be67735d8445551a567 100644 --- a/docs/Documentation/UserGuideV0.7.0/3-Operation Manual/2-Data Model Selection.md +++ b/docs/Documentation/UserGuideV0.7.0/3-Operation Manual/2-Data Model Selection.md @@ -48,7 +48,7 @@ It is worth noting that when the path itself or the parent/child layer of the pa ``` IoTDB> set storage group to root.ln.wf01 -error: The prefix of root.ln.wf01 has been set to the storage group. +Msg: org.apache.iotdb.exception.MetadataErrorException: org.apache.iotdb.exception.PathErrorException: The prefix of root.ln.wf01 has been set to the storage group. ``` ### Show Storage Group @@ -99,12 +99,7 @@ The results are shown below respectly:
-It is worth noting that when the path queries does not exist, the system will give the corresponding error prompt as shown below: - -``` -IoTDB> show timeseries root.ln.wf03 -Msg: Failed to fetch timeseries root.ln.wf03's metadata because: Timeseries does not exist. -``` +It is worth noting that when the path queries does not exist, the system will return no timeseries. ### Precautions diff --git a/docs/Documentation/UserGuideV0.7.0/3-Operation Manual/3-Data Import.md b/docs/Documentation/UserGuideV0.7.0/3-Operation Manual/3-Data Import.md index 1a9e9cbd8d350e7bc5073c7fda90d4e531cc673e..7a793e912d14789a7277ec231f5ae4fb53bfdd05 100644 --- a/docs/Documentation/UserGuideV0.7.0/3-Operation Manual/3-Data Import.md +++ b/docs/Documentation/UserGuideV0.7.0/3-Operation Manual/3-Data Import.md @@ -43,7 +43,7 @@ IoTDB > insert into root.ln.wf02.wt02(timestamp,status) values(1,true) IoTDB > insert into root.ln.wf02.wt02(timestamp,hardware) values(1, "v1") ``` -The above example code inserts the long integer timestamp and the value "true" into the timeseries `root.ln.wf02.wt02.status` and inserts the long integer timestamp and the value "v1" into the timeseries `root.ln.wf02.wt02.hardware`. When the execution is successful, a prompt "execute successfully" will appear to indicate that the data insertion has been completed. +The above example code inserts the long integer timestamp and the value "true" into the timeseries `root.ln.wf02.wt02.status` and inserts the long integer timestamp and the value "v1" into the timeseries `root.ln.wf02.wt02.hardware`. When the execution is successful, cost time will appear to indicate that the data insertion has been completed. > Note: In IoTDB, TEXT type data can be represented by single and double quotation marks. The insertion statement above uses double quotation marks for TEXT type data. The following example will use single quotation marks for TEXT type data. diff --git a/docs/Documentation/UserGuideV0.7.0/3-Operation Manual/4-Data Query.md b/docs/Documentation/UserGuideV0.7.0/3-Operation Manual/4-Data Query.md index 04573d68ab7483f11014a5002f05b2ce335a935f..3082c1794a52ab067fadca2103d988051ddcdd94 100644 --- a/docs/Documentation/UserGuideV0.7.0/3-Operation Manual/4-Data Query.md +++ b/docs/Documentation/UserGuideV0.7.0/3-Operation Manual/4-Data Query.md @@ -375,9 +375,7 @@ The result is shown below: The SQL statement is: ``` -select * from root.ln.wf01.wt01 -where time > 2017-11-01T00:05:00.000 and time < 2017-11-01T00:12:00.000 -slimit 1 soffset 1 +select * from root.ln.wf01.wt01 where time > 2017-11-01T00:05:00.000 and time < 2017-11-01T00:12:00.000 slimit 1 soffset 1 ``` which means: @@ -394,9 +392,6 @@ The SQL statement is: ``` select max_value(*) from root.ln.wf01.wt01 group by (1d, [2017-11-01T00:00:00, 2017-11-07T23:00:00]) slimit 1 soffset 1 ``` -which means: - -The selected device is ln group wf01 plant wt01 device; the selected timeseries is the second column under this device, i.e., the temperature. The result is shown below: @@ -448,9 +443,7 @@ The result is shown below: When the parameter N/SN of LIMIT/SLIMIT exceeds the size of the result set, IoTDB will return all the results as expected. For example, the query result of the original SQL statement consists of six rows, and we select the first 100 rows through the LIMIT clause: ``` -select status,temperature from root.ln.wf01.wt01 -where time > 2017-11-01T00:05:00.000 and time < 2017-11-01T00:12:00.000 -limit 100 +select status,temperature from root.ln.wf01.wt01 where time > 2017-11-01T00:05:00.000 and time < 2017-11-01T00:12:00.000 limit 100 ``` The result is shown below: diff --git a/docs/Documentation/UserGuideV0.7.0/3-Operation Manual/5-Data Maintenance.md b/docs/Documentation/UserGuideV0.7.0/3-Operation Manual/5-Data Maintenance.md index 7a75b4bad55c591f9ddd4cdffafe55f48b1d7a23..098862a885a7dad25b14ca9fe3bc34ff562acb6a 100644 --- a/docs/Documentation/UserGuideV0.7.0/3-Operation Manual/5-Data Maintenance.md +++ b/docs/Documentation/UserGuideV0.7.0/3-Operation Manual/5-Data Maintenance.md @@ -46,7 +46,7 @@ When the updated path does not exist, IoTDB will give the corresponding error pr ``` IoTDB> update root.ln.wf02 set wt02.sta = false where time < now() -error: do not select any existing path +Msg: do not select any existing series ``` ### Data Deletion @@ -64,7 +64,7 @@ delete from root.ln.wf02.wt02.status where time<=2017-11-01T16:26:00; ``` #### Delete Multiple Timeseries -When both the power supply status and hardware version of the ln group wf02 plant wt02 device before 2017-11-01 16:26:00 need to be deleted, the prefix path with broader meaning (see Section 3.1.6 of this manual) or the path with star can be used to delete the data. The SQL statement for this operation is: +When both the power supply status and hardware version of the ln group wf02 plant wt02 device before 2017-11-01 16:26:00 need to be deleted, [the prefix path with broader meaning or the path with star](/#/Documents/latest/chap2/sec1) can be used to delete the data. The SQL statement for this operation is: ``` delete from root.ln.wf02.wt02 where time <= 2017-11-01T16:26:00; @@ -78,5 +78,5 @@ It should be noted that when the deleted path does not exist, IoTDB will give th ``` IoTDB> delete from root.ln.wf03.wt02.status where time < now() -error: TimeSeries does not exist and cannot be delete data +Msg: TimeSeries does not exist and its data cannot be deleted ``` diff --git a/docs/Documentation/UserGuideV0.7.0/3-Operation Manual/6-Priviledge Management.md b/docs/Documentation/UserGuideV0.7.0/3-Operation Manual/6-Priviledge Management.md index 04a320506e0fe05bd3e8e21a3928de6d292cc17d..20044367fa41d956770ba68a37674e280d68039f 100644 --- a/docs/Documentation/UserGuideV0.7.0/3-Operation Manual/6-Priviledge Management.md +++ b/docs/Documentation/UserGuideV0.7.0/3-Operation Manual/6-Priviledge Management.md @@ -92,7 +92,7 @@ At the same time, changes to roles are immediately reflected on all users who ow #### List of Priviledges Included in the System -
**Table 3-8 List of Priviledges Included in the System** +
**List of Priviledges Included in the System** |Priviledge Name|Interpretation| |:---|:---| diff --git a/docs/Documentation/UserGuideV0.7.0/4-Deployment and Management/1-Deployment.md b/docs/Documentation/UserGuideV0.7.0/4-Deployment and Management/1-Deployment.md index d12125f18b1409abbfd68304e63e6e26829f1116..15d73c28d2cbdda6f5eac970f07d3abca9fa88da 100644 --- a/docs/Documentation/UserGuideV0.7.0/4-Deployment and Management/1-Deployment.md +++ b/docs/Documentation/UserGuideV0.7.0/4-Deployment and Management/1-Deployment.md @@ -166,4 +166,4 @@ $IOTDB_HOME/ ### Installation by Docker (Dockerfile) -You can build and run a IoTDB docker image by following the guide of [Deployment by Docker](#build-and-use-iotdb-by-dockerfile) +You can build and run a IoTDB docker image by following the guide of [Deployment by Docker](/#/Documents/latest/chap4/sec7) diff --git a/docs/Documentation/UserGuideV0.7.0/4-Deployment and Management/2-Configuration.md b/docs/Documentation/UserGuideV0.7.0/4-Deployment and Management/2-Configuration.md index 933c7f82473f07c6a9a4f3ca4b9c523f2393709f..ad9e9e7ea4c311c21fdec8a5697442542fd530fb 100644 --- a/docs/Documentation/UserGuideV0.7.0/4-Deployment and Management/2-Configuration.md +++ b/docs/Documentation/UserGuideV0.7.0/4-Deployment and Management/2-Configuration.md @@ -206,7 +206,7 @@ The detail of each variables are as follows: |Name| data\_dirs | |:---:|:---| -|Description| The directories of data files. Multiple directories are separated by comma. See the [mult\_dir\_strategy](/#/Documents/latest/chap4/sec2) configuration item for data distribution strategy. The starting directory of the relative path is related to the operating system. It is recommended to use an absolute path. If the path does not exist, the system will automatically create it.| +|Description| The directories of data files. Multiple directories are separated by comma. See the [multi\_dir\_strategy](/#/Documents/latest/chap4/sec2) configuration item for data distribution strategy. The starting directory of the relative path is related to the operating system. It is recommended to use an absolute path. If the path does not exist, the system will automatically create it.| |Type|String[]| |Default| data/data | |Effective|After restart system| @@ -229,9 +229,9 @@ The detail of each variables are as follows: |Default| true | |Effective|After restart system| -* mult\_dir\_strategy +* multi\_dir\_strategy -|Name| mult\_dir\_strategy | +|Name| multi\_dir\_strategy | |:---:|:---| |Description| IoTDB's strategy for selecting directories for TsFile in tsfile_dir. You can use a simple class name or a full name of the class. The system provides the following three strategies:
1. SequenceStrategy: IoTDB selects the directory from tsfile\_dir in order, traverses all the directories in tsfile\_dir in turn, and keeps counting;
2. MaxDiskUsableSpaceFirstStrategy: IoTDB first selects the directory with the largest free disk space in tsfile\_dir;
3. MinFolderOccupiedSpaceFirstStrategy: IoTDB prefers the directory with the least space used in tsfile\_dir;
4. (user-defined policy)
You can complete a user-defined policy in the following ways:
1. Inherit the cn.edu.tsinghua.iotdb.conf.directories.strategy.DirectoryStrategy class and implement its own Strategy method;
2. Fill in the configuration class with the full class name of the implemented class (package name plus class name, UserDfineStrategyPackage);
3. Add the jar file to the project. | |Type|String| @@ -256,7 +256,7 @@ The detail of each variables are as follows: |Default| 10000 | |Effective|After restart system| -* flush\_wal\_period\_in\_ms +* force\_wal\_period\_in\_ms |Name| force\_wal\_period\_in\_ms | |:---:|:---|