Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
6 changes: 3 additions & 3 deletions src/.vuepress/sidebar/V2.0.x/en-Table.ts
Original file line number Diff line number Diff line change
Expand Up @@ -76,7 +76,7 @@ export const enSidebar = {
collapsible: true,
children: [
{ text: 'AINode Deployment(V2.0.5/6)', link: 'AINode_Deployment_apache' },
{ text: 'AINode Deployment(V2.0.8-beta)', link: 'AINode_Deployment_Upgrade_apache' },
{ text: 'AINode Deployment(V2.0.8)', link: 'AINode_Deployment_Upgrade_apache' },
],
},
],
Expand Down Expand Up @@ -132,9 +132,9 @@ export const enSidebar = {
prefix: 'AI-capability/',
children: [
{ text: 'AINode(V2.0.5/6)', link: 'AINode_apache' },
{ text: 'AINode(V2.0.8-beta)', link: 'AINode_Upgrade_apache' },
{ text: 'AINode(V2.0.8)', link: 'AINode_Upgrade_apache' },
{ text: 'TimeSeries Large Model(V2.0.5/6)', link: 'TimeSeries-Large-Model' },
{ text: 'TimeSeries Large Model(V2.0.8-beta)', link: 'TimeSeries-Large-Model_Upgrade_apache' },
{ text: 'TimeSeries Large Model(V2.0.8)', link: 'TimeSeries-Large-Model_Upgrade_apache' },
],
},
{
Expand Down
6 changes: 3 additions & 3 deletions src/.vuepress/sidebar/V2.0.x/en-Tree.ts
Original file line number Diff line number Diff line change
Expand Up @@ -83,7 +83,7 @@ export const enSidebar = {
collapsible: true,
children: [
{ text: 'AINode Deployment(V2.0.5/6)', link: 'AINode_Deployment_apache' },
{ text: 'AINode Deployment(V2.0.8-beta)', link: 'AINode_Deployment_Upgrade_apache' },
{ text: 'AINode Deployment(V2.0.8)', link: 'AINode_Deployment_Upgrade_apache' },
],
},
],
Expand Down Expand Up @@ -148,9 +148,9 @@ export const enSidebar = {
prefix: 'AI-capability/',
children: [
{ text: 'AINode(V2.0.5/6)', link: 'AINode_apache' },
{ text: 'AINode(V2.0.8-beta)', link: 'AINode_Upgrade_apache' },
{ text: 'AINode(V2.0.8)', link: 'AINode_Upgrade_apache' },
{ text: 'TimeSeries Large Model(V2.0.5/6)', link: 'TimeSeries-Large-Model' },
{ text: 'TimeSeries Large Model(V2.0.8-beta)', link: 'TimeSeries-Large-Model_Upgrade_apache' },
{ text: 'TimeSeries Large Model(V2.0.8)', link: 'TimeSeries-Large-Model_Upgrade_apache' },
],
},
{
Expand Down
6 changes: 3 additions & 3 deletions src/.vuepress/sidebar/V2.0.x/zh-Table.ts
Original file line number Diff line number Diff line change
Expand Up @@ -76,7 +76,7 @@ export const zhSidebar = {
collapsible: true,
children: [
{ text: 'AINode 部署(V2.0.5/6)', link: 'AINode_Deployment_apache' },
{ text: 'AINode 部署(V2.0.8-beta)', link: 'AINode_Deployment_Upgrade_apache' },
{ text: 'AINode 部署(V2.0.8)', link: 'AINode_Deployment_Upgrade_apache' },
],
},
],
Expand Down Expand Up @@ -130,9 +130,9 @@ export const zhSidebar = {
prefix: 'AI-capability/',
children: [
{ text: 'AINode(V2.0.5/6)', link: 'AINode_apache' },
{ text: 'AINode(V2.0.8-beta)', link: 'AINode_Upgrade_apache' },
{ text: 'AINode(V2.0.8)', link: 'AINode_Upgrade_apache' },
{ text: '时序大模型(V2.0.5/6)', link: 'TimeSeries-Large-Model' },
{ text: '时序大模型(V2.0.8-beta)', link: 'TimeSeries-Large-Model_Upgrade_apache' },
{ text: '时序大模型(V2.0.8)', link: 'TimeSeries-Large-Model_Upgrade_apache' },
],
},
{
Expand Down
6 changes: 3 additions & 3 deletions src/.vuepress/sidebar/V2.0.x/zh-Tree.ts
Original file line number Diff line number Diff line change
Expand Up @@ -77,7 +77,7 @@ export const zhSidebar = {
collapsible: true,
children: [
{ text: 'AINode 部署(V2.0.5/6)', link: 'AINode_Deployment_apache' },
{ text: 'AINode 部署(V2.0.8-beta)', link: 'AINode_Deployment_Upgrade_apache' },
{ text: 'AINode 部署(V2.0.8)', link: 'AINode_Deployment_Upgrade_apache' },
],
},
],
Expand Down Expand Up @@ -139,9 +139,9 @@ export const zhSidebar = {
prefix: 'AI-capability/',
children: [
{ text: 'AINode(V2.0.5/6)', link: 'AINode_apache' },
{ text: 'AINode(V2.0.8-beta)', link: 'AINode_Upgrade_apache' },
{ text: 'AINode(V2.0.8)', link: 'AINode_Upgrade_apache' },
{ text: '时序大模型(V2.0.5/6)', link: 'TimeSeries-Large-Model' },
{ text: '时序大模型(V2.0.8-beta)', link: 'TimeSeries-Large-Model_Upgrade_apache' },
{ text: '时序大模型(V2.0.8)', link: 'TimeSeries-Large-Model_Upgrade_apache' },
],
},
{
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -64,27 +64,6 @@ The `ITableSession` interface defines basic operations for interacting with IoTD
| executeQueryStatement(String sql, long timeoutInMs) | Executes a query SQL statement with a specified timeout in milliseconds. | `sql`: The SQL query statement. `timeoutInMs`: Query timeout in milliseconds. | `SessionDataSet` | `StatementExecutionException` |
| close() | Closes the session and releases resources. | None | None | IoTDBConnectionException |

**Description of Object Data Type:**

Since V2.0.8-beta, the `iTableSession.insert(Tablet tablet)` interface supports splitting a single Object-class file into multiple segments and writing them sequentially in order. When the column data type in the Tablet data structure is **`TSDataType.Object`**, you need to use the following method to populate the Tablet:

```Java
/*
rowIndex: row position in the tablet
columnIndex: column position in the tablet
isEOF: whether the current write operation contains the last segment of the Object file
offset: starting offset of the current write content within the Object file
content: byte array of the current write content
Note: When writing, ensure the total length of all segmented byte[] arrays equals the original Object size,
otherwise it will cause incorrect data size.
*/
void addValue(int rowIndex, int columnIndex, boolean isEOF, long offset, byte[] content)
```

During queries, the following four methods are supported to retrieve values:
`Field.getStringValue`, `Field.getObjectValue`, `SessionDataSet.DataIterator.getObject`, and `SessionDataSet.DataIterator.getString`.
All these methods return a String containing metadata in the format:
`(Object) XX.XX KB` (where XX.XX KB represents the actual object size).

#### 3.1.3 Sample Code

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -46,7 +46,7 @@ Note: Do not use a newer client to connect to an older server, as this may cause
| execute_query_statement | Executes a query SQL statement and retrieves results. | sql: `str` | `SessionDataSet` |
| close | Closes the session and releases resources. | None | None |

**Since V2.0.8-beta**, `SessionDataSet` provides methods for batch DataFrame retrieval to efficiently handle large-volume queries:
**Since V2.0.8**, `SessionDataSet` provides methods for batch DataFrame retrieval to efficiently handle large-volume queries:

```python
# Batch DataFrame retrieval
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -33,8 +33,6 @@ IoTDB supports the following ten data types:
- **TEXT** (Text data, suitable for long strings, Not recommended)
- **STRING** (String data with additional statistical information for optimized queries)
- **BLOB** (Large binary object)
- **OBJECT** (Large Binary Object)
> Supported since V2.0.8-beta
- **TIMESTAMP** (Timestamp, representing precise moments in time)
- **DATE** (Date, storing only calendar date information)

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -316,60 +316,6 @@ It costs 0.014s
* For more details about user permissions, refer to [Authority Management](../User-Manual/Authority-Management_apache.md).


### 1.7 Writing Object Type

To avoid oversized Object write requests, values of **Object** type can be split into segments and written sequentially. In SQL, the `to_object(isEOF, offset, content)` function must be used for value insertion.

> Supported since V2.0.8-beta

**Syntax:**

```SQL
INSERT INTO tableName(time, columnName) VALUES(timeValue, TO_OBJECT(isEOF, offset, content));
```

**Parameters:**

| Name | Data Type | Description |
|---------|--------------------|-----------------------------------------------------------------------------|
| isEOF | BOOLEAN | Whether the current write contains the last segment of the Object |
| offset | INT64 | Starting offset of the current segment within the Object |
| content | Hexadecimal (HEX) | Content of the current segment |

**Examples:**

Add an Object-type column `s1` to table `table1`:

```SQL
ALTER TABLE table1 ADD COLUMN IF NOT EXISTS s1 OBJECT FIELD COMMENT 'object type';
```

1. **Non-segmented write**

```SQL
INSERT INTO table1(time, device_id, s1) VALUES(NOW(), 'tag1', TO_OBJECT(TRUE, 0, X'696F746462'));
```

2. **Segmented write**

```SQL
-- First write: TO_OBJECT(FALSE, 0, X'696F');
INSERT INTO table1(time, device_id, s1) VALUES(1, 'tag1', TO_OBJECT(FALSE, 0, X'696F'));

-- Second write: TO_OBJECT(FALSE, 2, X'7464');
INSERT INTO table1(time, device_id, s1) VALUES(1, 'tag1', TO_OBJECT(FALSE, 2, X'7464'));

-- Third write: TO_OBJECT(TRUE, 4, X'62');
INSERT INTO table1(time, device_id, s1) VALUES(1, 'tag1', TO_OBJECT(TRUE, 4, X'62'));
```

**Notes:**

1. If only partial segments of an Object are written, querying the column will return `NULL`. Data becomes accessible only after all segments are successfully written.
2. During segmented writes, if the `offset` of the current write does not match the current size of the Object, the write operation will fail.
3. If `offset=0` is used after partial writes, the existing content will be overwritten with new data.


## 2. Data Updates

### 2.1 Syntax
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -20,11 +20,43 @@
-->
# Release History

## V2.0.8

> Release Date: 2026.04.14

V2.0.8 expands AI model capabilities by adding support for Chronos-2, one of the mainstream time-series foundation models, while enabling concurrent inference for built-in large models. On the database side, TIME columns now support custom naming, data synchronization path configuration flexibility has been optimized, and comprehensive improvements have been made to database monitoring, performance, and stability. The specific release contents are as follows:

* **Query Module**: Added functionality to display the list of available DataNode nodes
* **Query Module**: Added system table for统计查询延迟信息 in the table model
* **Query Module**: Python SessionDataset now supports converting TsBlock to DataFrame and returning DataFrames in batches
* **Storage Module**: TIME column now supports custom column naming
* **Storage Module**: Added SQL support for viewing the complete definition statements of created tables/views
* **Stream Processing Module**: Pipe synchronization now supports excluding specified devices/measurement points from synchronization
* **Stream Processing Module**: Multiple exact paths can now be specified in a single Pipe
* **Stream Processing Module**: When filtering paths in Pipe, `source.pattern` and `source.path` parameters can now be used together with comma separation
* **AI Module**: Built-in Chronos-2 model with prediction support
* **AI Module**: Timer-XL and Sundial built-in models now support concurrent inference
* **System Module**: Added system table for displaying DataNode node connection status in the table model
* **Miscellaneous**: Fixed security vulnerabilities CVE-2025-12183, CVE-2025-66566, and CVE-2025-11226

## V2.0.7

> Release Date: 2026.03.04

V2.0.7 focuses on security hardening and stability optimization. It removes high-risk RPC interfaces and JEXL functions, strengthens naming convention validation and service address configuration logic, optimizes the automatic deletion mechanism for partitioned tables, and provides comprehensive improvements to database monitoring, performance, and stability. The specific release contents are as follows:

* **Miscellaneous**: Removed high-risk RPC interfaces
* **Miscellaneous**: Removed JEXL functions
* **Miscellaneous**: Added naming合法性校验 when creating Pipe
* **Miscellaneous**: Changed the default client RPC service address to 127.0.0.1
* **Miscellaneous**: Adjusted code logic so that internal services bind to the address configured by `dn_internal_address` instead of the default address


## V2.0.6

> Release Date: 2026.01.20

V2.0.6 is the official release of the dual-model (tree and table) architecture. It introduces **query-writeback capability for the table model**, new **bitwise operation functions** (built-in scalar functions), and **push-down-capable time functions**, while delivering comprehensive improvements in database monitoring, performance, and stability. Specific release contents are as follows:
V2.0.6 is the official release of the dual-mode (tree and table) architecture. It introduces **query-writeback capability for the table mode**, new **bitwise operation functions** (built-in scalar functions), and **push-down-capable time functions**, while delivering comprehensive improvements in database monitoring, performance, and stability. Specific release contents are as follows:

* **Query Module**: Added support for query-writeback functionality in the table model.
* **Query Module**: Enhanced row-pattern recognition in the table model to support aggregate functions, enabling analysis and computation over consecutive data sequences.
Expand All @@ -37,7 +69,7 @@ V2.0.6 is the official release of the dual-model (tree and table) architecture.

> Release Date: 2025.08.21

V2.0.5, as the official release of the Dual-Model Tree-Table system, primarily introduces the tree-to-table view, window functions for the table model, the aggregate function approx_most_frequent, and supports LEFT & RIGHT JOIN as well as ASOF LEFT JOIN. The AINode now includes two new built-in models, Timer-XL and Timer-Sundial, and supports inference capabilities for both tree and table models. Additionally, this version brings comprehensive improvements to database monitoring, performance, and stability. The specific updates are as follows:
V2.0.5, as the official release of the Dual-Mode Tree-Table system, primarily introduces the tree-to-table view, window functions for the table model, the aggregate function approx_most_frequent, and supports LEFT & RIGHT JOIN as well as ASOF LEFT JOIN. The AINode now includes two new built-in models, Timer-XL and Timer-Sundial, and supports inference capabilities for both tree and table models. Additionally, this version brings comprehensive improvements to database monitoring, performance, and stability. The specific updates are as follows:

* **Query Module**: Supports manual creation of tree-to-table views
* **Query Module**: Adds window functions for the table model
Expand Down Expand Up @@ -134,6 +166,20 @@ V2.0.1-beta introduces dual tree-table model configuration, supporting standard
* ​**​Ecosystem Integration​**​:
* Kubernetes Operator support

## V1.3.7

> Release Date: 2026.03.04

V1.3.7 focuses on security hardening and stability optimization. It removes high-risk RPC interfaces and JEXL functions, strengthens naming convention validation and service address configuration logic, optimizes the automatic deletion mechanism for partitioned tables, and provides comprehensive improvements to database monitoring, performance, and stability. The specific release contents are as follows:

* **Miscellaneous**: Removed high-risk RPC interfaces
* **Miscellaneous**: Removed JEXL functions
* **Miscellaneous**: Added naming合法性校验 when creating Pipe
* **Miscellaneous**: Changed the default client RPC service address to 127.0.0.1
* **Miscellaneous**: Adjusted code logic so that internal services bind to the address configured by `dn_internal_address` instead of the default address



## V1.3.6

> Release Date: 2026.01.20
Expand Down
Loading
Loading