This is an automated email from the ASF dual-hosted git repository.

chenyz pushed a commit to branch main
in repository https://gitbox.apache.org/repos/asf/iotdb-docs.git


The following commit(s) were added to refs/heads/main by this push:
     new 4cfd0eb  Support new data type: DATE, TIMESTAMP, BLOB and STRING (#238)
4cfd0eb is described below

commit 4cfd0eb3578c1834357c15d1af6e1c1f6b440a86
Author: Chen YZ <[email protected]>
AuthorDate: Tue Jun 11 09:19:30 2024 +0800

    Support new data type: DATE, TIMESTAMP, BLOB and STRING (#238)
    
    * done
    
    * rollback infer type
---
 .../latest/API/Programming-Java-Native-API.md      | 18 +++---
 src/UserGuide/latest/API/Programming-TsFile-API.md |  8 ++-
 src/UserGuide/latest/Basic-Concept/Data-Type.md    |  8 ++-
 .../Basic-Concept/Encoding-and-Compression.md      | 16 +++--
 .../latest/User-Manual/Operator-and-Expression.md  | 70 +++++++++++-----------
 .../stage/Operate-Metadata/Auto-Create-MetaData.md | 18 +++---
 .../latest/API/Programming-Java-Native-API.md      | 18 +++---
 .../UserGuide/latest/API/Programming-TsFile-API.md |  2 +-
 src/zh/UserGuide/latest/Basic-Concept/Data-Type.md | 10 +++-
 .../Basic-Concept/Encoding-and-Compression.md      | 20 ++++---
 .../latest/User-Manual/Operator-and-Expression.md  | 66 ++++++++++----------
 .../stage/Operate-Metadata/Auto-Create-MetaData.md | 20 ++++---
 12 files changed, 157 insertions(+), 117 deletions(-)

diff --git a/src/UserGuide/latest/API/Programming-Java-Native-API.md 
b/src/UserGuide/latest/API/Programming-Java-Native-API.md
index 4fe0bee..58259c6 100644
--- a/src/UserGuide/latest/API/Programming-Java-Native-API.md
+++ b/src/UserGuide/latest/API/Programming-Java-Native-API.md
@@ -329,14 +329,18 @@ void insertTablets(Map<String, Tablet> tablet)
 
   The correspondence between the Object type and the TSDataType type is shown 
in the following table.
 
-  | TSDataType | Object         |
-  | ---------- | -------------- |
-  | BOOLEAN    | Boolean        |
-  | INT32      | Integer        |
-  | INT64      | Long           |
-  | FLOAT      | Float          |
-  | DOUBLE     | Double         |
+  | TSDataType | Object       |
+  |------------|--------------|
+  | BOOLEAN    | Boolean      |
+  | INT32      | Integer      |
+  | DATE       | LocalDate    |
+  | INT64      | Long         |
+  | TIMESTAMP  | Long         |
+  | FLOAT      | Float        |
+  | DOUBLE     | Double       |
   | TEXT       | String, Binary |
+  | STRING     | String, Binary |
+  | BLOB       | Binary |
 
 ``` java
 void insertRecord(String deviceId, long time, List<String> measurements,
diff --git a/src/UserGuide/latest/API/Programming-TsFile-API.md 
b/src/UserGuide/latest/API/Programming-TsFile-API.md
index d1fceaf..8aa24f0 100644
--- a/src/UserGuide/latest/API/Programming-TsFile-API.md
+++ b/src/UserGuide/latest/API/Programming-TsFile-API.md
@@ -221,7 +221,7 @@ A TsFile is generated by the following three steps and the 
complete code is give
     ​    
     * measurementID: The name of this measurement, typically the name of the 
sensor.
       
-    * type: The data type, now support six types: `BOOLEAN`, `INT32`, `INT64`, 
`FLOAT`, `DOUBLE`, `TEXT`;
+    * type: The data type, now support ten types: `BOOLEAN`, `INT32`, `DATE`, 
`INT64`, `TIMESTAMP`, `FLOAT`, `DOUBLE`, `TEXT`, `STRING`, `BLOB`;
     
     * encoding: The data encoding. 
     
@@ -468,10 +468,14 @@ Here's the useful interfaces for user.
 
        BOOLEAN,
        INT32,
+       DATE,
        INT64,
+       TIMESTAMP
        FLOAT,
        DOUBLE,
-       TEXT;
+       TEXT,
+       STRING,
+       BLOB;
  * `RowRecord next() throws IOException;`
 
     Get the next record.
diff --git a/src/UserGuide/latest/Basic-Concept/Data-Type.md 
b/src/UserGuide/latest/Basic-Concept/Data-Type.md
index 849a195..636eaac 100644
--- a/src/UserGuide/latest/Basic-Concept/Data-Type.md
+++ b/src/UserGuide/latest/Basic-Concept/Data-Type.md
@@ -30,7 +30,13 @@ IoTDB supports the following data types:
 * INT64 (Long Integer)
 * FLOAT (Single Precision Floating Point)
 * DOUBLE (Double Precision Floating Point)
-* TEXT (String)
+* TEXT (Long String)
+* STRING(String)
+* BLOB(Large binary Object)
+* TIMESTAMP(Timestamp)
+* DATE(Date)
+
+The difference between STRING and TEXT types is that STRING type has more 
statistical information and can be used to optimize value filtering queries, 
while TEXT type is suitable for storing long strings.
 
 ### Float Precision
 
diff --git a/src/UserGuide/latest/Basic-Concept/Encoding-and-Compression.md 
b/src/UserGuide/latest/Basic-Concept/Encoding-and-Compression.md
index 57d55a8..dcb6c68 100644
--- a/src/UserGuide/latest/Basic-Concept/Encoding-and-Compression.md
+++ b/src/UserGuide/latest/Basic-Concept/Encoding-and-Compression.md
@@ -81,12 +81,16 @@ The correspondence between the data type and its supported 
encodings is summariz
 
 | Data Type |                     Supported Encoding                      |
 |:---------:|:-----------------------------------------------------------:|
-| BOOLEAN   |                         PLAIN, RLE                          |
-| INT32     | PLAIN, RLE, TS_2DIFF, GORILLA, ZIGZAG, CHIMP, SPRINTZ, RLBE |
-| INT64     | PLAIN, RLE, TS_2DIFF, GORILLA, ZIGZAG, CHIMP, SPRINTZ, RLBE |
-| FLOAT     |     PLAIN, RLE, TS_2DIFF, GORILLA, CHIMP, SPRINTZ, RLBE     |
-| DOUBLE    |     PLAIN, RLE, TS_2DIFF, GORILLA, CHIMP, SPRINTZ, RLBE     |
-| TEXT      |                      PLAIN, DICTIONARY                      |
+|  BOOLEAN  |                         PLAIN, RLE                          |
+|   INT32   | PLAIN, RLE, TS_2DIFF, GORILLA, ZIGZAG, CHIMP, SPRINTZ, RLBE |
+|   DATE    | PLAIN, RLE, TS_2DIFF, GORILLA, ZIGZAG, CHIMP, SPRINTZ, RLBE |
+|   INT64   | PLAIN, RLE, TS_2DIFF, GORILLA, ZIGZAG, CHIMP, SPRINTZ, RLBE |
+|   LONG    | PLAIN, RLE, TS_2DIFF, GORILLA, ZIGZAG, CHIMP, SPRINTZ, RLBE |
+|   FLOAT   |     PLAIN, RLE, TS_2DIFF, GORILLA, CHIMP, SPRINTZ, RLBE     |
+|  DOUBLE   |     PLAIN, RLE, TS_2DIFF, GORILLA, CHIMP, SPRINTZ, RLBE     |
+|   TEXT    |                      PLAIN, DICTIONARY                      |
+|  STRING   |                      PLAIN, DICTIONARY                      |
+|   BLOB    |                      PLAIN, DICTIONARY                      |
 
 When the data type specified by the user does not correspond to the encoding 
method, the system will prompt an error. 
 
diff --git a/src/UserGuide/latest/User-Manual/Operator-and-Expression.md 
b/src/UserGuide/latest/User-Manual/Operator-and-Expression.md
index f3bc5e4..d2151b4 100644
--- a/src/UserGuide/latest/User-Manual/Operator-and-Expression.md
+++ b/src/UserGuide/latest/User-Manual/Operator-and-Expression.md
@@ -99,23 +99,23 @@ The built-in functions can be used in IoTDB without 
registration, and the functi
 
 ### Aggregate Functions
 
-| Function Name | Description                                                  
                                                                                
                                                                                
                                                            | Allowed Input 
Series Data Types | Required Attributes                                         
                                                                                
                  [...]
-|---------------|------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
 ------------------------------- 
|--------------------------------------------------------------------------------------------------------------------------------------------------------------
 [...]
-| SUM           | Summation.                                                   
                                                                                
                                                                                
                                                            | INT32 INT64 FLOAT 
DOUBLE        | /                                                               
                                                                                
              [...]
-| COUNT         | Counts the number of data points.                            
                                                                                
                                                                                
                                                            | All types         
              | /                                                               
                                                                                
              [...]
-| AVG           | Average.                                                     
                                                                                
                                                                                
                                                            | INT32 INT64 FLOAT 
DOUBLE        | /                                                               
                                                                                
              [...]
-| EXTREME       | Finds the value with the largest absolute value. Returns a 
positive value if the maximum absolute value of positive and negative values is 
equal.                                                                          
                                                              | INT32 INT64 
FLOAT DOUBLE        | /                                                         
                                                                                
                    [...]
-| MAX_VALUE     | Find the maximum value.                                      
                                                                                
                                                                                
                                                            | INT32 INT64 FLOAT 
DOUBLE        | /                                                               
                                                                                
              [...]
-| MIN_VALUE     | Find the minimum value.                                      
                                                                                
                                                                                
                                                            | INT32 INT64 FLOAT 
DOUBLE        | /                                                               
                                                                                
              [...]
-| FIRST_VALUE   | Find the value with the smallest timestamp.                  
                                                                                
                                                                                
                                                            | All data types    
              | /                                                               
                                                                                
              [...]
-| LAST_VALUE    | Find the value with the largest timestamp.                   
                                                                                
                                                                                
                                                            | All data types    
              | /                                                               
                                                                                
              [...]
-| MAX_TIME      | Find the maximum timestamp.                                  
                                                                                
                                                                                
                                                            | All data Types    
              | /                                                               
                                                                                
              [...]
-| MIN_TIME      | Find the minimum timestamp.                                  
                                                                                
                                                                                
                                                            | All data Types    
              | /                                                               
                                                                                
              [...]
-| COUNT_IF      | Find the number of data points that continuously meet a 
given condition and the number of data points that meet the condition 
(represented by keep) meet the specified threshold.                             
                                                                           | 
BOOLEAN                         | `[keep >=/>/=/!=/</<=]threshold`:The 
specified threshold or threshold condition, it is equivalent to `keep >= 
threshold` if `threshold` is used alone, type o [...]
-| TIME_DURATION | Find the difference between the timestamp of the largest 
non-null value and the timestamp of the smallest non-null value in a column     
                                                                                
                                                                | All data 
Types                  | /                                                      
                                                                                
                       [...]
-| MODE          | Find the mode. Note:  1.Having too many different values in 
the input series risks a memory exception;  2.If all the elements have the same 
number of occurrences, that is no Mode, return the value with earliest time;  
3.If there are many Modes, return the Mode with earliest time. | All data Types 
                 | /                                                            
                                                                                
                 [...]
-| MAX_BY        | MAX_BY(x, y) returns the value of x corresponding to the 
maximum value of the input y. MAX_BY(time, x) returns the timestamp when x is 
at its maximum value.                                                           
                                                                  | The first 
input x can be of any type, while the second input y must be of type INT32, 
INT64, FLOAT, or DOUBLE. | /                                                    
                          [...]
-| MIN_BY        | MIN_BY(x, y) returns the value of x corresponding to the 
minimum value of the input y. MIN_BY(time, x) returns the timestamp when x is 
at its minimum value.                                                           
                                                                  | The first 
input x can be of any type, while the second input y must be of type INT32, 
INT64, FLOAT, or DOUBLE. | / | Consistent with the data type of the first input 
x. |
+| Function Name | Description                                                  
                                                                                
                                                                                
                                                            | Allowed Input 
Series Data Types                                                               
                                        | Required Attributes                   
                  [...]
+|---------------|------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|---------------------------------------------------------------------------------------------------------------------------------------|--------------------------------------------------------
 [...]
+| SUM           | Summation.                                                   
                                                                                
                                                                                
                                                            | INT32 INT64 FLOAT 
DOUBLE                                                                          
                                    | /                                         
              [...]
+| COUNT         | Counts the number of data points.                            
                                                                                
                                                                                
                                                            | All types         
                                                                                
                                    | /                                         
              [...]
+| AVG           | Average.                                                     
                                                                                
                                                                                
                                                            | INT32 INT64 FLOAT 
DOUBLE                                                                          
                                    | /                                         
              [...]
+| EXTREME       | Finds the value with the largest absolute value. Returns a 
positive value if the maximum absolute value of positive and negative values is 
equal.                                                                          
                                                              | INT32 INT64 
FLOAT DOUBLE                                                                    
                                          | /                                   
                    [...]
+| MAX_VALUE     | Find the maximum value.                                      
                                                                                
                                                                                
                                                            | INT32 INT64 FLOAT 
DOUBLE STRING TIMESTAMP DATE                                                    
                                    | /                                         
              [...]
+| MIN_VALUE     | Find the minimum value.                                      
                                                                                
                                                                                
                                                            | INT32 INT64 FLOAT 
DOUBLE STRING TIMESTAMP DATE                                                    
                                    | /                                         
              [...]
+| FIRST_VALUE   | Find the value with the smallest timestamp.                  
                                                                                
                                                                                
                                                            | All data types    
                                                                                
                                    | /                                         
              [...]
+| LAST_VALUE    | Find the value with the largest timestamp.                   
                                                                                
                                                                                
                                                            | All data types    
                                                                                
                                    | /                                         
              [...]
+| MAX_TIME      | Find the maximum timestamp.                                  
                                                                                
                                                                                
                                                            | All data Types    
                                                                                
                                    | /                                         
              [...]
+| MIN_TIME      | Find the minimum timestamp.                                  
                                                                                
                                                                                
                                                            | All data Types    
                                                                                
                                    | /                                         
              [...]
+| COUNT_IF      | Find the number of data points that continuously meet a 
given condition and the number of data points that meet the condition 
(represented by keep) meet the specified threshold.                             
                                                                           | 
BOOLEAN                                                                         
                                                      | `[keep 
>=/>/=/!=/</<=]threshold`:The specified threshol [...]
+| TIME_DURATION | Find the difference between the timestamp of the largest 
non-null value and the timestamp of the smallest non-null value in a column     
                                                                                
                                                                | All data 
Types                                                                           
                                             | /                                
                       [...]
+| MODE          | Find the mode. Note:  1.Having too many different values in 
the input series risks a memory exception;  2.If all the elements have the same 
number of occurrences, that is no Mode, return the value with earliest time;  
3.If there are many Modes, return the Mode with earliest time. | All data Types 
                                                                                
                                       | /                                      
                 [...]
+| MAX_BY        | MAX_BY(x, y) returns the value of x corresponding to the 
maximum value of the input y. MAX_BY(time, x) returns the timestamp when x is 
at its maximum value.                                                           
                                                                  | The first 
input x can be of any type, while the second input y must be of type INT32, 
INT64, FLOAT, DOUBLE, STRING, TIMESTAMP or DATE. | /                            
                          [...]
+| MIN_BY        | MIN_BY(x, y) returns the value of x corresponding to the 
minimum value of the input y. MIN_BY(time, x) returns the timestamp when x is 
at its minimum value.                                                           
                                                                  | The first 
input x can be of any type, while the second input y must be of type INT32, 
INT64, FLOAT, DOUBLE, STRING, TIMESTAMP or DATE. | / | Consistent with the data 
type of the first input x. |
 
 For details and examples, see the document [Aggregate 
Functions](../Reference/Function-and-Expression.md#aggregate-functions).
 
@@ -158,20 +158,20 @@ For details and examples, see the document [Comparison 
Operators and Functions](
 ### String Processing Functions
 
 | Function Name   | Allowed Input Series Data Types | Required Attributes      
                                    | Output Series Data Type | Description     
                                             |
-| --------------- | ------------------------------- | 
------------------------------------------------------------ | 
----------------------- | 
------------------------------------------------------------ |
-| STRING_CONTAINS | TEXT                            | `s`: string to search 
for                                    | BOOLEAN                 | Checks 
whether the substring `s` exists in the string.       |
-| STRING_MATCHES  | TEXT                            | `regex`: Java standard 
library-style regular expressions.    | BOOLEAN                 | Judges 
whether a string can be matched by the regular expression `regex`. |
-| LENGTH          | TEXT                            | /                        
                                    | INT32                   | Get the length 
of input series.                              |
-| LOCATE          | TEXT                            | `target`: The substring 
to be located.<br/> `reverse`: Indicates whether reverse locate is required. 
The default value is `false`, means left-to-right locate. | INT32               
    | Get the position of the first occurrence of substring `target` in input 
series. Returns -1 if there are no `target` in input. |
-| STARTSWITH      | TEXT                            | `target`: The prefix to 
be checked.                          | BOOLEAN                 | Check whether 
input series starts with the specified prefix `target`. |
-| ENDSWITH        | TEXT                            | `target`: The suffix to 
be checked.                          | BOOLEAN                 | Check whether 
input series ends with the specified suffix `target`. |
-| CONCAT          | TEXT                            | `targets`: a series of 
K-V, key needs to start with `target` and be not duplicated, value is the 
string you want to concat.<br/>`series_behind`: Indicates whether series behind 
targets. The default value is `false`. | TEXT                    | Concatenate 
input string and `target` string.                |
-| SUBSTRING       | TEXT                            | `from`: Indicates the 
start position of substring.<br/>`for`: Indicates how many characters to stop 
after of substring. | TEXT                    | Extracts a substring of a 
string, starting with the first specified character and stopping after the 
specified number of characters.The index start at 1. |
-| REPLACE         | TEXT                            | first parameter: The 
target substring to be replaced.<br />second parameter: The substring to 
replace with. | TEXT                    | Replace a substring in the input 
sequence with the target substring. |
-| UPPER           | TEXT                            | /                        
                                    | TEXT                    | Get the string 
of input series with all characters changed to uppercase. |
-| LOWER           | TEXT                            | /                        
                                    | TEXT                    | Get the string 
of input series with all characters changed to lowercase. |
-| TRIM            | TEXT                            | /                        
                                    | TEXT                    | Get the string 
whose value is same to input series, with all leading and trailing space 
removed. |
-| STRCMP          | TEXT                            | /                        
                                    | TEXT                    | Get the compare 
result of two input series. Returns `0` if series value are the same, a 
`negative integer` if value of series1 is smaller than series2, <br/>a 
`positive integer` if value of series1  is more than series2. |
+| --------------- |---------------------------------| 
------------------------------------------------------------ | 
----------------------- | 
------------------------------------------------------------ |
+| STRING_CONTAINS | TEXT STRING                     | `s`: string to search 
for                                    | BOOLEAN                 | Checks 
whether the substring `s` exists in the string.       |
+| STRING_MATCHES  | TEXT STRING                     | `regex`: Java standard 
library-style regular expressions.    | BOOLEAN                 | Judges 
whether a string can be matched by the regular expression `regex`. |
+| LENGTH          | TEXT STRING                     | /                        
                                    | INT32                   | Get the length 
of input series.                              |
+| LOCATE          | TEXT STRING                     | `target`: The substring 
to be located.<br/> `reverse`: Indicates whether reverse locate is required. 
The default value is `false`, means left-to-right locate. | INT32               
    | Get the position of the first occurrence of substring `target` in input 
series. Returns -1 if there are no `target` in input. |
+| STARTSWITH      | TEXT STRING                     | `target`: The prefix to 
be checked.                          | BOOLEAN                 | Check whether 
input series starts with the specified prefix `target`. |
+| ENDSWITH        | TEXT STRING                     | `target`: The suffix to 
be checked.                          | BOOLEAN                 | Check whether 
input series ends with the specified suffix `target`. |
+| CONCAT          | TEXT STRING                     | `targets`: a series of 
K-V, key needs to start with `target` and be not duplicated, value is the 
string you want to concat.<br/>`series_behind`: Indicates whether series behind 
targets. The default value is `false`. | TEXT                    | Concatenate 
input string and `target` string.                |
+| SUBSTRING       | TEXT STRING                     | `from`: Indicates the 
start position of substring.<br/>`for`: Indicates how many characters to stop 
after of substring. | TEXT                    | Extracts a substring of a 
string, starting with the first specified character and stopping after the 
specified number of characters.The index start at 1. |
+| REPLACE         | TEXT STRING                     | first parameter: The 
target substring to be replaced.<br />second parameter: The substring to 
replace with. | TEXT                    | Replace a substring in the input 
sequence with the target substring. |
+| UPPER           | TEXT STRING                     | /                        
                                    | TEXT                    | Get the string 
of input series with all characters changed to uppercase. |
+| LOWER           | TEXT STRING                     | /                        
                                    | TEXT                    | Get the string 
of input series with all characters changed to lowercase. |
+| TRIM            | TEXT STRING                     | /                        
                                    | TEXT                    | Get the string 
whose value is same to input series, with all leading and trailing space 
removed. |
+| STRCMP          | TEXT STRING                           | /                  
                                          | TEXT                    | Get the 
compare result of two input series. Returns `0` if series value are the same, a 
`negative integer` if value of series1 is smaller than series2, <br/>a 
`positive integer` if value of series1  is more than series2. |
 
 For details and examples, see the document [String 
Processing](../Reference/Function-and-Expression.md#string-processing).
 
@@ -195,10 +195,10 @@ For details and examples, see the document [Constant 
Timeseries Generating Funct
 
 ### Selector Functions
 
-| Function Name | Allowed Input Series Data Types       | Required Attributes  
                                        | Output Series Data Type       | 
Description                                                  |
-| ------------- | ------------------------------------- | 
------------------------------------------------------------ | 
----------------------------- | 
------------------------------------------------------------ |
-| TOP_K         | INT32 / INT64 / FLOAT / DOUBLE / TEXT | `k`: the maximum 
number of selected data points, must be greater than 0 and less than or equal 
to 1000 | Same type as the input series | Returns `k` data points with the 
largest values in a time series. |
-| BOTTOM_K      | INT32 / INT64 / FLOAT / DOUBLE / TEXT | `k`: the maximum 
number of selected data points, must be greater than 0 and less than or equal 
to 1000 | Same type as the input series | Returns `k` data points with the 
smallest values in a time series. |
+| Function Name | Allowed Input Series Data Types                              
     | Required Attributes                                          | Output 
Series Data Type       | Description                                            
      |
+| ------------- 
|-------------------------------------------------------------------| 
------------------------------------------------------------ | 
----------------------------- | 
------------------------------------------------------------ |
+| TOP_K         | INT32 / INT64 / FLOAT / DOUBLE / TEXT / STRING / DATE / 
TIEMSTAMP | `k`: the maximum number of selected data points, must be greater 
than 0 and less than or equal to 1000 | Same type as the input series | Returns 
`k` data points with the largest values in a time series. |
+| BOTTOM_K      | INT32 / INT64 / FLOAT / DOUBLE / TEXT / STRING / DATE / 
TIEMSTAMP | `k`: the maximum number of selected data points, must be greater 
than 0 and less than or equal to 1000 | Same type as the input series | Returns 
`k` data points with the smallest values in a time series. |
 
 For details and examples, see the document [Selector 
Functions](../Reference/Function-and-Expression.md#selector-functions).
 
diff --git 
a/src/UserGuide/latest/stage/Operate-Metadata/Auto-Create-MetaData.md 
b/src/UserGuide/latest/stage/Operate-Metadata/Auto-Create-MetaData.md
index 5ac9f94..1447cb4 100644
--- a/src/UserGuide/latest/stage/Operate-Metadata/Auto-Create-MetaData.md
+++ b/src/UserGuide/latest/stage/Operate-Metadata/Auto-Create-MetaData.md
@@ -99,13 +99,17 @@ Illustrated as the following figure:
 ### Encoding Type
 
 | Data Type | iotdb-datanode.properties  | Default |
-|:---|:---------------------------|:---|
-| BOOLEAN | default\_boolean\_encoding | RLE |
-| INT32 | default\_int32\_encoding   | RLE |
-| INT64 | default\_int64\_encoding   | RLE |
-| FLOAT | default\_float\_encoding   | GORILLA |
-| DOUBLE | default\_double\_encoding  | GORILLA |
-| TEXT | default\_text\_encoding    | PLAIN |
+|:----------|:---------------------------|:---|
+| BOOLEAN   | default\_boolean\_encoding | RLE |
+| INT32     | default\_int32\_encoding   | RLE |
+| DATE      | default\_int32\_encoding   | RLE |
+| INT64     | default\_int64\_encoding   | RLE |
+| TIEMSTAMP | default\_int64\_encoding   | RLE |
+| FLOAT     | default\_float\_encoding   | GORILLA |
+| DOUBLE    | default\_double\_encoding  | GORILLA |
+| TEXT      | default\_text\_encoding    | PLAIN |
+| STRING    | default\_text\_encoding    | PLAIN |
+| BLOB      | default\_text\_encoding    | PLAIN |
 
 * Encoding types can be configured as PLAIN, RLE, TS_2DIFF, GORILLA, 
DICTIONARY.
 
diff --git a/src/zh/UserGuide/latest/API/Programming-Java-Native-API.md 
b/src/zh/UserGuide/latest/API/Programming-Java-Native-API.md
index 7cd5317..120ed21 100644
--- a/src/zh/UserGuide/latest/API/Programming-Java-Native-API.md
+++ b/src/zh/UserGuide/latest/API/Programming-Java-Native-API.md
@@ -305,14 +305,18 @@ void insertTablets(Map<String, Tablet> tablets)
 
   其中,Object 类型与 TSDataType 类型的对应关系如下表所示:
 
-  | TSDataType | Object         |
-  | ---------- | -------------- |
-  | BOOLEAN    | Boolean        |
-  | INT32      | Integer        |
-  | INT64      | Long           |
-  | FLOAT      | Float          |
-  | DOUBLE     | Double         |
+  | TSDataType | Object       |
+  |------------|--------------|
+  | BOOLEAN    | Boolean      |
+  | INT32      | Integer      |
+  | DATE       | LocalDate    |
+  | INT64      | Long         |
+  | TIMESTAMP  | Long         |
+  | FLOAT      | Float        |
+  | DOUBLE     | Double       |
   | TEXT       | String, Binary |
+  | STRING     | String, Binary |
+  | BLOB       | Binary |
 
 ``` java
 void insertRecord(String prefixPath, long time, List<String> measurements,
diff --git a/src/zh/UserGuide/latest/API/Programming-TsFile-API.md 
b/src/zh/UserGuide/latest/API/Programming-TsFile-API.md
index b8e71a8..f7b47fa 100644
--- a/src/zh/UserGuide/latest/API/Programming-TsFile-API.md
+++ b/src/zh/UserGuide/latest/API/Programming-TsFile-API.md
@@ -210,7 +210,7 @@ TsFile 可以通过以下三个步骤生成,完整的代码参见"写入 TsFil
     
     * measurementID: 测量的名称,通常是传感器的名称。
       
-    * type: 数据类型,现在支持六种类型:`BOOLEAN`, `INT32`, `INT64`, `FLOAT`, `DOUBLE`, 
`TEXT`;
+    * type: 数据类型,现在支持十种类型:`BOOLEAN`, `INT32`, `DATE`, `INT64`, `TIMESTAMP`, 
`FLOAT`, `DOUBLE`, `TEXT`, `STRING`, `BLOB`;
     
     * encoding: 编码类型。
     
diff --git a/src/zh/UserGuide/latest/Basic-Concept/Data-Type.md 
b/src/zh/UserGuide/latest/Basic-Concept/Data-Type.md
index baf23af..f63f3fa 100644
--- a/src/zh/UserGuide/latest/Basic-Concept/Data-Type.md
+++ b/src/zh/UserGuide/latest/Basic-Concept/Data-Type.md
@@ -23,14 +23,20 @@
 
 ## 基本数据类型
 
-IoTDB 支持以下六种数据类型:
+IoTDB 支持以下十种数据类型:
 
 * BOOLEAN(布尔值)
 * INT32(整型)
 * INT64(长整型)
 * FLOAT(单精度浮点数)
 * DOUBLE(双精度浮点数)
-* TEXT(字符串)
+* TEXT(长字符串)
+* STRING(字符串)
+* BLOB(大二进制对象)
+* TIMESTAMP(时间戳)
+* DATE(日期)
+
+其中,STRING 和 TEXT 类型的区别在于,STRING 类型具有更多的统计信息,能够用于优化值过滤查询。TEXT 类型适合用于存储长字符串。
 
 ### 浮点数精度配置
 
diff --git a/src/zh/UserGuide/latest/Basic-Concept/Encoding-and-Compression.md 
b/src/zh/UserGuide/latest/Basic-Concept/Encoding-and-Compression.md
index 71dba0f..61de5a9 100644
--- a/src/zh/UserGuide/latest/Basic-Concept/Encoding-and-Compression.md
+++ b/src/zh/UserGuide/latest/Basic-Concept/Encoding-and-Compression.md
@@ -80,14 +80,18 @@ RLBE编码是一种无损编码,将差分编码,位填充编码,游程长
 
 前文介绍的五种编码适用于不同的数据类型,若对应关系错误,则无法正确创建时间序列。数据类型与支持其编码的编码方式对应关系总结如下表所示。
 
-| 数据类型 |                         支持的编码                          |
-| :------: | :---------------------------------------------------------: |
-| BOOLEAN  |                         PLAIN, RLE                          |
-|  INT32   | PLAIN, RLE, TS_2DIFF, GORILLA, ZIGZAG, CHIMP, SPRINTZ, RLBE |
-|  INT64   | PLAIN, RLE, TS_2DIFF, GORILLA, ZIGZAG, CHIMP, SPRINTZ, RLBE |
-|  FLOAT   |     PLAIN, RLE, TS_2DIFF, GORILLA, CHIMP, SPRINTZ, RLBE     |
-|  DOUBLE  |     PLAIN, RLE, TS_2DIFF, GORILLA, CHIMP, SPRINTZ, RLBE     |
-|   TEXT   |                      PLAIN, DICTIONARY                      |
+|   数据类型    |                         支持的编码                          |
+|:---------:| :---------------------------------------------------------: |
+|  BOOLEAN  |                         PLAIN, RLE                          |
+|   INT32   | PLAIN, RLE, TS_2DIFF, GORILLA, ZIGZAG, CHIMP, SPRINTZ, RLBE |
+|   DATE    | PLAIN, RLE, TS_2DIFF, GORILLA, ZIGZAG, CHIMP, SPRINTZ, RLBE |
+|   INT64   | PLAIN, RLE, TS_2DIFF, GORILLA, ZIGZAG, CHIMP, SPRINTZ, RLBE |
+| TIMESTAMP | PLAIN, RLE, TS_2DIFF, GORILLA, ZIGZAG, CHIMP, SPRINTZ, RLBE |
+|   FLOAT   |     PLAIN, RLE, TS_2DIFF, GORILLA, CHIMP, SPRINTZ, RLBE     |
+|  DOUBLE   |     PLAIN, RLE, TS_2DIFF, GORILLA, CHIMP, SPRINTZ, RLBE     |
+|   TEXT    |                      PLAIN, DICTIONARY                      |
+|  STRING   |                      PLAIN, DICTIONARY                      |
+|   BLOB    |                      PLAIN, DICTIONARY                      |
 
 当用户输入的数据类型与编码方式不对应时,系统会提示错误。如下所示,二阶差分编码不支持布尔类型:
 
diff --git a/src/zh/UserGuide/latest/User-Manual/Operator-and-Expression.md 
b/src/zh/UserGuide/latest/User-Manual/Operator-and-Expression.md
index 57cb255..3f81e3e 100644
--- a/src/zh/UserGuide/latest/User-Manual/Operator-and-Expression.md
+++ b/src/zh/UserGuide/latest/User-Manual/Operator-and-Expression.md
@@ -89,20 +89,20 @@ OR, |, ||
 
 ### 聚合函数
 
-| 函数名      | 功能描述                                                     | 
允许的输入类型           | 输出类型       |
-| ----------- | ------------------------------------------------------------ | 
------------------------ | -------------- |
-| SUM         | 求和。                                                       | 
INT32 INT64 FLOAT DOUBLE | DOUBLE         |
-| COUNT       | 计算数据点数。                                               | 所有类型   
              | INT            |
-| AVG         | 求平均值。                                                   | 
INT32 INT64 FLOAT DOUBLE | DOUBLE         |
-| EXTREME     | 求具有最大绝对值的值。如果正值和负值的最大绝对值相等,则返回正值。 | INT32 INT64 FLOAT DOUBLE | 
与输入类型一致 |
-| MAX_VALUE   | 求最大值。                                                   | 
INT32 INT64 FLOAT DOUBLE | 与输入类型一致 |
-| MIN_VALUE   | 求最小值。                                                   | 
INT32 INT64 FLOAT DOUBLE | 与输入类型一致 |
-| FIRST_VALUE | 求时间戳最小的值。                                           | 所有类型     
            | 与输入类型一致 |
-| LAST_VALUE  | 求时间戳最大的值。                                           | 所有类型     
            | 与输入类型一致 |
-| MAX_TIME    | 求最大时间戳。                                               | 所有类型   
              | Timestamp      |
-| MIN_TIME    | 求最小时间戳。                                               | 所有类型   
              | Timestamp      |
-| MAX_BY      | MAX_BY(x, y) 求二元输入 x 和 y 在 y 最大时对应的 x 的值。MAX_BY(time, x) 返回 x 
取最大值时对应的时间戳。 | 第一个输入 x 可以是任意类型,第二个输入 y 只能是 INT32 INT64 FLOAT DOUBLE  |  与第一个输入 
x 的数据类型一致 |
-| MIN_BY      | MIN_BY(x, y) 求二元输入 x 和 y 在 y 最小时对应的 x 的值。MIN_BY(time, x) 返回 x 
取最小值时对应的时间戳。 | 第一个输入 x 可以是任意类型,第二个输入 y 只能是 INT32 INT64 FLOAT DOUBLE  |  与第一个输入 
x 的数据类型一致 |
+| 函数名      | 功能描述                                                     | 
允许的输入类型                                              | 输出类型       |
+| ----------- | ------------------------------------------------------------ 
|------------------------------------------------------| -------------- |
+| SUM         | 求和。                                                       | 
INT32 INT64 FLOAT DOUBLE                             | DOUBLE         |
+| COUNT       | 计算数据点数。                                               | 所有类型   
                                              | INT            |
+| AVG         | 求平均值。                                                   | 
INT32 INT64 FLOAT DOUBLE                             | DOUBLE         |
+| EXTREME     | 求具有最大绝对值的值。如果正值和负值的最大绝对值相等,则返回正值。 | INT32 INT64 FLOAT DOUBLE   
                          | 与输入类型一致 |
+| MAX_VALUE   | 求最大值。                                                   | 
INT32 INT64 FLOAT DOUBLE STRING TIMESTAMP DATE       | 与输入类型一致 |
+| MIN_VALUE   | 求最小值。                                                   | 
INT32 INT64 FLOAT DOUBLE STRING TIMESTAMP DATE                             | 
与输入类型一致 |
+| FIRST_VALUE | 求时间戳最小的值。                                           | 所有类型     
                                            | 与输入类型一致 |
+| LAST_VALUE  | 求时间戳最大的值。                                           | 所有类型     
                                            | 与输入类型一致 |
+| MAX_TIME    | 求最大时间戳。                                               | 所有类型   
                                              | Timestamp      |
+| MIN_TIME    | 求最小时间戳。                                               | 所有类型   
                                              | Timestamp      |
+| MAX_BY      | MAX_BY(x, y) 求二元输入 x 和 y 在 y 最大时对应的 x 的值。MAX_BY(time, x) 返回 x 
取最大值时对应的时间戳。 | 第一个输入 x 可以是任意类型,第二个输入 y 只能是 INT32 INT64 FLOAT DOUBLE STRING 
TIMESTAMP DATE  |  与第一个输入 x 的数据类型一致 |
+| MIN_BY      | MIN_BY(x, y) 求二元输入 x 和 y 在 y 最小时对应的 x 的值。MIN_BY(time, x) 返回 x 
取最小值时对应的时间戳。 | 第一个输入 x 可以是任意类型,第二个输入 y 只能是 INT32 INT64 FLOAT DOUBLE STRING 
TIMESTAMP DATE  |  与第一个输入 x 的数据类型一致 |
 
 详细说明及示例见文档 [聚合函数](../Reference/Function-and-Expression.md#聚合函数)。
 
@@ -145,21 +145,21 @@ OR, |, ||
 
 ### 字符串函数
 
-| 函数名             | 输入序列类型 | 必要的属性参数                                           
                                                        | 输出序列类型 | 功能描述         
                                                           |
-|-----------------| ------------ 
|-----------------------------------------------------------------------------------------------------------|
 ------------ 
|-------------------------------------------------------------------------|
-| STRING_CONTAINS | TEXT         | `s`: 待搜寻的字符串                                
                                                              | BOOLEAN      | 
判断字符串中是否存在`s`                                                           |
-| STRING_MATCHES  | TEXT         | `regex`: Java 标准库风格的正则表达式                   
                                                              | BOOLEAN      | 
判断字符串是否能够被正则表达式`regex`匹配                                                |
-| LENGTH          | TEXT | 无                                                   
                                                      | INT32 | 返回字符串的长度        
                                                        |
-| LOCATE          | TEXT | `target`: 需要被定位的子串 <br/> `reverse`: 
指定是否需要倒序定位,默认值为`false`, 即从左至右定位                                       | INT32 | 
获取`target`子串第一次出现在输入序列的位置,如果输入序列中不包含`target`则返回 -1                      |
-| STARTSWITH      | TEXT | `target`: 需要匹配的前缀                                   
                                                      | BOOLEAN | 判断字符串是否有指定前缀  
                                                          |
-| ENDSWITH        | TEXT | `target`: 需要匹配的后缀                                   
                                                      | BOOLEAN | 判断字符串是否有指定后缀  
                                                          |
-| CONCAT          | TEXT | `targets`: 一系列 K-V, key需要以`target`为前缀且不重复, 
value是待拼接的字符串。<br/>`series_behind`: 指定拼接时时间序列是否在后面,默认为`false`。 | TEXT | 
拼接字符串和`target`字串                                                        |
-| SUBSTRING       | TEXT | `from`: 指定子串开始下标 <br/>`for`: 指定的字符个数之后停止            
                                                      | TEXT | 
提取字符串的子字符串,从指定的第一个字符开始,并在指定的字符数之后停止。下标从1开始。from 和 for的范围是 INT32 类型取值范围。 |
-| REPLACE | TEXT | 第一个参数: 需要替换的目标子串<br />第二个参数:要替换成的子串 | TEXT | 
将输入序列中的子串替换成目标子串 |
-| UPPER           | TEXT | 无                                                   
                                                      | TEXT | 将字符串转化为大写        
                                                       |
-| LOWER           | TEXT | 无                                                   
                                                      | TEXT | 将字符串转化为小写        
                                                       |
-| TRIM            | TEXT | 无                                                   
                                                      | TEXT | 移除字符串前后的空格       
                                                       |
-| STRCMP          | TEXT | 无                                                   
                                                      | TEXT | 
用于比较两个输入序列,如果值相同返回 `0` , 序列1的值小于序列2的值返回一个`负数`,序列1的值大于序列2的值返回一个`正数`      |
+| 函数名             | 输入序列类型      | 必要的属性参数                                      
                                                             | 输出序列类型 | 功能描述    
                                                                |
+|-----------------|-------------|-----------------------------------------------------------------------------------------------------------|
 ------------ 
|-------------------------------------------------------------------------|
+| STRING_CONTAINS | TEXT STRING | `s`: 待搜寻的字符串                                 
                                                             | BOOLEAN      | 
判断字符串中是否存在`s`                                                           |
+| STRING_MATCHES  | TEXT STRING        | `regex`: Java 标准库风格的正则表达式             
                                                                    | BOOLEAN   
   | 判断字符串是否能够被正则表达式`regex`匹配                                                |
+| LENGTH          | TEXT STRING        | 无                                     
                                                                    | INT32 | 
返回字符串的长度                                                                |
+| LOCATE          | TEXT STRING        | `target`: 需要被定位的子串 <br/> `reverse`: 
指定是否需要倒序定位,默认值为`false`, 即从左至右定位                                       | INT32 | 
获取`target`子串第一次出现在输入序列的位置,如果输入序列中不包含`target`则返回 -1                      |
+| STARTSWITH      | TEXT STRING        | `target`: 需要匹配的前缀                     
                                                                    | BOOLEAN | 
判断字符串是否有指定前缀                                                            |
+| ENDSWITH        | TEXT STRING        | `target`: 需要匹配的后缀                     
                                                                    | BOOLEAN | 
判断字符串是否有指定后缀                                                            |
+| CONCAT          | TEXT STRING        | `targets`: 一系列 K-V, 
key需要以`target`为前缀且不重复, value是待拼接的字符串。<br/>`series_behind`: 
指定拼接时时间序列是否在后面,默认为`false`。 | TEXT | 拼接字符串和`target`字串                            
                            |
+| SUBSTRING       | TEXT STRING        | `from`: 指定子串开始下标 <br/>`for`: 
指定的字符个数之后停止                                                                  | 
TEXT | 提取字符串的子字符串,从指定的第一个字符开始,并在指定的字符数之后停止。下标从1开始。from 和 for的范围是 INT32 类型取值范围。 |
+| REPLACE | TEXT STRING        | 第一个参数: 需要替换的目标子串<br />第二个参数:要替换成的子串 | TEXT | 
将输入序列中的子串替换成目标子串 |
+| UPPER           | TEXT STRING        | 无                                     
                                                                    | TEXT | 
将字符串转化为大写                                                               |
+| LOWER           | TEXT STRING        | 无                                     
                                                                    | TEXT | 
将字符串转化为小写                                                               |
+| TRIM            | TEXT STRING        | 无                                     
                                                                    | TEXT | 
移除字符串前后的空格                                                              |
+| STRCMP          | TEXT STRING        | 无                                     
                                                                    | TEXT | 
用于比较两个输入序列,如果值相同返回 `0` , 序列1的值小于序列2的值返回一个`负数`,序列1的值大于序列2的值返回一个`正数`      |
 
 详细说明及示例见文档 [字符串处理函数](../Reference/Function-and-Expression.md#字符串处理)。
 
@@ -183,10 +183,10 @@ OR, |, ||
 
 ### 选择函数
 
-| 函数名   | 输入序列类型                          | 必要的属性参数                            
        | 输出序列类型             | 功能描述                                             
        |
-| -------- | ------------------------------------- | 
------------------------------------------------- | ------------------------ | 
------------------------------------------------------------ |
-| TOP_K    | INT32 / INT64 / FLOAT / DOUBLE / TEXT | `k`: 最多选择的数据点数,必须大于 0 
小于等于 1000 | 与输入序列的实际类型一致 | 返回某时间序列中值最大的`k`个数据点。若多于`k`个数据点的值并列最大,则返回时间戳最小的数据点。 |
-| BOTTOM_K | INT32 / INT64 / FLOAT / DOUBLE / TEXT | `k`: 最多选择的数据点数,必须大于 0 
小于等于 1000 | 与输入序列的实际类型一致 | 返回某时间序列中值最小的`k`个数据点。若多于`k`个数据点的值并列最小,则返回时间戳最小的数据点。 |
+| 函数名   | 输入序列类型                                                            | 
必要的属性参数                                    | 输出序列类型             | 功能描述          
                                           |
+| -------- 
|-------------------------------------------------------------------| 
------------------------------------------------- | ------------------------ | 
------------------------------------------------------------ |
+| TOP_K    | INT32 / INT64 / FLOAT / DOUBLE / TEXT / STRING / DATE / TIEMSTAMP 
| `k`: 最多选择的数据点数,必须大于 0 小于等于 1000 | 与输入序列的实际类型一致 | 
返回某时间序列中值最大的`k`个数据点。若多于`k`个数据点的值并列最大,则返回时间戳最小的数据点。 |
+| BOTTOM_K | INT32 / INT64 / FLOAT / DOUBLE / TEXT / STRING / DATE / TIEMSTAMP 
                           | `k`: 最多选择的数据点数,必须大于 0 小于等于 1000 | 与输入序列的实际类型一致 | 
返回某时间序列中值最小的`k`个数据点。若多于`k`个数据点的值并列最小,则返回时间戳最小的数据点。 |
 
 详细说明及示例见文档 [选择函数](../Reference/Function-and-Expression.md#选择函数)。
 
diff --git 
a/src/zh/UserGuide/latest/stage/Operate-Metadata/Auto-Create-MetaData.md 
b/src/zh/UserGuide/latest/stage/Operate-Metadata/Auto-Create-MetaData.md
index 005d15b..86f407d 100644
--- a/src/zh/UserGuide/latest/stage/Operate-Metadata/Auto-Create-MetaData.md
+++ b/src/zh/UserGuide/latest/stage/Operate-Metadata/Auto-Create-MetaData.md
@@ -97,14 +97,18 @@
 
 ### 编码方式
 
-| 数据类型 | iotdb-datanode.properties配置项 | 默认值 |
-|:---|:-----------------------------|:---|
-| BOOLEAN | default\_boolean\_encoding   | RLE |
-| INT32 | default\_int32\_encoding     | RLE |
-| INT64 | default\_int64\_encoding     | RLE |
-| FLOAT | default\_float\_encoding     | GORILLA |
-| DOUBLE | default\_double\_encoding    | GORILLA |
-| TEXT | default\_text\_encoding      | PLAIN |
+| 数据类型      | iotdb-datanode.properties配置项 | 默认值 |
+|:----------|:-----------------------------|:---|
+| BOOLEAN   | default\_boolean\_encoding   | RLE |
+| INT32     | default\_int32\_encoding     | RLE |
+| DATE      | default\_int32\_encoding     | RLE |
+| INT64     | default\_int64\_encoding     | RLE |
+| TIMESTAMP | default\_int64\_encoding     | RLE |
+| FLOAT     | default\_float\_encoding     | GORILLA |
+| DOUBLE    | default\_double\_encoding    | GORILLA |
+| TEXT      | default\_text\_encoding      | PLAIN |
+| STRING    | default\_text\_encoding      | PLAIN |
+| BLOB      | default\_text\_encoding      | PLAIN |
 
 * 可配置的编码方式包括:PLAIN, RLE, TS_2DIFF, GORILLA, DICTIONARY
 

Reply via email to