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

aloyszhang pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/inlong-website.git


The following commit(s) were added to refs/heads/master by this push:
     new 893616e22c1 [INLONG-1078][Doc] Archive images for inlong blog 
documents (#1079)
893616e22c1 is described below

commit 893616e22c19feb2a63c8590c50271b3202ce022
Author: AloysZhang <[email protected]>
AuthorDate: Tue Oct 29 14:21:50 2024 +0800

    [INLONG-1078][Doc] Archive images for inlong blog documents (#1079)
---
 blog/2023-01-13-release-1.5.0.md                      |  10 +++++-----
 blog/2023-03-23-release-1.6.0.md                      |  12 ++++++------
 blog/2023-05-19-release-1.7.0.md                      |  10 +++++-----
 blog/2023-07-24-release-1.8.0.md                      |  16 ++++++++--------
 blog/2023-09-25-release-1.9.0.md                      |  10 +++++-----
 blog/2023-12-13-release-1.10.0.md                     |  14 +++++++-------
 blog/2024-04-21-release-1.12.0.md                     |  16 ++++++++--------
 blog/2024-07-18-release-1.13.0.md                     |  18 +++++++++---------
 blog/img/{ => 1.10.0}/1.10.0-agent-audit.png          | Bin
 blog/img/{ => 1.10.0}/1.10.0-group-operation-log.png  | Bin
 blog/img/{ => 1.10.0}/1.10.0-group-switching-1.png    | Bin
 blog/img/{ => 1.10.0}/1.10.0-group-switching-2.png    | Bin
 blog/img/{ => 1.10.0}/1.10.0-group-switching-3.png    | Bin
 blog/img/{ => 1.10.0}/1.10.0-periodic-collection.png  | Bin
 blog/img/{ => 1.10.0}/1.10.0-sdk-isolation.png        | Bin
 blog/img/{ => 1.10.0}/1.10.0-transform.png            | Bin
 blog/img/{ => 1.12.0}/1.12.0-agent-kafka.png          | Bin
 blog/img/{ => 1.12.0}/1.12.0-agent-mongodb.png        | Bin
 blog/img/{ => 1.12.0}/1.12.0-agent-package.png        | Bin
 blog/img/{ => 1.12.0}/1.12.0-agent-pulsar.png         | Bin
 blog/img/{ => 1.12.0}/1.12.0-agent-upgrade.png        | Bin
 blog/img/{ => 1.12.0}/1.12.0-audit-checkpoint.png     | Bin
 blog/img/{ => 1.12.0}/1.12.0-audit-process.png        | Bin
 blog/img/{ => 1.12.0}/1.12.0-audit-recovery.png       | Bin
 blog/img/{ => 1.12.0}/1.12.0-redis-connector.png      | Bin
 blog/img/{ => 1.13.0}/1.13.0-agent-cluster.png        | Bin
 blog/img/{ => 1.13.0}/1.13.0-agent-install.png        | Bin
 blog/img/{ => 1.13.0}/1.13.0-agent-postgreSQL.png     | Bin
 blog/img/{ => 1.13.0}/1.13.0-create-template.png      | Bin
 .../img/{ => 1.13.0}/1.13.0-dataflow-architecture.png | Bin
 blog/img/{ => 1.13.0}/1.13.0-import-template.png      | Bin
 blog/img/{ => 1.13.0}/1.13.0-manager-offlinesync.png  | Bin
 blog/img/{ => 1.13.0}/1.13.0-manager-standalone.png   | Bin
 blog/img/{ => 1.13.0}/1.13.0-offline-architecture.png | Bin
 blog/img/{ => 1.13.0}/1.13.0-select-template.png      | Bin
 blog/img/{ => 1.13.0}/1.13.0-sort-audit.png           | Bin
 blog/img/{ => 1.13.0}/1.13.0-sort-exactly.png         | Bin
 .../img/{ => 1.5.0}/1.5.0-create-dashboard-stream.png | Bin
 blog/img/{ => 1.5.0}/1.5.0-create-hudi-source.png     | Bin
 blog/img/{ => 1.5.0}/1.5.0-dirty-data.png             | Bin
 blog/img/{ => 1.5.0}/1.5.0-mq-handler.png             | Bin
 blog/img/{ => 1.5.0}/1.5.0-support-kafka.png          | Bin
 blog/img/{ => 1.6.0}/1.6.0-audit-kafka.png            | Bin
 blog/img/{ => 1.6.0}/1.6.0-connection-test.png        | Bin
 blog/img/{ => 1.6.0}/1.6.0-create-kudu.png            | Bin
 blog/img/{ => 1.6.0}/1.6.0-mq-selector.png            | Bin
 blog/img/{ => 1.6.0}/1.6.0-sort-audit-time.png        | Bin
 blog/img/{ => 1.6.0}/1.6.0-update-redis.png           | Bin
 blog/img/{ => 1.7.0}/1.7.0-batch-add.png              | Bin
 blog/img/{ => 1.7.0}/1.7.0-dashboard-refactor.png     | Bin
 blog/img/{ => 1.7.0}/1.7.0-kafka-stream.png           | Bin
 blog/img/{ => 1.7.0}/1.7.0-mysql-ghost.png            | Bin
 blog/img/{ => 1.7.0}/1.7.0-mysql-schema.png           | Bin
 blog/img/{ => 1.8.0}/1.8.0-agent-1.8.0.png            | Bin
 blog/img/{ => 1.8.0}/1.8.0-agent-flow-controll.png    | Bin
 blog/img/{ => 1.8.0}/1.8.0-agent-under-1.8.0.png      | Bin
 blog/img/{ => 1.8.0}/1.8.0-create-tenant.png          | Bin
 blog/img/{ => 1.8.0}/1.8.0-data-preview.png           | Bin
 .../img/{ => 1.8.0}/1.8.0-multi-tenant-management.png | Bin
 blog/img/{ => 1.8.0}/1.8.0-realtime-sync.png          | Bin
 blog/img/{ => 1.8.0}/1.8.0-trans-delay.png            | Bin
 blog/img/{ => 1.9.0}/1.9.0-dataproxycplussdk.png      | Bin
 .../img/{ => 1.9.0}/1.9.0-dataproxymetadataupdate.png | Bin
 blog/img/{ => 1.9.0}/1.9.0-icebergswitch.png          | Bin
 blog/img/{ => 1.9.0}/1.9.0-managertenant.png          | Bin
 blog/img/{ => 1.9.0}/1.9.0-observability.png          | Bin
 .../2023-01-13-release-1.5.0.md                       |  10 +++++-----
 .../2023-03-23-release-1.6.0.md                       |  12 ++++++------
 .../2023-05-19-release-1.7.0.md                       |  10 +++++-----
 .../2023-07-24-release-1.8.0.md                       |  16 ++++++++--------
 .../2023-09-25-release-1.9.0.md                       |  10 +++++-----
 .../2023-12-13-release-1.10.0.md                      |  16 ++++++++--------
 .../2024-04-21-release-1.12.0.md                      |  18 +++++++++---------
 .../2024-07-18-release-1.13.0.md                      |  18 +++++++++---------
 .../img/{ => 1.10.0}/1.10.0-agent-audit.png           | Bin
 .../img/{ => 1.10.0}/1.10.0-group-operation-log.png   | Bin
 .../img/{ => 1.10.0}/1.10.0-group-switching-1.png     | Bin
 .../img/{ => 1.10.0}/1.10.0-group-switching-2.png     | Bin
 .../img/{ => 1.10.0}/1.10.0-group-switching-3.png     | Bin
 .../img/{ => 1.10.0}/1.10.0-periodic-collection.png   | Bin
 .../img/{ => 1.10.0}/1.10.0-sdk-isolation.png         | Bin
 .../img/{ => 1.10.0}/1.10.0-transform.png             | Bin
 .../img/{ => 1.12.0}/1.12.0-agent-kafka.png           | Bin
 .../img/{ => 1.12.0}/1.12.0-agent-mongodb.png         | Bin
 .../img/{ => 1.12.0}/1.12.0-agent-package.png         | Bin
 .../img/{ => 1.12.0}/1.12.0-agent-pulsar.png          | Bin
 .../img/{ => 1.12.0}/1.12.0-agent-upgrade.png         | Bin
 .../img/{ => 1.12.0}/1.12.0-audit-checkpoint.png      | Bin
 .../img/{ => 1.12.0}/1.12.0-audit-process.png         | Bin
 .../img/{ => 1.12.0}/1.12.0-audit-recovery.png        | Bin
 .../img/{ => 1.12.0}/1.12.0-redis-connector.png       | Bin
 .../img/{ => 1.13.0}/1.13.0-agent-cluster.png         | Bin
 .../img/{ => 1.13.0}/1.13.0-agent-install.png         | Bin
 .../img/{ => 1.13.0}/1.13.0-agent-postgreSQL.png      | Bin
 .../img/{ => 1.13.0}/1.13.0-create-template.png       | Bin
 .../img/{ => 1.13.0}/1.13.0-dataflow-architecture.png | Bin
 .../img/{ => 1.13.0}/1.13.0-import-template.png       | Bin
 .../img/{ => 1.13.0}/1.13.0-manager-offlinesync.png   | Bin
 .../img/{ => 1.13.0}/1.13.0-manager-standalone.png    | Bin
 .../img/{ => 1.13.0}/1.13.0-offline-architecture.png  | Bin
 .../img/{ => 1.13.0}/1.13.0-select-template.png       | Bin
 .../img/{ => 1.13.0}/1.13.0-sort-audit.png            | Bin
 .../img/{ => 1.13.0}/1.13.0-sort-exactly.png          | Bin
 .../img/{ => 1.5.0}/1.5.0-create-dashboard-stream.png | Bin
 .../img/{ => 1.5.0}/1.5.0-create-hudi-source.png      | Bin
 .../img/{ => 1.5.0}/1.5.0-dirty-data.png              | Bin
 .../img/{ => 1.5.0}/1.5.0-mq-handler.png              | Bin
 .../img/{ => 1.5.0}/1.5.0-support-kafka.png           | Bin
 .../img/{ => 1.6.0}/1.6.0-audit-kafka.png             | Bin
 .../img/{ => 1.6.0}/1.6.0-connection-test.png         | Bin
 .../img/{ => 1.6.0}/1.6.0-create-kudu.png             | Bin
 .../img/{ => 1.6.0}/1.6.0-mq-selector.png             | Bin
 .../img/{ => 1.6.0}/1.6.0-sort-audit-time.png         | Bin
 .../img/{ => 1.6.0}/1.6.0-update-redis.png            | Bin
 .../img/{ => 1.7.0}/1.7.0-batch-add.png               | Bin
 .../img/{ => 1.7.0}/1.7.0-dashboard-refactor.png      | Bin
 .../img/{ => 1.7.0}/1.7.0-kafka-stream.png            | Bin
 .../img/{ => 1.7.0}/1.7.0-mysql-ghost.png             | Bin
 .../img/{ => 1.7.0}/1.7.0-mysql-schema.png            | Bin
 .../img/{ => 1.8.0}/1.8.0-agent-1.8.0.png             | Bin
 .../img/{ => 1.8.0}/1.8.0-agent-flow-controll.png     | Bin
 .../img/{ => 1.8.0}/1.8.0-agent-under-1.8.0.png       | Bin
 .../img/{ => 1.8.0}/1.8.0-create-tenant.png           | Bin
 .../img/{ => 1.8.0}/1.8.0-data-preview.png            | Bin
 .../img/{ => 1.8.0}/1.8.0-multi-tenant-management.png | Bin
 .../img/{ => 1.8.0}/1.8.0-realtime-sync.png           | Bin
 .../img/{ => 1.8.0}/1.8.0-trans-delay.png             | Bin
 .../img/{ => 1.9.0}/1.9.0-dataproxycplussdk.png       | Bin
 .../img/{ => 1.9.0}/1.9.0-dataproxymetadataupdate.png | Bin
 .../img/{ => 1.9.0}/1.9.0-icebergswitch.png           | Bin
 .../img/{ => 1.9.0}/1.9.0-managertenant.png           | Bin
 .../img/{ => 1.9.0}/1.9.0-observability.png           | Bin
 132 files changed, 108 insertions(+), 108 deletions(-)

diff --git a/blog/2023-01-13-release-1.5.0.md b/blog/2023-01-13-release-1.5.0.md
index 890ed4cc312..46917f1dc8c 100644
--- a/blog/2023-01-13-release-1.5.0.md
+++ b/blog/2023-01-13-release-1.5.0.md
@@ -59,23 +59,23 @@ Apache InLong recently released version 1.5.0, which closed 
about 296+ issues, i
 ## 1.5.0 Feature Introduction
 ### Support StarRocks, Hudi, Doris, Elasticsearch Sinks
 In version 1.5.0, InLong expanded the new data node Connector, supported 
StarRocks, Hudi, Doris, Elasticsearch, and other flow directions for community 
user scenarios, and expanded the data warehouse and lake scenarios. These new 
data nodes are mainly contributed by @liaorui, @featzhang, @kuansix, 
@LvJiancheng, and other developers.
-![1.5.0-create-hudi-source](./img/1.5.0-create-hudi-source.png)
+![1.5.0-create-hudi-source](img/1.5.0/1.5.0-create-hudi-source.png)
 
 ### Optimization of the Dashboard Experience
 Compared with traditional data integration projects, InLong has added concepts 
such as Group, Stream, and data nodes. Community users using Dashboard for the 
first time will be confused about the whole process. To reduce the cost of 
using Dashboard users, InLong has made a lot of optimizations for the Dashboard 
front-end page, with more than 50 optimization points, and adjusted the 
concept, process, and display. The figure below shows the process of creating a 
Stream in 1.5.0, which is m [...]
-![1.5.0-create-dashboard-stream](./img/1.5.0-create-dashboard-stream.png)
+![1.5.0-create-dashboard-stream](img/1.5.0/1.5.0-create-dashboard-stream.png)
 
 ### Refactor the MQ Management Model
 To quickly support new message queue services (such as RocketMQ) to implement 
plug-ins, and unify the existing support for Pulsar, Kafka, and TubeMQ, in 
version 1.5.0, InLong DataProxy refactored the MQ management model, and all MQ 
types are based on `MessageQueueHandler ` Implement the corresponding 
`Handler`. Thanks to @woofyzhao and @luchunliang for the implementation of this 
feature. If you need to develop a new MQ type, you can refer to the DataProxy 
plug-in guide.
-![1.5.0-mq-handler](./img/1.5.0-mq-handler.png)
+![1.5.0-mq-handler](img/1.5.0/1.5.0-mq-handler.png)
 
 ### Support Dirty Data Processing
 If there is dirty data that does not meet the data specifications (such as 
field range exceeding, missing data fields, etc.) when entering the lake into 
the warehouse, it may cause the user task to fail to write and restart 
continuously. In version 1.5.0, InLong supports storing unrecoverable dirty 
data in external storage, including S3 and local logs. At the same time, users 
can customize the output port of dirty data and can configure "whether to 
enable dirty data archiving" and "wheth [...]
-![1.5.0-dirty-data](./img/1.5.0-dirty-data.png)
+![1.5.0-dirty-data](img/1.5.0/1.5.0-dirty-data.png)
 
 ### Support Apache Kafka Full-link
 In version 1.5.0, the DataProxy, Manager, Sort, and Dashboard modules have 
completed the full-link support for Apache Kafka. The support for Kafka has 
gone through two versions, and it is available for production in 1.5.0. When 
users create data streams Just choose Kafka. The implementation of this feature 
is thanks to @woofyzhao, @fuweng11, @haifxu for their support.
-![1.5.0-support-kafka](./img/1.5.0-support-kafka.png)
+![1.5.0-support-kafka](img/1.5.0/1.5.0-support-kafka.png)
 
 For more details on the 1.5.0 release, please refer to the release notes, 
which detail the features, enhancements, and bug fixes for this release.
 
diff --git a/blog/2023-03-23-release-1.6.0.md b/blog/2023-03-23-release-1.6.0.md
index a154c44a2da..505ee7656bf 100644
--- a/blog/2023-03-23-release-1.6.0.md
+++ b/blog/2023-03-23-release-1.6.0.md
@@ -55,15 +55,15 @@ Apache InLong recently released version 1.6.0, which closed 
about 202+ issues, i
 ## 1.6.0 Feature Introduction
 ### Supported Kudu data stream
 Apache Kudu is an open-source storage engine by Cloudera, which can provide 
low-delayed random read and write and efficient data analysis capabilities 
simultaneously. In version 1.6.0, InLong supports the Kudu data stream, 
including adding Kudu Connector, metadata management, metrics, etc. Kudu data 
stream contributed by @featzhang independently. Interested users can make an 
installation and experience.
-![1.6.0-create-kudu](./img/1.6.0-create-kudu.png)
+![1.6.0-create-kudu](img/1.6.0/1.6.0-create-kudu.png)
 
 ### Improved the Redis data stream
 Redis is a viral open-source memory database with high performance and rich 
data structure. In version 1.6.0, InLong perfects the Redis data stream, adding 
SinkFunction, metadata management, indicators, and Dashboard pages in Redis 
Connector. Supported data formats like Redis's PLAIN, Hash, and Bitmap and 
realized Redis Schema conversion through the SCHEMAMAPPING mechanism. Redis 
data streams through the SCHEMA mapping mode, and SCHEMA can be converted into 
different [Redis Data-Type] (h [...]
-![1.6.0-update-redis](./img/1.6.0-update-redis.png)
+![1.6.0-update-redis](img/1.6.0/1.6.0-update-redis.png)
 
 ### Added MQ cluster Selector strategy
 In the multi-MQ cluster scene, if DataProxy is connected to all MQ clusters 
simultaneously, the number of producers in the MQ cluster will surge. At the 
same time, the amount of metadata of ZooKeeeper is excess, which will cause 
OutOfMemory. In version 1.6.0, InLong increased the selector strategy of the MQ 
cache cluster level (mainly for Apache Pulsar). As a result, the DataProxy node 
can only choose some MQ clusters under the same tag for production, thereby 
reducing the number of prod [...]
-![1.6.0-mq-selector](./img/1.6.0-mq-selector.png)
+![1.6.0-mq-selector](img/1.6.0/1.6.0-mq-selector.png)
 
 ### Optimized the Audit ID distribution rules
 In the original design of InLong Audit, the receiving and sending number of 
each module is an independent audit ID, which is used to record the receiving 
and sending number for each module. There is a defect in this scheme. If InLong 
Sort sorted data to multiple targets at the same time (such as writing Hive and 
Clickhouse), the audit ID cannot distinguish different data streams for the 
Sort. In version 1.6.0, the Audit ID distribution rules are optimized, the 
different data stream has a [...]
@@ -88,15 +88,15 @@ In the original design of InLong Audit, the receiving and 
sending number of each
 
 ### Added connection test for new Data Node
 In the previous version, InLong added data nodes and registered MQ clusters, 
and did not judge the availability of the cluster. In the new version, InLong 
adds a connection test for the main data node and InLong system component 
registration, which enhances the data stream creation. This feature is mainly 
participated in development by @leosanqing, @Bluewang, and @Fuweng11.
-![1.6.0-connection-test](./img/1.6.0-connection-test.png)
+![1.6.0-connection-test](img/1.6.0/1.6.0-connection-test.png)
 
 ### Optimized reconciliation benchmark time for Sort Audit
 Before version 1.6.0, the Sort reconciliation benchmark time is the machine 
time for data processing. Using this time will cause the full-link 
reconciliation data to be inaccurate. In this version, the Sort audit 
reconciliation referred to the design of TimestampedCollector in Apache Flink, 
replaced the Simple Collector in the original Pulsar Connector, and aligned the 
audit index. The implementation principle is to set the Timestamp field at the 
Collector. When obtaining the InLongMsg d [...]
-![1.6.0-sort-audit-time](./img/1.6.0-sort-audit-time.png)
+![1.6.0-sort-audit-time](img/1.6.0/1.6.0-sort-audit-time.png)
 
 ### Supported using Kafka as cache MQ for Audit
 InLong Audit is an independent subsystem that conducts real-time audit 
reconciliation of the InLong system's Agent, DataProxy, and Sort module's 
inflow, and outflow. The current amount of audits is minute, hour, and day. In 
the previous version, InLong Audit only supports the use of Pulsar to cache 
audit data, and this will increase the cost of user deployment when they chose 
Kafka. In the entire InLong Audit design, the choice of MQ type should be 
consistent with the data stream to avoi [...]
-![1.6.0-audit-kafka](./img/1.6.0-audit-kafka.png)
+![1.6.0-audit-kafka](img/1.6.0/1.6.0-audit-kafka.png)
 
 ## Follow-up planning
 In 1.6.0, the Sort module also fixes multiple bugs such as dirty data 
archives, metrics, and Connectors. The Dashboard continues to optimize display 
and approval processes and other experience problems. For more details, please 
refer to the Release [Changelog] (https: // github. 
com/Apache/InLong/Blob/Master/Changes.md). In the subsequent version, Apache 
InLong will add Schema dynamic change, Schema batch import, agent installation, 
adding more data nodes, looking forward to more develop [...]
\ No newline at end of file
diff --git a/blog/2023-05-19-release-1.7.0.md b/blog/2023-05-19-release-1.7.0.md
index 4b0bc262864..a10a4d86d17 100644
--- a/blog/2023-05-19-release-1.7.0.md
+++ b/blog/2023-05-19-release-1.7.0.md
@@ -58,26 +58,26 @@ Apache InLong recently released version 1.7.0, which closed 
about 150+ issues, i
 ### Support for sending data directly to Kafka
 In previous versions, InLong supported sending data directly from Agent to 
Pulsar without going through DataProxy. With this design, users with simple 
data scenarios and who want to ensure data integrity as much as possible can 
reduce their dependency on DataProxy. For users accustomed to using Kafka, 
version 1.7.0 supports the feature of sending data directly from Agent to 
Kafka. Thanks to @wangpeix for the complete contribution, and details can be 
found in INLONG-7783. If you want to e [...]
 
-![1.7.0-kafka-stream](./img/1.7.0-kafka-stream.png)
+![1.7.0-kafka-stream](img/1.7.0/1.7.0-kafka-stream.png)
 
 ### MySQL all-database migration with schema change support
 As community users delve deeper into using InLong, the drawbacks of not 
supporting schema changes become increasingly apparent. After the source end 
changes the DDL, the task needs to modify the configuration and restart, 
significantly increasing operational costs. In the current version, InLong 
supports automatic schema change capabilities. Upstream data sources can 
perceive Create, Alter, Drop, Truncate, and Rename DDL operations and 
synchronize these operations downstream. Meanwhile,  [...]
 
-![1.7.0-mysql-schema](./img/1.7.0-mysql-schema.png)
+![1.7.0-mysql-schema](img/1.7.0/1.7.0-mysql-schema.png)
 
 In the database, DDL messages are perceived by Debezium in the CDC. At this 
point, the data obtained is a single DDL statement, such as "DROP TABLE A". 
This statement is a field in the Debezium JSON. The DDL statement is then 
parsed into a DDL model by JSQLParser. This model parses common DDL messages 
and processes them into a JSON format that is easy for the program to handle. 
The DDL model will be sent to the Sink Operator in Flink as data, and the 
Operator will process the DDL model.
 
 ### GH-OST awareness for MySQL all-database migration
 GH-OST (GitHub Online Schema Migration) is a trigger-free online schema 
migration solution for MySQL released by GitHub. It is testable and provides 
pause, dynamic control/reconfiguration, auditing, and many operational 
privileges. Throughout the migration process, it generates minimal workload on 
the primary server and is separated from the existing work on the migrated 
tables. By supporting GH-OST-aware DDL, the MySQL Connector can correctly 
handle table structure changes caused by GH- [...]
 
-![1.7.0-mysql-ghost](./img/1.7.0-mysql-ghost.png)
+![1.7.0-mysql-ghost](img/1.7.0/1.7.0-mysql-ghost.png)
 
 First, after enabling the automatic DDL response for MySQL CDC, the ghc, gho, 
and del tables generated by GH-OST are also captured. Second, when perceiving 
the changes made by GH-OST to the gho table, the gho table in the DDL statement 
is replaced with the source table and stored in the state. Finally, after 
GH-OST completes the entire change process for the source table, the DDL 
statements previously stored in the state are sent downstream.
 
 ### Addition of 4 batch import modes (CSV, SQL, JSON, and Excel)
 When creating data stream input metadata fields, we need to enter information 
such as name, type, and description in sequence. If we need to input hundreds 
or thousands of field information, this processing method is extremely 
inefficient. In version 1.7.0, InLong has added four batch import modes for 
CSV/SQL/JSON/Excel formats. Users only need to refer to the template for each 
format and fill in the selected information to achieve one-time import. Many 
thanks to @featzhang and @fuweng11 [...]
 
-![1.7.0-batch-add](./img/1.7.0-batch-add.png)
+![1.7.0-batch-add](img/1.7.0/1.7.0-batch-add.png)
 
 ### Simplification of command line tool for creating data stream configurations
 In the before version, when creating a data stream using the command line, the 
JSON file content required was complex, and the file structure was not clear 
enough, making the threshold for users to create data streams through the 
command line very high. Additionally, when users wanted to reuse the file to 
create a new data stream, they had to modify many repetitive fields, such as 
inlongGroupID and inlongStreamID. In version 1.7.0, InLong has optimized the 
data stream configuration JSON  [...]
@@ -135,7 +135,7 @@ The following example is a template for creating a File -> 
Pulsar -> Clickhouse
 ### Refactoring of the Dashboard layout
 In version 1.7.0, the community has refactored the overall layout of the 
Dashboard, including adjusting the top-bottom layout to a left-right layout 
(moving the navigation bar to the left), adding a dark theme, adding icons to 
the main menu, adjusting the data source selection display and process, etc. 
This adjustment has improved the user experience of the Dashboard. Special 
thanks to @leezng and @bluewang for their contributions. For more details, see 
INLONG-7734.
 
-![1.7.0-dashboard-refactor](./img/1.7.0-dashboard-refactor.png)
+![1.7.0-dashboard-refactor](img/1.7.0/1.7.0-dashboard-refactor.png)
 
 ## Follow-up planning
 In version 1.7.0, the community has also improved the performance and 
stability of Agent file collection, while TubeMQ has completed the first phase 
of the Golang SDK production. Additionally, Sort can now consume using the 
subscription groups allocated by the Manager. In subsequent versions, InLong 
will support multiple Apache Flink versions, including not only the current 
Flink 1.13 but also Flink 1.15. Furthermore, tenant management will be added to 
unify the models of InLong projects [...]
\ No newline at end of file
diff --git a/blog/2023-07-24-release-1.8.0.md b/blog/2023-07-24-release-1.8.0.md
index 779bf0acf04..d853be97de9 100644
--- a/blog/2023-07-24-release-1.8.0.md
+++ b/blog/2023-07-24-release-1.8.0.md
@@ -63,12 +63,12 @@ In version 1.8.0 of Apache InLong, many other features have 
also been completed,
 ## 1.8.0 Feature Introduction
 ### Agent optimizes ultra-long log processing logic, improving file collection 
efficiency and stability
 In actual use, due to improper use by users or bugs in data production 
programs, occasionally, a single data length reaches MB or even GB level. For 
Agents deployed in low-profile environments, this type of data greatly affects 
the performance of sending. The lower version Agent reads this type of data 
directly into memory based on the newline character and then discards it, but 
is limited by the hardware configuration of the Agent deployment environment, a 
single ultra-long data is extr [...]
-![1.8.0-agent-under-1.8.0.png](./img/1.8.0-agent-under-1.8.0.png)
-![1.8.0-agent-1.8.0.png](./img/1.8.0-agent-1.8.0.png)
+![1.8.0-agent-under-1.8.0.png](img/1.8.0/1.8.0-agent-under-1.8.0.png)
+![1.8.0-agent-1.8.0.png](img/1.8.0/1.8.0-agent-1.8.0.png)
 
 ### Agent adopts global flow control, solving the OOM problem caused by the 
growth of file numbers
 In previous versions, each file was collected and sent by its thread. Although 
we limited the maximum collection buffer of each file, with the growth of user 
traffic, the increase in the number of files is inevitable, leading to the 
simultaneous collection of too many files, causing OOM exceptions due to memory 
overflow. InLong supports the feature of Agent configuring global flow control 
in version 1.8.0. With this feature, Agent can effectively avoid frequent OOM 
problems caused by the [...]
-![1.8.0-agent-flow-controll.png](./img/1.8.0-agent-flow-controll.png)
+![1.8.0-agent-flow-controll.png](img/1.8.0/1.8.0-agent-flow-controll.png)
 
 ### Support multiple Flink versions
 As community users go deeper into using InLong, the scenarios InLong faces 
become more diverse and complex. To support the needs of users in different 
Flink environments, InLong has added support for multiple Flink versions in the 
current version. Users can choose the Flink version to start in the 
plugins/flink-sort-plugin.properties configuration file in InLong-Manager.
@@ -83,12 +83,12 @@ flink.version=1.13
 
 ### Support multi-tenant management
 To address the requirements for permission and resource isolation in 
multi-user scenarios, InLong introduces a multi-tenant architecture in the 
current version. The multi-tenant architecture ensures that data and 
permissions do not interfere with each other among different users within the 
same group of services. Thanks to @vernedeng and @bluewang for their 
contributions to this feature, see INLONG-7914 for feature details. The 
following is the core process:
-![1.8.0-multi-tenant-management.png](./img/1.8.0-multi-tenant-management.png)
+![1.8.0-multi-tenant-management.png](img/1.8.0/1.8.0-multi-tenant-management.png)
 
 Tenants are transparent to core logic developers. At the entrance of the 
request, tenant authentication is added, and requests without access to the 
tenant's permissions are directly rejected; before accessing the Database, the 
corresponding tenant filter conditions are added to ensure that the scope of 
data query and modification is limited within the tenant.
 
 Users can create tenants and assign tenant roles on the Dashboard.
-![1.8.0-create-tenant.png](./img/1.8.0-create-tenant.png)
+![1.8.0-create-tenant.png](img/1.8.0/1.8.0-create-tenant.png)
 
 ### Support real-time synchronization
 The new version supports real-time data synchronization. The main difference 
between real-time synchronization and data access is that it does not require 
the support of intermediate MQ storage. The Sort component directly stores the 
source data, greatly enriching the user's usage scenarios.
@@ -96,15 +96,15 @@ The new version supports real-time data synchronization. 
The main difference bet
 As shown in the figure below, the Tab page adds a "Data Synchronization" 
label. After the user configures the basic Group information, they only need to 
enter the "Data Source" and "Data Target" information, and after submitting the 
task, the data can be synchronized in real-time.
 
 Thanks to @fuwen11, @bluewang, @Emsnap, and @haifxu for their contributions to 
this feature.
-![1.8.0-realtime-sync.png](./img/1.8.0-realtime-sync.png)
+![1.8.0-realtime-sync.png](img/1.8.0/1.8.0-realtime-sync.png)
 
 ### Support data preview
 For businesses just accessing InLong, data preview can help users quickly 
confirm the accuracy of reported data and locate problems. In this version, the 
InLong front supports previewing users' real-time reported data. Thanks to 
@fuwen11 and @bluewang's contributions, users can choose data preview in the 
operation bar under the data stream after successfully creating a data stream 
and reporting data.
-![1.8.0-data-preview.png](./img/1.8.0-data-preview.png)
+![1.8.0-data-preview.png](img/1.8.0/1.8.0-data-preview.png)
 
 ### Support querying transmission delay
 Transmission delay is crucial for some real-time consumption scenarios. In 
this version, InLong audit supports frontend viewing of average transmission 
delay indicators. Thanks to @fuwen11 and @bluewang's contributions, users can 
query link transmission delay after successfully creating a data stream and 
reporting data.
-![1.8.0-trans-delay.png](./img/1.8.0-trans-delay.png)
+![1.8.0-trans-delay.png](img/1.8.0/1.8.0-trans-delay.png)
 
 ## Follow-up planning
 In version 1.8.0, the community also restructured the DataProxy code, unified 
the configuration pull interface, supported complete IP and CIDR-based IP 
segment configuration of black and white list features, and improved module 
performance and stability. Sort has improved stability in DDL sensing scenarios 
and supports whole library migration of Hive, Iceberg automatic column update, 
and column storage features. In subsequent versions, InLong will refactor 
DataProxy C++ SDK, enrich Flink [...]
\ No newline at end of file
diff --git a/blog/2023-09-25-release-1.9.0.md b/blog/2023-09-25-release-1.9.0.md
index b0bd11b1dc5..7dabcb3bf93 100644
--- a/blog/2023-09-25-release-1.9.0.md
+++ b/blog/2023-09-25-release-1.9.0.md
@@ -95,7 +95,7 @@ In version 1.9.0, @ZhaoNiuniu has contributed to the complete 
observability capa
 - The otel collector collects and converts the data, then exports it to 
Jaeger, Prometheus, and Elasticsearch;
 - Grafana configures the three data sources for unified display, query, 
monitoring, and alerting.
 
-![1.9.0-observability.png](./img/1.9.0-observability.png)
+![1.9.0-observability.png](img/1.9.0/1.9.0-observability.png)
 
 Thanks to @ZhaoNiuniu's contribution, see INLONG-8611 and INLONG-8799 for 
details.
 
@@ -111,7 +111,7 @@ The older version of DataProxy C++ SDK was developed based 
on the C language, wh
 
 With these optimizations, the DataProxy C++ SDK becomes more efficient, 
scalable, and reliable, providing better data processing capabilities for 
Apache InLong users.
 
-![1.9.0-dataproxycplussdk.png](./img/1.9.0-dataproxycplussdk.png)
+![1.9.0-dataproxycplussdk.png](img/1.9.0/1.9.0-dataproxycplussdk.png)
 
 Thanks to @doleyzi's contribution, see INLONG-8747 for details.
 
@@ -126,7 +126,7 @@ DataProxy fetches metadata configuration from Manager, but 
sometimes due to netw
 
 By implementing this protection mechanism for metadata configuration updates, 
Apache InLong can better handle extreme scenarios and ensure the reliability of 
its data processing capabilities.
 
-![1.9.0-dataproxymetadataupdate.png](./img/1.9.0-dataproxymetadataupdate.png)
+![1.9.0-dataproxymetadataupdate.png](img/1.9.0/1.9.0-dataproxymetadataupdate.png)
 
 Thanks to @gosonzhang's contribution, see INLONG-8758 and INLONG-8899 for 
details.
 
@@ -156,7 +156,7 @@ Thanks to @fancycoderzf's contribution, see INLONG-4972 for 
details.
 
 Currently, the real-time synchronization from MySQL to Iceberg uses the upsert 
mode by default during the full data phase. The upsert implementation in 
Iceberg involves a delete operation followed by an add operation, with the 
delete operation resulting in the creation of a large number of delete files. 
This significantly impacts query efficiency. This optimization enables the task 
to use Append mode during the full data phase and automatically switch to 
Upsert mode during the incrementa [...]
 
-![1.9.0-icebergswitch.png](./img/1.9.0-icebergswitch.png)
+![1.9.0-icebergswitch.png](img/1.9.0/1.9.0-icebergswitch.png)
 
 Thanks to [@lordcheng10](https://github.com/lordcheng10) and @Emsnap's 
contribution.
 
@@ -164,7 +164,7 @@ Thanks to [@lordcheng10](https://github.com/lordcheng10) 
and @Emsnap's contribut
 
 After InLong supports multi-tenancy, InLong Groups upgraded from older 
versions will be defined under the public tenant, while newly created InLong 
Groups will be defined within the tenant under the user's name. This leads to 
users frequently switching between multiple tenants to use resources. This 
optimization supports the migration of InLong Groups between different tenants, 
while also validating and automatically creating corresponding cluster labels, 
data nodes, and other resources.
 
-![1.9.0-managertenant.png](./img/1.9.0-managertenant.png)
+![1.9.0-managertenant.png](img/1.9.0/1.9.0-managertenant.png)
 
 Thanks to @vernedeng's contribution.
 
diff --git a/blog/2023-12-13-release-1.10.0.md 
b/blog/2023-12-13-release-1.10.0.md
index 4a4b7cbfdc2..d127eeb3f2f 100644
--- a/blog/2023-12-13-release-1.10.0.md
+++ b/blog/2023-12-13-release-1.10.0.md
@@ -67,27 +67,27 @@ Apache InLong recently released version 1.10.0, which 
closed about 200+ issues,
 
 ### Agent Supports Periodic Collection
 In version 1.10.0, InLong adds the ability to perform periodic file collection 
tasks. The periodic strategy includes daily, hourly, and real-time, and users 
can specify this strategy when creating a new file data source. At the same 
time, users can also configure time offsets to delay or advance collection. 
Thanks to @Justinhuang, @Blue
-![1.10.0-periodic-collection.png](img%2F1.10.0-periodic-collection.png)
+![1.10.0-periodic-collection.png](img/1.10.0/1.10.0-periodic-collection.png)
 
 ### Support for viewing Agent audit by IP dimension
 In order to better monitor the status of InLong Agent and quickly discover 
problems in live network operation, in version 1.10.0, users can view different 
Agent audit indicators based on the IP dimension in the system operation and 
maintenance -> audit module. Thanks to @fuwen11, @Bluewang, and @Justinhuang 
for their contributions, for more details, please see INLONG-9443, INLONG-9446, 
and INLONG-9458.
-![1.10.0-agent-audit.png](img%2F1.10.0-agent-audit.png)
+![1.10.0-agent-audit.png](img/1.10.0/1.10.0-agent-audit.png)
 
 ### Manager adds Group operation logs
 In version 1.10.0, InLong supports viewing operation logs, including the 
creation and modification of Group/Stream, and the addition and removal of 
Sink/Source operations. Operation logs can quickly help users track historical 
behavior, allowing users to quickly view key data stream operations for easier 
live network maintenance. Users can view all operation logs under a Group in 
the Data Access -> Group Details -> Operation Logs section.
-![1.10.0-group-operation-log.png](img%2F1.10.0-group-operation-log.png)
+![1.10.0-group-operation-log.png](img/1.10.0/1.10.0-group-operation-log.png)
 
 ### New ability to switch Group clusters
 In order to support resource integration and cost allocation capabilities, 
InLong introduced the Group cluster switching feature in version 1.10.0. Direct 
switching will inevitably lead to problems such as unsynchronized metadata 
between modules and data loss. To achieve seamless cluster switching for 
businesses, Group cluster switching is divided into three states and two steps. 
Thanks to @Vernedeng for the contribution, for more details, please see 
INLONG-9314.
-![1.10.0-group-switching-1.png](img%2F1.10.0-group-switching-1.png)
+![1.10.0-group-switching-1.png](img/1.10.0/1.10.0-group-switching-1.png)
 Before switching clusters, the data is on Cluster 1.
-![1.10.0-group-switching-2.png](img%2F1.10.0-group-switching-2.png)
+![1.10.0-group-switching-2.png](img/1.10.0/1.10.0-group-switching-2.png)
 After starting the cluster switch, the original routing configuration is 
copied, new data is written to Cluster 2, and the unsent data on Cluster 1 
continues to be sent.
-![1.10.0-group-switching-3.png](img%2F1.10.0-group-switching-3.png)
+![1.10.0-group-switching-3.png](img/1.10.0/1.10.0-group-switching-3.png)
 
 ### C++ SDK supports multi-dimensional isolation
 In the old version of the C++ SDK, all Groups competed for the internal 
resources of the SDK. If a particular Group has a particularly large flow, it 
will inevitably squeeze other Groups, causing small flow Groups to be unable to 
obtain resources. In version 1.10.0, DataProxy C++ SDK supports resource 
isolation at the Cluster and Group levels, and users can enable or disable it 
by configuring enable_isolation. Thanks to @doleyzi for the contribution, for 
more details, please see INLONG-9213.
-![1.10.0-sdk-isolation.png](img%2F1.10.0-sdk-isolation.png)
+![1.10.0-sdk-isolation.png](img/1.10.0/1.10.0-sdk-isolation.png)
 
 ## Future plans
 In version 1.10.0, the community refactored InLong Agent, enriched Flink 1.15 
Connector, and completed support for viewing operation logs and other 
functions. In subsequent versions, InLong will continue to enrich Flink 1.15 
Connector, enhance Transform capabilities, unify DataProxy data protocols, 
support integration with Apache Paimon, optimize Dashboard experience, etc. We 
look forward to more developers participating and contributing.
diff --git a/blog/2024-04-21-release-1.12.0.md 
b/blog/2024-04-21-release-1.12.0.md
index 36abc33ba90..0ef52ae6aa9 100644
--- a/blog/2024-04-21-release-1.12.0.md
+++ b/blog/2024-04-21-release-1.12.0.md
@@ -68,7 +68,7 @@ Apache InLong recently released version 1.12.0, which closed 
about 140+ issues,
 
 ### Manager supports for agent install package management and it's 
self-upgrading processe
 In version 1.12.0, Operator can manage Agent installation packages through the 
Dashboard, including Agent installation, upgrade, heartbeat management, etc. 
Users can create/manage installation packages on the System Operation -> 
Installation Packages -> Agent page. Thanks to @haifxu and @fuweng11. For more 
information, please refer to: INLONG-9932.
-![1.12.0-agent-package.png](img%2F1.12.0-agent-package.png)
+![1.12.0-agent-package.png](img/1.12.0/1.12.0-agent-package.png)
 
 ### Agent ability for self-upgrading process
 Agents can perform self-upgrades through a pre-deployed Installer.The 
Installer will obtain the upgrade configuration information from InLong Manager 
via IP and determine whether to proceed with the upgrade based on the 
configuration. The main process includes:
@@ -76,7 +76,7 @@ Agents can perform self-upgrades through a pre-deployed 
Installer.The Installer
 - DELETE: Stop the process -> Delete the installation files
 - UPDATE: Download the installation package -> Stop the process -> Delete the 
installation files -> Unzip the installation package -> Start the process
 Thanks to @justinwwhuang. For more information, please refer to: INLONG-9801.
-![1.12.0-agent-upgrade.png](img%2F1.12.0-agent-upgrade.png)
+![1.12.0-agent-upgrade.png](img/1.12.0/1.12.0-agent-upgrade.png)
 
 ### Agent ability for collecting data from Kafka
 In version 1.12.0, Agent supports data collection from Kafka. When creating a 
data source, you can directly select Kafka and fill all relevant data source 
information to start using it. The parameters include:
@@ -89,7 +89,7 @@ In version 1.12.0, Agent supports data collection from Kafka. 
When creating a da
 - Automatic offset reset: Set offset strategy
 - Partition offset: Set specific partition offset
 Thanks to @justinwwhuang. For more information, please refer to: INLONG-9741.
-![1.12.0-agent-kafka.png](img%2F1.12.0-agent-kafka.png)
+![1.12.0-agent-kafka.png](img/1.12.0/1.12.0-agent-kafka.png)
 
 ### Agent ability for collecting data from Pulsar
 In version 1.12.0, Agent supports data collection from Pulsar. When creating a 
data source, you can directly select Pulsar and fill all relevant data source 
information to start using it. The parameters include:
@@ -102,7 +102,7 @@ In version 1.12.0, Agent supports data collection from 
Pulsar. When creating a d
 - Pulsar admin url: Pulsar admin url
 - Pulsar service url: Pulsar service url
 Thanks to @justinwwhuang. For more information, please refer to: INLONG-9804.
-![1.12.0-agent-pulsar.png](img%2F1.12.0-agent-pulsar.png)
+![1.12.0-agent-pulsar.png](img/1.12.0/1.12.0-agent-pulsar.png)
 
 ### Agent ability for collecting data from MongoDB
 In version 1.12.0, Agent supports data collection from MongoDB. When creating 
a data source, you can directly select MongoDB and fill all relevant data 
source information to start using it. The parameters include:
@@ -116,20 +116,20 @@ In version 1.12.0, Agent supports data collection from 
MongoDB. When creating a
 - Collection name: MongoDB collection name
 - Read mode: Optional "Full + Incremental" or "Incremental"
 Thanks to @justinwwhuang. For more information, please refer to: INLONG-10006。.
-![1.12.0-agent-mongodb.png](img%2F1.12.0-agent-mongodb.png)
+![1.12.0-agent-mongodb.png](img/1.12.0/1.12.0-agent-mongodb.png)
 
 ### Optimization for Audit and enhancement of its capabilities
 In version 1.12.0, InLong enhancement the Audit reconciliation scenarios, 
including support for Agent data supplementation scenarios, Sort on Flink 
Checkpoint scenarios, etc.
 Thanks to @doleyzi. For more information, please refer to: 
INLONG-9904、INLONG-9926、INLONG-9928、INLONG-9957.
 - Support OpenAPI capabilities
 In version 1.12.0, Audit has supported the OpenAPI, and each OpenAPI can be 
elected as the leader through HA. The leader node is responsible for real-time 
and retroactive aggregation of audit data, and the aggregated results are saved 
in the DB. The slave node is responsible for caching the data in the DB to 
memory and providing services externally. The leader node also provides the 
same service.
-![1.12.0-audit-process.png](img%2F1.12.0-audit-process.png)
+![1.12.0-audit-process.png](img/1.12.0/1.12.0-audit-process.png)
 - Support Agent data supplementation capabilities
 In version 1.12.0, Audit supports the Agent data supplementation scenario by 
adding audit-version, which distinguishes the audit reconciliation for each 
supplementation.
-![1.12.0-audit-recovery.png](img%2F1.12.0-audit-recovery.png)
+![1.12.0-audit-recovery.png](img/1.12.0/1.12.0-audit-recovery.png)
 - Support Sort Flink Checkpoint capabilities
 In version 1.12.0, Audit supports the Sort Flink checkpoint scenario, ensuring 
that audit data is not lost or duplicated when the Flink job restarts or fails 
over.
-![1.12.0-audit-checkpoint.png](img%2F1.12.0-audit-checkpoint.png)
+![1.12.0-audit-checkpoint.png](img/1.12.0/1.12.0-audit-checkpoint.png)
 
 ### Support for Redis connector in Sort module 
 In version 1.12.0, An additional Flink 1.15-based Redis connector 
implementation has been added, supporting read and write operations for String, 
Hash, ZSet, and Bitmap, four common data types in Redis clusters and standalone 
instances. Schema conversion is supported in the Redis connector, allowing 
users to specify a Schema that can be converted to different Redis data types. 
The specific Schema conversion logic is shown in the following figure. In the 
bitmap conversion logic in the fig [...]
diff --git a/blog/2024-07-18-release-1.13.0.md 
b/blog/2024-07-18-release-1.13.0.md
index dbcf8223f4d..3257db0b50d 100644
--- a/blog/2024-07-18-release-1.13.0.md
+++ b/blog/2024-07-18-release-1.13.0.md
@@ -69,25 +69,25 @@ Apache InLong recently released version 1.13.0, which 
closed about 275+ issues,
 ### Manager supports installing Agent by SSH
 Through this feature, operation and maintenance personnel can install agents 
through the Dashboard, which currently supports SSH and manual installation 
methods. Users can create a new Agent cluster on the cluster management page.
 
-![1.13.0-agent-cluster.png](img%2F1.13.0-agent-cluster.png)
+![1.13.0-agent-cluster.png](img/1.13.0/1.13.0-agent-cluster.png)
 
 Afterwards, enter the node, select the new node, and configure the SSH 
username and password to achieve SSH installation agent capability. 
 Thanks to @haifxu and @fuweng11. For more information, please refer to 
INLONG-10409.
 
-![1.13.0-agent-install.png](img%2F1.13.0-agent-install.png)
+![1.13.0-agent-install.png](img/1.13.0/1.13.0-agent-install.png)
 
 ### Manager supports field template management
 With this feature, users can pre-configure field templates, and when creating 
a new Stream, they can select the pre-configured field templates, thus 
achieving the purpose of reusing configurations across multiple Streams.
 Thanks to @kamianlaida and @fuweng11. For more information, please refer to: 
INLONG-10330.
 
-![1.13.0-create-template.png](img%2F1.13.0-create-template.png)
+![1.13.0-create-template.png](img/1.13.0/1.13.0-create-template.png)
 
 ### Support the construction of the underlying framework for configuring 
offline synchronization tasks
 In version 1.13.0, Manager supports the configuration of offline 
synchronization tasks. Compared to real-time synchronization, offline data 
synchronization pays more attention to synchronization throughput and 
efficiency.
 Real-time synchronization tasks run in the manner of Flink stream tasks, while 
offline synchronization runs in the manner of Flink batch tasks. This approach 
can ensure the consistency of real-time and offline synchronization tasks' code 
as much as possible, reducing maintenance costs.
 The offline synchronization function of InLong will be combined with the 
scheduling system to synchronize the complete or incremental data of the data 
source information to the data target. The offline synchronization task is 
created by InLong Manager (including scheduling information), and the specific 
data synchronization logic is implemented through the InLong Sort module.
 
-![1.13.0-offline-architecture.png](img%2F1.13.0-offline-architecture.png)
+![1.13.0-offline-architecture.png](img/1.13.0/1.13.0-offline-architecture.png)
 
 Key Competency:
 - Job Type: Support single or periodic offline data synchronization.
@@ -98,7 +98,7 @@ Key Competency:
 
 The following is the core process:
 
-![1.13.0-dataflow-architecture.png](img%2F1.13.0-dataflow-architecture.png)
+![1.13.0-dataflow-architecture.png](img/1.13.0/1.13.0-dataflow-architecture.png)
 
 Thanks to @aloyszhang. For more information, please refer to: INLONG-10054, 
INLONG-10053, INLONG-10055, INLONG-10069.
 
@@ -109,7 +109,7 @@ In version 1.13.0, the distribution process of Sort 
Standalone configuration was
 
 In the new version, after modifying the data target, the Sort configuration 
will not take effect in real time, but will need to be built and written into 
the sort_config table after executing the workflow. The following figure shows 
a process comparison:
 
-![1.13.0-manager-standalone.png](img%2F1.13.0-manager-standalone.png)
+![1.13.0-manager-standalone.png](img/1.13.0/1.13.0-manager-standalone.png)
 
 Thanks to @fuweng11, @vernedeng. For more information, please refer to: 
INLONG-9867, INLONG-10017.
 
@@ -123,20 +123,20 @@ In version 1.13.0, Agent supports data collection from 
PostgreSQL. When creating
 
 Thanks to @haifxu. For more information, please refer to: INLONG-10318.
 
-![1.13.0-agent-postgreSQL.png](img%2F1.13.0-agent-postgreSQL.png)
+![1.13.0-agent-postgreSQL.png](img/1.13.0/1.13.0-agent-postgreSQL.png)
 
 ### Sort connectors reporting audit information supports exactly once
 Sort Connectors support for exactly once semantics in reporting audit 
information.
 When an operator encounters an exception and the snapshot fails, each 
Connector ensures that the audit information is reported exactly once.
 As shown in the following diagram, when data is transferred, the current data 
will be written to the current operator's AuditBuffer and the corresponding 
checkpointId. When the checkpoint is completed (within the 
notifyCompleteCheckpoint method), the data written to the buffer will be 
reported.
 
-![1.13.0-sort-exactly.png](img%2F1.13.0-sort-exactly.png)
+![1.13.0-sort-exactly.png](img/1.13.0/1.13.0-sort-exactly.png)
 
 During the execution of snapShot, the checkpointId written to the buffer will 
be changed to the checkpointId in the snapShot, and when the checkpoint is 
completed,
 the audit information corresponding to the checkpointId will be uploaded to 
the Audit Server within the notifyCompleteCheckpoint method. In the Audit SDK,
 it is already supportedto report all information in the Audit buffer that is 
less than the specified checkpointId.
 
-![1.13.0-sort-audit.png](img%2F1.13.0-sort-audit.png)
+![1.13.0-sort-audit.png](img/1.13.0/1.13.0-sort-audit.png)
 
 Thanks to @XiaoYou201. For more information, please refer to: INLONG-10311, 
INLONG-10312, INLONG-10317, INLONG-10355, INLONG-10357, INLONG-10358, 
INLONG-10401.
 
diff --git a/blog/img/1.10.0-agent-audit.png 
b/blog/img/1.10.0/1.10.0-agent-audit.png
similarity index 100%
rename from blog/img/1.10.0-agent-audit.png
rename to blog/img/1.10.0/1.10.0-agent-audit.png
diff --git a/blog/img/1.10.0-group-operation-log.png 
b/blog/img/1.10.0/1.10.0-group-operation-log.png
similarity index 100%
rename from blog/img/1.10.0-group-operation-log.png
rename to blog/img/1.10.0/1.10.0-group-operation-log.png
diff --git a/blog/img/1.10.0-group-switching-1.png 
b/blog/img/1.10.0/1.10.0-group-switching-1.png
similarity index 100%
rename from blog/img/1.10.0-group-switching-1.png
rename to blog/img/1.10.0/1.10.0-group-switching-1.png
diff --git a/blog/img/1.10.0-group-switching-2.png 
b/blog/img/1.10.0/1.10.0-group-switching-2.png
similarity index 100%
rename from blog/img/1.10.0-group-switching-2.png
rename to blog/img/1.10.0/1.10.0-group-switching-2.png
diff --git a/blog/img/1.10.0-group-switching-3.png 
b/blog/img/1.10.0/1.10.0-group-switching-3.png
similarity index 100%
rename from blog/img/1.10.0-group-switching-3.png
rename to blog/img/1.10.0/1.10.0-group-switching-3.png
diff --git a/blog/img/1.10.0-periodic-collection.png 
b/blog/img/1.10.0/1.10.0-periodic-collection.png
similarity index 100%
rename from blog/img/1.10.0-periodic-collection.png
rename to blog/img/1.10.0/1.10.0-periodic-collection.png
diff --git a/blog/img/1.10.0-sdk-isolation.png 
b/blog/img/1.10.0/1.10.0-sdk-isolation.png
similarity index 100%
rename from blog/img/1.10.0-sdk-isolation.png
rename to blog/img/1.10.0/1.10.0-sdk-isolation.png
diff --git a/blog/img/1.10.0-transform.png 
b/blog/img/1.10.0/1.10.0-transform.png
similarity index 100%
rename from blog/img/1.10.0-transform.png
rename to blog/img/1.10.0/1.10.0-transform.png
diff --git a/blog/img/1.12.0-agent-kafka.png 
b/blog/img/1.12.0/1.12.0-agent-kafka.png
similarity index 100%
rename from blog/img/1.12.0-agent-kafka.png
rename to blog/img/1.12.0/1.12.0-agent-kafka.png
diff --git a/blog/img/1.12.0-agent-mongodb.png 
b/blog/img/1.12.0/1.12.0-agent-mongodb.png
similarity index 100%
rename from blog/img/1.12.0-agent-mongodb.png
rename to blog/img/1.12.0/1.12.0-agent-mongodb.png
diff --git a/blog/img/1.12.0-agent-package.png 
b/blog/img/1.12.0/1.12.0-agent-package.png
similarity index 100%
rename from blog/img/1.12.0-agent-package.png
rename to blog/img/1.12.0/1.12.0-agent-package.png
diff --git a/blog/img/1.12.0-agent-pulsar.png 
b/blog/img/1.12.0/1.12.0-agent-pulsar.png
similarity index 100%
rename from blog/img/1.12.0-agent-pulsar.png
rename to blog/img/1.12.0/1.12.0-agent-pulsar.png
diff --git a/blog/img/1.12.0-agent-upgrade.png 
b/blog/img/1.12.0/1.12.0-agent-upgrade.png
similarity index 100%
rename from blog/img/1.12.0-agent-upgrade.png
rename to blog/img/1.12.0/1.12.0-agent-upgrade.png
diff --git a/blog/img/1.12.0-audit-checkpoint.png 
b/blog/img/1.12.0/1.12.0-audit-checkpoint.png
similarity index 100%
rename from blog/img/1.12.0-audit-checkpoint.png
rename to blog/img/1.12.0/1.12.0-audit-checkpoint.png
diff --git a/blog/img/1.12.0-audit-process.png 
b/blog/img/1.12.0/1.12.0-audit-process.png
similarity index 100%
rename from blog/img/1.12.0-audit-process.png
rename to blog/img/1.12.0/1.12.0-audit-process.png
diff --git a/blog/img/1.12.0-audit-recovery.png 
b/blog/img/1.12.0/1.12.0-audit-recovery.png
similarity index 100%
rename from blog/img/1.12.0-audit-recovery.png
rename to blog/img/1.12.0/1.12.0-audit-recovery.png
diff --git a/blog/img/1.12.0-redis-connector.png 
b/blog/img/1.12.0/1.12.0-redis-connector.png
similarity index 100%
rename from blog/img/1.12.0-redis-connector.png
rename to blog/img/1.12.0/1.12.0-redis-connector.png
diff --git a/blog/img/1.13.0-agent-cluster.png 
b/blog/img/1.13.0/1.13.0-agent-cluster.png
similarity index 100%
rename from blog/img/1.13.0-agent-cluster.png
rename to blog/img/1.13.0/1.13.0-agent-cluster.png
diff --git a/blog/img/1.13.0-agent-install.png 
b/blog/img/1.13.0/1.13.0-agent-install.png
similarity index 100%
rename from blog/img/1.13.0-agent-install.png
rename to blog/img/1.13.0/1.13.0-agent-install.png
diff --git a/blog/img/1.13.0-agent-postgreSQL.png 
b/blog/img/1.13.0/1.13.0-agent-postgreSQL.png
similarity index 100%
rename from blog/img/1.13.0-agent-postgreSQL.png
rename to blog/img/1.13.0/1.13.0-agent-postgreSQL.png
diff --git a/blog/img/1.13.0-create-template.png 
b/blog/img/1.13.0/1.13.0-create-template.png
similarity index 100%
rename from blog/img/1.13.0-create-template.png
rename to blog/img/1.13.0/1.13.0-create-template.png
diff --git a/blog/img/1.13.0-dataflow-architecture.png 
b/blog/img/1.13.0/1.13.0-dataflow-architecture.png
similarity index 100%
rename from blog/img/1.13.0-dataflow-architecture.png
rename to blog/img/1.13.0/1.13.0-dataflow-architecture.png
diff --git a/blog/img/1.13.0-import-template.png 
b/blog/img/1.13.0/1.13.0-import-template.png
similarity index 100%
rename from blog/img/1.13.0-import-template.png
rename to blog/img/1.13.0/1.13.0-import-template.png
diff --git a/blog/img/1.13.0-manager-offlinesync.png 
b/blog/img/1.13.0/1.13.0-manager-offlinesync.png
similarity index 100%
rename from blog/img/1.13.0-manager-offlinesync.png
rename to blog/img/1.13.0/1.13.0-manager-offlinesync.png
diff --git a/blog/img/1.13.0-manager-standalone.png 
b/blog/img/1.13.0/1.13.0-manager-standalone.png
similarity index 100%
rename from blog/img/1.13.0-manager-standalone.png
rename to blog/img/1.13.0/1.13.0-manager-standalone.png
diff --git a/blog/img/1.13.0-offline-architecture.png 
b/blog/img/1.13.0/1.13.0-offline-architecture.png
similarity index 100%
rename from blog/img/1.13.0-offline-architecture.png
rename to blog/img/1.13.0/1.13.0-offline-architecture.png
diff --git a/blog/img/1.13.0-select-template.png 
b/blog/img/1.13.0/1.13.0-select-template.png
similarity index 100%
rename from blog/img/1.13.0-select-template.png
rename to blog/img/1.13.0/1.13.0-select-template.png
diff --git a/blog/img/1.13.0-sort-audit.png 
b/blog/img/1.13.0/1.13.0-sort-audit.png
similarity index 100%
rename from blog/img/1.13.0-sort-audit.png
rename to blog/img/1.13.0/1.13.0-sort-audit.png
diff --git a/blog/img/1.13.0-sort-exactly.png 
b/blog/img/1.13.0/1.13.0-sort-exactly.png
similarity index 100%
rename from blog/img/1.13.0-sort-exactly.png
rename to blog/img/1.13.0/1.13.0-sort-exactly.png
diff --git a/blog/img/1.5.0-create-dashboard-stream.png 
b/blog/img/1.5.0/1.5.0-create-dashboard-stream.png
similarity index 100%
rename from blog/img/1.5.0-create-dashboard-stream.png
rename to blog/img/1.5.0/1.5.0-create-dashboard-stream.png
diff --git a/blog/img/1.5.0-create-hudi-source.png 
b/blog/img/1.5.0/1.5.0-create-hudi-source.png
similarity index 100%
rename from blog/img/1.5.0-create-hudi-source.png
rename to blog/img/1.5.0/1.5.0-create-hudi-source.png
diff --git a/blog/img/1.5.0-dirty-data.png b/blog/img/1.5.0/1.5.0-dirty-data.png
similarity index 100%
rename from blog/img/1.5.0-dirty-data.png
rename to blog/img/1.5.0/1.5.0-dirty-data.png
diff --git a/blog/img/1.5.0-mq-handler.png b/blog/img/1.5.0/1.5.0-mq-handler.png
similarity index 100%
rename from blog/img/1.5.0-mq-handler.png
rename to blog/img/1.5.0/1.5.0-mq-handler.png
diff --git a/blog/img/1.5.0-support-kafka.png 
b/blog/img/1.5.0/1.5.0-support-kafka.png
similarity index 100%
rename from blog/img/1.5.0-support-kafka.png
rename to blog/img/1.5.0/1.5.0-support-kafka.png
diff --git a/blog/img/1.6.0-audit-kafka.png 
b/blog/img/1.6.0/1.6.0-audit-kafka.png
similarity index 100%
rename from blog/img/1.6.0-audit-kafka.png
rename to blog/img/1.6.0/1.6.0-audit-kafka.png
diff --git a/blog/img/1.6.0-connection-test.png 
b/blog/img/1.6.0/1.6.0-connection-test.png
similarity index 100%
rename from blog/img/1.6.0-connection-test.png
rename to blog/img/1.6.0/1.6.0-connection-test.png
diff --git a/blog/img/1.6.0-create-kudu.png 
b/blog/img/1.6.0/1.6.0-create-kudu.png
similarity index 100%
rename from blog/img/1.6.0-create-kudu.png
rename to blog/img/1.6.0/1.6.0-create-kudu.png
diff --git a/blog/img/1.6.0-mq-selector.png 
b/blog/img/1.6.0/1.6.0-mq-selector.png
similarity index 100%
rename from blog/img/1.6.0-mq-selector.png
rename to blog/img/1.6.0/1.6.0-mq-selector.png
diff --git a/blog/img/1.6.0-sort-audit-time.png 
b/blog/img/1.6.0/1.6.0-sort-audit-time.png
similarity index 100%
rename from blog/img/1.6.0-sort-audit-time.png
rename to blog/img/1.6.0/1.6.0-sort-audit-time.png
diff --git a/blog/img/1.6.0-update-redis.png 
b/blog/img/1.6.0/1.6.0-update-redis.png
similarity index 100%
rename from blog/img/1.6.0-update-redis.png
rename to blog/img/1.6.0/1.6.0-update-redis.png
diff --git a/blog/img/1.7.0-batch-add.png b/blog/img/1.7.0/1.7.0-batch-add.png
similarity index 100%
rename from blog/img/1.7.0-batch-add.png
rename to blog/img/1.7.0/1.7.0-batch-add.png
diff --git a/blog/img/1.7.0-dashboard-refactor.png 
b/blog/img/1.7.0/1.7.0-dashboard-refactor.png
similarity index 100%
rename from blog/img/1.7.0-dashboard-refactor.png
rename to blog/img/1.7.0/1.7.0-dashboard-refactor.png
diff --git a/blog/img/1.7.0-kafka-stream.png 
b/blog/img/1.7.0/1.7.0-kafka-stream.png
similarity index 100%
rename from blog/img/1.7.0-kafka-stream.png
rename to blog/img/1.7.0/1.7.0-kafka-stream.png
diff --git a/blog/img/1.7.0-mysql-ghost.png 
b/blog/img/1.7.0/1.7.0-mysql-ghost.png
similarity index 100%
rename from blog/img/1.7.0-mysql-ghost.png
rename to blog/img/1.7.0/1.7.0-mysql-ghost.png
diff --git a/blog/img/1.7.0-mysql-schema.png 
b/blog/img/1.7.0/1.7.0-mysql-schema.png
similarity index 100%
rename from blog/img/1.7.0-mysql-schema.png
rename to blog/img/1.7.0/1.7.0-mysql-schema.png
diff --git a/blog/img/1.8.0-agent-1.8.0.png 
b/blog/img/1.8.0/1.8.0-agent-1.8.0.png
similarity index 100%
rename from blog/img/1.8.0-agent-1.8.0.png
rename to blog/img/1.8.0/1.8.0-agent-1.8.0.png
diff --git a/blog/img/1.8.0-agent-flow-controll.png 
b/blog/img/1.8.0/1.8.0-agent-flow-controll.png
similarity index 100%
rename from blog/img/1.8.0-agent-flow-controll.png
rename to blog/img/1.8.0/1.8.0-agent-flow-controll.png
diff --git a/blog/img/1.8.0-agent-under-1.8.0.png 
b/blog/img/1.8.0/1.8.0-agent-under-1.8.0.png
similarity index 100%
rename from blog/img/1.8.0-agent-under-1.8.0.png
rename to blog/img/1.8.0/1.8.0-agent-under-1.8.0.png
diff --git a/blog/img/1.8.0-create-tenant.png 
b/blog/img/1.8.0/1.8.0-create-tenant.png
similarity index 100%
rename from blog/img/1.8.0-create-tenant.png
rename to blog/img/1.8.0/1.8.0-create-tenant.png
diff --git a/blog/img/1.8.0-data-preview.png 
b/blog/img/1.8.0/1.8.0-data-preview.png
similarity index 100%
rename from blog/img/1.8.0-data-preview.png
rename to blog/img/1.8.0/1.8.0-data-preview.png
diff --git a/blog/img/1.8.0-multi-tenant-management.png 
b/blog/img/1.8.0/1.8.0-multi-tenant-management.png
similarity index 100%
rename from blog/img/1.8.0-multi-tenant-management.png
rename to blog/img/1.8.0/1.8.0-multi-tenant-management.png
diff --git a/blog/img/1.8.0-realtime-sync.png 
b/blog/img/1.8.0/1.8.0-realtime-sync.png
similarity index 100%
rename from blog/img/1.8.0-realtime-sync.png
rename to blog/img/1.8.0/1.8.0-realtime-sync.png
diff --git a/blog/img/1.8.0-trans-delay.png 
b/blog/img/1.8.0/1.8.0-trans-delay.png
similarity index 100%
rename from blog/img/1.8.0-trans-delay.png
rename to blog/img/1.8.0/1.8.0-trans-delay.png
diff --git a/blog/img/1.9.0-dataproxycplussdk.png 
b/blog/img/1.9.0/1.9.0-dataproxycplussdk.png
similarity index 100%
rename from blog/img/1.9.0-dataproxycplussdk.png
rename to blog/img/1.9.0/1.9.0-dataproxycplussdk.png
diff --git a/blog/img/1.9.0-dataproxymetadataupdate.png 
b/blog/img/1.9.0/1.9.0-dataproxymetadataupdate.png
similarity index 100%
rename from blog/img/1.9.0-dataproxymetadataupdate.png
rename to blog/img/1.9.0/1.9.0-dataproxymetadataupdate.png
diff --git a/blog/img/1.9.0-icebergswitch.png 
b/blog/img/1.9.0/1.9.0-icebergswitch.png
similarity index 100%
rename from blog/img/1.9.0-icebergswitch.png
rename to blog/img/1.9.0/1.9.0-icebergswitch.png
diff --git a/blog/img/1.9.0-managertenant.png 
b/blog/img/1.9.0/1.9.0-managertenant.png
similarity index 100%
rename from blog/img/1.9.0-managertenant.png
rename to blog/img/1.9.0/1.9.0-managertenant.png
diff --git a/blog/img/1.9.0-observability.png 
b/blog/img/1.9.0/1.9.0-observability.png
similarity index 100%
rename from blog/img/1.9.0-observability.png
rename to blog/img/1.9.0/1.9.0-observability.png
diff --git 
a/i18n/zh-CN/docusaurus-plugin-content-blog/2023-01-13-release-1.5.0.md 
b/i18n/zh-CN/docusaurus-plugin-content-blog/2023-01-13-release-1.5.0.md
index 3463388a008..6a5f58730e6 100644
--- a/i18n/zh-CN/docusaurus-plugin-content-blog/2023-01-13-release-1.5.0.md
+++ b/i18n/zh-CN/docusaurus-plugin-content-blog/2023-01-13-release-1.5.0.md
@@ -59,23 +59,23 @@ Apache InLong 最近发布了 1.5.0 版本,该版本关闭了约 296+ 个issue
 ## 1.5.0 版本特性介绍
 ### 新增 StarRocks、Hudi、Doris、Elasticsearch 等流向
 在 1.5.0 版本中,InLong 持续扩展新的数据节点 Connector,针对社区用户使用场景,新增 
StarRocks、Hudi、Doris、Elasticsearch 等流向的支持,拓展了数据入仓入湖场景。这些新增数据节点主要由 
@liaorui、@featzhang、@kuansix、@LvJiancheng 等开发者贡献。
-![1.5.0-create-hudi-source](./img/1.5.0-create-hudi-source.png)
+![1.5.0-create-hudi-source](./img/1.5.0/1.5.0-create-hudi-source.png)
 
 ### 优化 Dashboard 体验
 相比于传统的数据集成项目,InLong 新增了 Group、Stream 、数据节点等概念,初次使用 Dashboard 
创建的社区用户会对整个流程有些困惑。为了降低 Dashboard 用户的使用成本,InLong 针对 Dashboard 前端页面进行了大量的优化,优化点超过 
50 个,在概念、流程、展示上面进行了调整。下图为 1.5.0 中创建 Stream 的流程,相比较之前版本更加简化。Dashboard 的优化特别感谢 
@leezng、@bluewang、@kinfuy,也感谢 @Charles Zhang 提供的修改建议。
-![1.5.0-create-dashboard-stream](./img/1.5.0-create-dashboard-stream.png)
+![1.5.0-create-dashboard-stream](./img/1.5.0/1.5.0-create-dashboard-stream.png)
 
 ### 重构 MQ 管理模型
 为了快速支持新的消息队列服务(比如 RocketMQ)实现插件化,同时统一现有支持 Pulsar、Kafka、TubeMQ,在 1.5.0 
版本中,InLong DataProxy 重构了 MQ 管理模型,所有 MQ 类型都基于 `MessageQueueHandler` 实现对应的 
`Handler`。该特性的实现感谢 @woofyzhao、@luchunliang,如果需要开发新的 MQ 类型,可以参考 DataProxy 插件指引。
-![1.5.0-mq-handler](./img/1.5.0-mq-handler.png)
+![1.5.0-mq-handler](./img/1.5.0/1.5.0-mq-handler.png)
 
 ### 新增脏数据处理
 如果入湖入仓时存在不符合数据规范的脏数据(例如字段范围超限、数据字段缺失等 ),可能会导致用户任务写入失败并不断重启。在 1.5.0 版本中,InLong 
支持将不能恢复的脏数据到外部存储,包括 S3 和本地日志,同时用户可以自定义脏数据的输出端,可以配置 “是否开启脏数据归档” 与 
“是否忽略写入错误”,如下为脏数据归档设计 UML 图。该特性的实现感谢 @yunqingmoswu、@Yizhou-Yang 的支持。
-![1.5.0-dirty-data](./img/1.5.0-dirty-data.png)
+![1.5.0-dirty-data](./img/1.5.0/1.5.0-dirty-data.png)
 
 ### 全链路 Apache Kafka 支持
 在 1.5.0 版本中,完成了 DataProxy、Manager、Sort、Dashboard 模块全链路对 Apache Kafka 的支持,对于 
kafka 的支持经历了两个版本,在 1.5.0 实现了生产可用,用户创建数据流时选择 Kafka 即可。该特性的实现感谢 
@woofyzhao、@fuweng11、@haifxu 的支持。
-![1.5.0-support-kafka](./img/1.5.0-support-kafka.png)
+![1.5.0-support-kafka](./img/1.5.0/1.5.0-support-kafka.png)
 
 更多 1.5.0 版本的细节请参考 版本说明 ,其中详细列出了此版本的特性、提升和 Bug 修复。
 
diff --git 
a/i18n/zh-CN/docusaurus-plugin-content-blog/2023-03-23-release-1.6.0.md 
b/i18n/zh-CN/docusaurus-plugin-content-blog/2023-03-23-release-1.6.0.md
index a2eff26a58c..4187ef26b7f 100644
--- a/i18n/zh-CN/docusaurus-plugin-content-blog/2023-03-23-release-1.6.0.md
+++ b/i18n/zh-CN/docusaurus-plugin-content-blog/2023-03-23-release-1.6.0.md
@@ -55,15 +55,15 @@ Apache InLong(应龙) 最近发布了 1.6.0 版本,该版本关闭了约 2
 ## 1.6.0 版本特性介绍
 ### 新增 Kudu 数据流向
 Apache Kudu 是由 Cloudera 开源的存储引擎,可以同时提供低延迟的随机读写和高效的数据分析能力。在 1.6.0 版本中, InLong 
支持了 Kudu 数据流向,包括新增 Kudu Connector、元数据管理、指标、Dashboard 页面等。Kudu 数据流向由 @featzhang 
独立参与和完整贡献,感兴趣的用户可以进行安装体验。
-![1.6.0-create-kudu](./img/1.6.0-create-kudu.png)
+![1.6.0-create-kudu](./img/1.6.0/1.6.0-create-kudu.png)
 
 ### 完善 Redis 数据流向
 Redis 是很流行的开源内存数据库,拥有高性能和丰富的数据结构,在 1.6.0 版本, InLong 完善了 Redis 数据流向,包括在 Redis 
Connector 中增加 SinkFunction、元数据管理、指标和 Dashboard 页面等,完整支持了 Redis 的 
Plain、Hash、Bitmap 等数据格式, 并通过 SchemaMapping 机制实现 Redis Schema 转换。Redis 数据流向通过 
Schema 映射模式,可以将 Schema 转换为不同的 [Redis 
Data-Type](https://redis.io/docs/data-types/tutorial/)  。 Redis 数据流向主要由 
@featzhang 独立参与和完整贡献,详见 
[INLONG-7060](https://github.com/apache/inlong/issues/7060) 。
-![1.6.0-update-redis](./img/1.6.0-update-redis.png)
+![1.6.0-update-redis](./img/1.6.0/1.6.0-update-redis.png)
 
 ### 增加 MQ 缓存集群 Selector 策略
 多 MQ 集群场景下,如果 DataProxy 同时连接所有 MQ 集群,会导致 MQ 集群的 Producer 数暴增,同时导致 Zookeeper 
元数据超量,进而引发 OutOfMemory。在 1.6.0 版本中,InLong 增加了 MQ 缓存集群级别 Selector 策略(主要针对 Apache 
Pulsar),DataProxy 节点可以只选择同一个 Tag 下的部分 MQ 集群进行生产,从而降低 Producer 连接数和 Zookeeper 
元数据规模。该特性主要是由 @luchunliang 开发完成,详见 
[INLONG-7231](https://github.com/apache/inlong/pull/7236) 。
-![1.6.0-mq-selector](./img/1.6.0-mq-selector.png)
+![1.6.0-mq-selector](./img/1.6.0/1.6.0-mq-selector.png)
 
 ### 优化 Audit ID 分配规则
 在 InLong Audit 原有的设计的中,每个模块的接收与发送分别为一个独立的审计项 
ID,用于记录模块级别的数据发送和数据接收量。该方案存在一个缺陷,如果 InLong Sort 同时向多个目标端分拣数据(比如同时写入 Hive 和 
Clickhouse),那一个审计项 ID 对于 Sort  来说无法区分不同的数据流向。在 1.6.0 版本中,优化了 Audit ID 
分配规则,不同的数据流向在 Sort 分拣中拥有不同的审计项 ID,实现了对同个数据流多个分拣目标的数据审计。该特性同时涉及 Manager 和 Sort 
的改动,由 @fuweng11 和 @EMsnap 一起开发实现,详见 
[INLONG-7389](https://github.com/apache/inlong/pull/7390), 
[INLONG-7232](https://github.com/apache/inlong/pull/7233) 和 
[INLONG-7503](https://github.com/apache/inlong/pull/7552) 。
@@ -88,15 +88,15 @@ Redis 是很流行的开源内存数据库,拥有高性能和丰富的数据
 
 ### 新增数据节点链接性测试
 在之前版本中,InLong 新增数据节点以及注册 MQ 集群,并没有判断集群可用性。在新版本中,InLong 为主要的数据节点及 InLong 
系统组件注册,新增了链接性测试,用于提前检查待注册集群,提升数据流创建易用性。该特性主要是由 @leosanqing、@bluewang 和 
@fuweng11 参与开发。
-![1.6.0-connection-test](./img/1.6.0-connection-test.png)
+![1.6.0-connection-test](./img/1.6.0/1.6.0-connection-test.png)
 
 ### 优化 Sort Audit 对账基准时间,对齐对账
 在 1.6.0 版本之前,Sort 的对账基准时间是处理数据时的机器时间,使用该时间会造成全链路数据对账不准确。在该版本中,Sort 对账埋点借鉴了 
Flink 中的 TimestampedCollector 设计,替换了原有 Pulsar Connector 中的 Simple 
Collector,对齐了对账指标。实现原理为在 Collector 中设置了 Timestamp 字段,当获取到由 Dataproxy 传输的 
InlongMsg 数据时,先对其进行解包并提取包内每条消息的数据时间,对 Collector 中的 Timestamp 进行重置,Collector 
在往下游传输消息时将重置后的数据时间作为 Audit 时间记录指标。优化后的 Sort Audit 对账指标能与 DataProxy 
等其它模块对齐,该特性主要由 @Emsnap 开发。
-![1.6.0-sort-audit-time](./img/1.6.0-sort-audit-time.png)
+![1.6.0-sort-audit-time](./img/1.6.0/1.6.0-sort-audit-time.png)
 
 ### Audit 支持使用 Kafka 缓存审计数据
 InLong Audit 是独立的子系统,对 InLong 系统的 Agent、DataProxy、Sort 
模块的入流量、出流量进行实时审计对账,目前对账的粒度有分钟、小时、天三种。在之前的版本中,InLong Audit 只支持使用 Pulsar 
缓存审计数据,这里会增加只熟悉 Kafka 的用户部署和使用成本,在整个  InLong Audit 设计上,MQ 
类型的选择应该和数据流保持一致,避免使用不同的 MQ 类型。在 1.6.0 版本中,为了实现 Audit 模块和数据流保持使用同类型 MQ 服务,Audit 
支持了使用 Kafka 缓存审计数据,实现了 MQ 服务选型的统一。该特性主要是由 @haifxu、@dockerzhang 完成。
-![1.6.0-audit-kafka](./img/1.6.0-audit-kafka.png)
+![1.6.0-audit-kafka](./img/1.6.0/1.6.0-audit-kafka.png)
 
 ## 后续规划
 在 1.6.0 中,Sort 模块还修复脏数据归档、指标、Connector 等多个 Bug,Dashboard 
持续优化显示、审批流程等体验问题,详情可以参考 1.6.0 发布 
[Changelog](https://github.com/apache/inlong/blob/master/CHANGES.md) 
。在后续版本中,Apache  InLong 会增加 Schema 动态感知、Schema 批量导入、Agent 
安装、扩展更多数据节点等,期待更多开发者参与贡献。
\ No newline at end of file
diff --git 
a/i18n/zh-CN/docusaurus-plugin-content-blog/2023-05-19-release-1.7.0.md 
b/i18n/zh-CN/docusaurus-plugin-content-blog/2023-05-19-release-1.7.0.md
index e7faaa78604..29358e699fd 100644
--- a/i18n/zh-CN/docusaurus-plugin-content-blog/2023-05-19-release-1.7.0.md
+++ b/i18n/zh-CN/docusaurus-plugin-content-blog/2023-05-19-release-1.7.0.md
@@ -58,26 +58,26 @@ Apache InLong(应龙) 最近发布了 1.7.0 版本,该版本关闭了约 1
 ### 支持直发数据到 Kafka
 在之前版本中,InLong 支持了 Agent 直发数据到 Pulsar 而不经过 
DataProxy,通过这样的设计,对于数据场景简单、尽可能保证数据完整性用户,可以减少对 DataProxy 的依赖。对于习惯使用 Kafka 的用户,在 
1.7.0 版本中支持了 Agent 直发数据到 Kafka 的特性,感谢 @wangpeix 的完整贡献,详情可见 
INLONG-7783。如果需要体验该特性,可以在数据流审批环节选择“发往 MQ,待 MQ 接收后再响应”。
 
-![1.7.0-kafka-stream](./img/1.7.0-kafka-stream.png)
+![1.7.0-kafka-stream](./img/1.7.0/1.7.0-kafka-stream.png)
 
 ### MySQL 整库迁移支持 schema 变更
 随着社区用户对 InLong 的深入使用,不能支持 schema 变更的弊端逐渐显现,源端变更 DDL 
后需要任务修改配置重启,大大增大了运维成本,在当前版本中,InLong 支持了 schema 的自动变更能力,上游数据源支持感知 
Create、Alter、Drop、Truncate、Rename 等 DDL 操作,并同步该 DDL 操作到下游,同时下游数据源支持响应上游 DDL 
变更,并同步处理该 DDL 变更,同时支持不同处理策略,详情参考 INLONG-7553。感谢 @Emsnap @yunqingmoswu 
@lordcheng10 对该功能的贡献,下图为核心流程:
 
-![1.7.0-mysql-schema](./img/1.7.0-mysql-schema.png)
+![1.7.0-mysql-schema](./img/1.7.0/1.7.0-mysql-schema.png)
 
 数据库中的 DDL 消息由 CDC 中的 DEBEZIUM 感知,此时得到的数据为单一的 DDL 语句,例如:“DROP TABLE A”,该语句为 
DEBEZIUM JSON 中的字段,DDL 语句后经由 JSQLPARSER 解析为 DDL MODEL,该 MODEL 中对常见的 DDL 
消息都进行了解析,处理为程序易处理的 JSON 格式,DDL MODEL 会作为 FLINK 中的数据下发到 SINK OPERATOR, 由 
OPERATOR 对 DDL MODEL 进行处理。
 
 ### MySQL 整库迁移支持 GH-OST 感知
 GH-OST(GitHub Online Schema Migration)是 GitHub 发布的一款用于 MySQL 
的无触发器在线模式迁移解决方案。它是可测试的,并提供暂停,动态控制/重新配置,审计和许多操作特权。它在整个迁移过程中,对主服务器产生的工作量很少,与已迁移表上的现有工作分离。通过支持感知
 GH-OST 的 DDL,MySQL Connector 可以在捕获数据变更的同时,正确处理由 GH-OST 引发的表结构变更。感谢 @e-mhui 
的完整贡献,该特性详情可见 INLONG-7554。下图为核心流程:
 
-![1.7.0-mysql-ghost](./img/1.7.0-mysql-ghost.png)
+![1.7.0-mysql-ghost](./img/1.7.0/1.7.0-mysql-ghost.png)
 
 首先,开启 MySQL CDC 的 DDL 自动响应后,对 GH-OST 产生的 ghc, gho, del 表也进行捕获;其次,在感知到 GH-OST 对 
gho 表的变更时,将 DDL 语句中的 gho 表替换成 源表,并存储到 state 中;最后,在 GH-OST 对源表执行完整的变更流程后,将之前存储到 
state 中的 DDL 语句发送到下游。
 
 ### 增加 CSV/SQL/JSON/Excel 4 种批量导入模式
 在创建数据流录入元数据字段时,我们需要按名称、类型、描述等信息依次输入,如果需要录入成百上千的字段信息,这种处理方式效率极低。在 1.7.0 
版本中,InLong 同时增加了 CSV/SQL/JSON/Excel 4 
种格式的批量导入模式,用户只需要参考每种格式的模板,填写自选信息,就可以实现一次性导入。该功能非常感谢 @featzhang、@fuweng11 
参与开发完成。4 种批量导入模式已经支持前后端,可下载最新版本直接使用。
 
-![1.7.0-batch-add](./img/1.7.0-batch-add.png)
+![1.7.0-batch-add](./img/1.7.0/1.7.0-batch-add.png)
 
 ### 简化命令行工具创建数据流配置
 旧版本使用命令行创建数据流时,需要准备的 JSON 
文件内容很复杂,并且文件结构不够清晰,用户通过命令行创建数据流的门槛非常高。另外,用户想复用文件创建新的数据流时,需要修改很多重复的字段,如 
inlongGroupID、inlongStreamID。在 1.7.0 版本中,InLong 优化了数据流配置 JSON 
结构以及字段配置,用户可根据数据流需求,简单添加 Source / Sink 内容即可,整个创建数据流过程相较之前简单了很多。详情可见 
INLONG-7778,非常感谢 @haifxu 的贡献。以下示例为新版本创建 File -> Pulsar -> Clickhouse 的模板:
@@ -134,7 +134,7 @@ GH-OST(GitHub Online Schema Migration)是 GitHub 发布的一款用于 MySQL
 ### 重构 Dashboard 整体布局
 在 1.7.0 版本中,社区重构了 Dashboard 的整体布局,包括将上下布局调整为左右布局(导航栏移动到左侧)、增加暗黑主题、主要菜单增加 
icon、调整数据源选择显示和流程等,这次调整使 Dashboard 的使用体验更好,特别感谢@leezng、@bluewang 的贡献,详情可见 
INLONG-7734。
 
-![1.7.0-dashboard-refactor](./img/1.7.0-dashboard-refactor.png)
+![1.7.0-dashboard-refactor](./img/1.7.0/1.7.0-dashboard-refactor.png)
 
 ## 后续规划
 在 1.7.0 版本中,社区还提升了 Agent 文件采集的性能和稳定性,同时 TubeMQ 完成 Golang SDK 生产一期,Sort 也能够使用 
Manager 分配的订阅组进行消费。在后续的版本中,InLong 会支持 Apache Flink 多版本,除了当前的 Flink 1.13,还会支持 
Flink 1.15;另外,也会增加租户管理,完成 InLong 项目、用户、资源的模型的统一,期待更多开发者参与贡献。
\ No newline at end of file
diff --git 
a/i18n/zh-CN/docusaurus-plugin-content-blog/2023-07-24-release-1.8.0.md 
b/i18n/zh-CN/docusaurus-plugin-content-blog/2023-07-24-release-1.8.0.md
index 52fdf5731b3..807f369cb25 100644
--- a/i18n/zh-CN/docusaurus-plugin-content-blog/2023-07-24-release-1.8.0.md
+++ b/i18n/zh-CN/docusaurus-plugin-content-blog/2023-07-24-release-1.8.0.md
@@ -63,12 +63,12 @@ Apache InLong 1.8.0 版本中,还完成了大量其它特性,主要包括:
 ## 1.8.0 版本特性介绍
 ### Agent 优化超长日志处理逻辑,提升文件采集效率和稳定性
 在实际使用中,由于用户使用不当或数据生产程序 bug 等问题,偶发出现单条数据长度达到 MB 甚至 GB 级别。 对于部署在低配环境的 Agent 
而言,这类数据极大影响了发送的性能。 低版本 Agent 根据换行符将这类数据直接读到内存中再丢弃,但受限于 Agent 部署环境硬件配置, 
单条超长数据极易导致 OOM 异常。 在 1.8.0 版本中, Agent 优化了超长日志的处理逻辑, 
通过分段采集、分段丢弃的方式保证数据加载不会超过内存限制。 感谢 @justinhuang 的贡献,详情可见 INLONG-8180。
-![1.8.0-agent-under-1.8.0.png](./img/1.8.0-agent-under-1.8.0.png)
-![1.8.0-agent-1.8.0.png](./img/1.8.0-agent-1.8.0.png)
+![1.8.0-agent-under-1.8.0.png](./img/1.8.0/1.8.0-agent-under-1.8.0.png)
+![1.8.0-agent-1.8.0.png](./img/1.8.0/1.8.0-agent-1.8.0.png)
 
 ### Agent 采用全局流控,解决文件数增长导致的 OOM 问题
 在之前版本中,每个文件分别由各自的线程负责采集和发送。虽然我们限制了每个文件的最大采集 
buffer,但是随着用户流量的增长,文件数的增加难以避免,进而导致同时采集文件数过多,打爆内存引发 OOM 异常。InLong 在 1.8.0 版本中支持 
Agent 配置全局流量控制的特性,利用该特性,Agent 可以有效避免因为文件数增长或者采用小配额服务器导致的频繁 OOM 的问题,感谢 
@justinhuang 的贡献,详情可见 INLONG-8251。如果需要使用该特性,可以在 agent.properties 中增加相应配置。
-![1.8.0-agent-flow-controll.png](./img/1.8.0-agent-flow-controll.png)
+![1.8.0-agent-flow-control.png](./img/1.8.0/1.8.0-agent-flow-controll.png)
 
 ### 支持 Flink 多版本
 随着社区用户的深入使用,InLong 面对的场景也更加多样化和复杂化。为了支持不同 Flink 环境的用户需求,InLong 在当前版本增加了支持 
Flink 多版本的特性,用户可以在 InLong-Manager 的 plugins/flink-sort-plugin.properties 
配置文件中选择启动的flink 版本。
@@ -83,12 +83,12 @@ flink.version=1.13
 
 ### 支持多租户管理
 为了解决多用户场景下对于权限和资源隔离性的要求,InLong 
在当前版本引入了多租户架构。多租户架构能够在同一组服务下,确保不同用户间数据和权限互不干扰。感谢 @vernedeng 和 @bluewang 
对该功能的贡献,特性详情可见 INLONG-7914。下图为核心流程:
-![1.8.0-multi-tenant-management.png](./img/1.8.0-multi-tenant-management.png)
+![1.8.0-multi-tenant-management.png](./img/1.8.0/1.8.0-multi-tenant-management.png)
 
 租户对于核心逻辑开发者而言是透明的。在请求的入口处,增加了租户鉴权,对于没有访问该租户权限的请求直接驳回;在访问 Database 
前,增加对应的租户过滤条件,确保数据的查询和修改范围被限制在该租户内。
 
 用户可以在 Dashboard 上完成租户的创建,租户角色分配等操作。
-![1.8.0-create-tenant.png](./img/1.8.0-create-tenant.png)
+![1.8.0-create-tenant.png](./img/1.8.0/1.8.0-create-tenant.png)
 
 ### 支持实时同步
 新版本中支持了数据的实时同步,实时同步与数据接入的主要区别是不需要中间 MQ 存储的支持,由 Sort 组件直接将源端数据入库,极大丰富了用户的使用场景。
@@ -96,15 +96,15 @@ flink.version=1.13
 如下图所示,Tab 页新增 “数据同步” 标签,用户配置完基本 Group 信息后只需要输入 “数据来源” 以及 “数据目标” 
信息即可,提交任务后便可实现数据的实时同步。
 
 感谢 @fuwen11 、@bluewang 、@Emsnap 、@haifxu 对此功能的贡献。
-![1.8.0-realtime-sync.png](./img/1.8.0-realtime-sync.png)
+![1.8.0-realtime-sync.png](./img/1.8.0/1.8.0-realtime-sync.png)
 
 ### 支持数据预览
 对于刚接入 InLong 的业务而言,数据预览能够帮助用户快速确认上报数据的准确性以及定位问题。在该版本中,InLong 
前端支持预览用户实时上报的数据。感谢 @fuwen11 和 @bluewang 的贡献,用户在成功创建数据流并上报数据后,可以在数据流下的操作栏选择数据预览。
-![1.8.0-data-preview.png](./img/1.8.0-data-preview.png)
+![1.8.0-data-preview.png](./img/1.8.0/1.8.0-data-preview.png)
 
 ### 支持查询链路传输时延
 传输时延对于某些实时消费场景至关重要。在该版本中,InLong 审计支持前端查看平均传输时延指标。感谢 @fuwen11 和 @bluewang 
的贡献,用户在成功创建数据流并上报数据后, 可以查询链路传输时延。
-![1.8.0-trans-delay.png](./img/1.8.0-trans-delay.png)
+![1.8.0-trans-delay.png](./img/1.8.0/1.8.0-trans-delay.png)
 
 ## 后续规划
 在 1.8.0 版本中,社区还重构了 DataProxy 代码,统一了配置拉取接口,支持完整 IP 和基于 CIDR 的 IP 
段配置黑白名单的特性,提升了模块性能和稳定性。 Sort 在 DDL 感知场景的稳定性有所提升, 同时支持 Hive 整库迁移, Iceberg 
自动列更新和列存储等特性。 在后续的版本中,InLong 将重构 DataProxy C++ SDK、丰富 Flink 1.15 
Connector、完善数据同步功能等,期待更多开发者参与贡献。
diff --git 
a/i18n/zh-CN/docusaurus-plugin-content-blog/2023-09-25-release-1.9.0.md 
b/i18n/zh-CN/docusaurus-plugin-content-blog/2023-09-25-release-1.9.0.md
index ac1bfbf2a4d..f3e865f52a6 100644
--- a/i18n/zh-CN/docusaurus-plugin-content-blog/2023-09-25-release-1.9.0.md
+++ b/i18n/zh-CN/docusaurus-plugin-content-blog/2023-09-25-release-1.9.0.md
@@ -95,7 +95,7 @@ Apache InLong 1.9.0 版本中,还完成了大量其它特性,主要包括:
 - Otel Collector 将数据收集、转换后,导出到 Jaeger 、Prometheus 、Elasticsearch ;
 - Grafana 配置三方数据源,统一展示、查询、监控、告警;
 
-![1.9.0-observability.png](./img/1.9.0-observability.png)
+![1.9.0-observability.png](./img/1.9.0/1.9.0-observability.png)
 
 感谢 @ZhaoNiuniu 的贡献,详情可见 INLONG-8611 和 INLONG-8799 。
 
@@ -109,7 +109,7 @@ Apache InLong 1.9.0 版本中,还完成了大量其它特性,主要包括:
 - 将 SDK 数据打包逻辑与业务线程进行解耦,一方面减少了对业务线程的影响,另一方面提高了打包的性能;
 - 从根源上解决了老版本 SDK 发送失败导致 coredump 的问题。
 
-![1.9.0-dataproxycplussdk.png](./img/1.9.0-dataproxycplussdk.png)
+![1.9.0-dataproxycplussdk.png](./img/1.9.0/1.9.0-dataproxycplussdk.png)
 
 感谢 @doleyzi 的完整贡献,详情可见 INLONG-8747 。
 
@@ -117,7 +117,7 @@ Apache InLong 1.9.0 版本中,还完成了大量其它特性,主要包括:
 
 DataProxy 从 Manager 获取元数据配置,有时会因为网络、误操作等原因,导致 DataProxy 从 Manager 
拿到错误的元数据配置,1.9.0 版本 DataProxy 增加了元数据配置更新的保护机制,提升 Apache InLong 在极端场景下的可靠性。感谢 
@gosonzhang 的贡献,详情可见 INLONG-8758 和 INLONG-8899 。元数据配置更新的保护机制逻辑如下:
 
-![1.9.0-dataproxymetadataupdate.png](./img/1.9.0-dataproxymetadataupdate.png)
+![1.9.0-dataproxymetadataupdate.png](./img/1.9.0/1.9.0-dataproxymetadataupdate.png)
 
 ### TubeMQ 增加命令行工具
 
@@ -135,13 +135,13 @@ $ bin/tubectl cgroup list
 
 目前实时同步 MySQL-> Iceberg 链路全量阶段默认为 upsert 模式,而 upsert 在 Iceberg 中的实现为先 delete 后 
add, delete 操作表现为新增 delete 文件,全量阶段会有大量的 delete 文件产生,严重影响了查询的效率。本次优化使得任务能在全量阶段使用 
Append 写入,在增量阶段能够自动转为 Upsert 写入。 实现方式源端在数据中携带元数据字段来决定 Iceberg writer 
中使用何种方式写入,切换写入方式时会进行数据的刷新,实际写入时去除掉了元数据字段。感谢 
[@lordcheng10](https://github.com/lordcheng10) 和 @Emsnap 的贡献。
 
-![1.9.0-icebergswitch.png](./img/1.9.0-icebergswitch.png)
+![1.9.0-icebergswitch.png](./img/1.9.0/1.9.0-icebergswitch.png)
 
 ### Manager 支持资源在租户间迁移
 
 InLong 支持多租户后,从旧版本升级上来的 InLong Group 都将被定义在 public 租户下, 用户新建的 InLong Group 
则定义在其名下的租户内。这就导致用户需要频繁在多个租户之间切换来使用资源。 本次优化支持 InLong Group 
在不同租户之间进行迁移,同时校验并自动创建对应的集群标签, 数据节点等资源。 感谢 @vernedeng 的贡献
 
-![1.9.0-managertenant.png](./img/1.9.0-managertenant.png)
+![1.9.0-managertenant.png](./img/1.9.0/1.9.0-managertenant.png)
 
 ## 后续规划
 
diff --git 
a/i18n/zh-CN/docusaurus-plugin-content-blog/2023-12-13-release-1.10.0.md 
b/i18n/zh-CN/docusaurus-plugin-content-blog/2023-12-13-release-1.10.0.md
index 0218db39ae3..c4b260f25c0 100644
--- a/i18n/zh-CN/docusaurus-plugin-content-blog/2023-12-13-release-1.10.0.md
+++ b/i18n/zh-CN/docusaurus-plugin-content-blog/2023-12-13-release-1.10.0.md
@@ -66,31 +66,31 @@ Apache InLong(应龙)最近发布了 1.10.0 版本,该版本关闭了约 2
 
 ### Agent 支持周期采集
 InLong 1.10.0 
版本新增周期文件采集任务的能力,周期策略包括天、小时、实时,用户可以在新建文件数据源时指定该策略。同时,用户也可以配置时间偏移量来延迟或提前采集。感谢 
@Justinhuang,@Bluewang,@fuwen11 的贡献,详情可见 INLONG-9094, INLONG-9344, INLONG-9356。
-![1.10.0-periodic-collection.png](img%2F1.10.0-periodic-collection.png)
+![1.10.0-periodic-collection.png](img/1.10.0/1.10.0-periodic-collection.png)
 
 ### 支持按 IP 维度查看 Agent 审计
 为了更好地监控 InLong Agent 的状态,方便在现网运行中快速发现问题,在 1.10.0 版本中,用户可以在系统运维->审计模块里根据 IP 
维度查看 Agent 审计不同指标。感谢 @fuwen11,@Bluewang 和 @Justinhuang 的贡献,详情可见 
INLONG-9443,INLONG-9446 和 INLONG-9458
-![1.10.0-agent-audit.png](img%2F1.10.0-agent-audit.png)
+![1.10.0-agent-audit.png](img/1.10.0/1.10.0-agent-audit.png)
 
 ### Manager 新增 Group 操作日志
 在 1.10.0 版本中,InLong 支持查看操作日志, 包括 Group/Stream 的创建和变更,Sink/Source 
的新增和下线等操作。操作日志可以快速帮着用户追踪历史行为,用户可以快速查看数据流关键操作,便于现网维护 
。用户可以在数据接入->Group详情->操作日志里查看 Group 下所有的操作日志:
-![1.10.0-group-operation-log.png](img%2F1.10.0-group-operation-log.png)
+![1.10.0-group-operation-log.png](img/1.10.0/1.10.0-group-operation-log.png)
 
 ### 新增 Group 集群切换的能力
 为了支持资源整合以及成本划分的能力,InLong 在 1.10.0 版本引入了 Group 
集群切换的特性。直接进行切换必然导致模块间元数据不同步和数据丢失等问题。为了实现业务无感的集群切换能力,Group 集群切被分为三个状态和两个步骤。感谢 
@Vernedeng 的贡献,详情可见 INLONG-9314。
-![1.10.0-group-switching-1.png](img%2F1.10.0-group-switching-1.png)
+![1.10.0-group-switching-1.png](img/1.10.0/1.10.0-group-switching-1.png)
 切换集群前,数据在 Cluster 1 上。
-![1.10.0-group-switching-2.png](img%2F1.10.0-group-switching-2.png)
+![1.10.0-group-switching-2.png](img/1.10.0/1.10.0-group-switching-2.png)
 开始切换集群后,复制原路由配置,新数据写入 Cluster 2,同时 Cluster 1 上的未发送完的数据继续发送。
-![1.10.0-group-switching-3.png](img%2F1.10.0-group-switching-3.png)
+![1.10.0-group-switching-3.png](img/1.10.0/1.10.0-group-switching-3.png)
 
 ### C++ SDK 支持多维度隔离
 在老版本 C++ SDK 中,所有 Group 通过竞争的方式来争夺 SDK 的内部资源。如果某个 Group 流量特别大,那么势必对其他 Group 
造成挤压,导致小流量 Group 无法获得资源。 在 1.10.0 版本中,DataProxy C++ SDK 支持 Custer 以及 Group 
级别的资源隔离,用户可以通过配置 enable_isolation 来开启或关闭。感谢 @doleyzi 的贡献,详情可见 INLONG-9213。
-![1.10.0-sdk-isolation.png](img%2F1.10.0-sdk-isolation.png)
+![1.10.0-sdk-isolation.png](img/1.10.0/1.10.0-sdk-isolation.png)
 
 ### 实时同步支持配置 Transform
 在 1.10.0 版本中,实时同步任务支持配置 Transform。用户可以在新建实时同步任务时点击设置 Transform 按钮进行配置。目前 
Transform 支持两类动作:保留或去除匹配数据、支持复杂过滤规则,在后续版本中,Transform 的能力会不断完善。感谢 @Bluewang 、 
@fuwen11 以及 @EMSnap 的贡献, 详情可看 INLONG-8992。
-![1.10.0-transform.png](img%2F1.10.0-transform.png)
+![1.10.0-transform.png](img/1.10.0/1.10.0-transform.png)
 
 ## 未来规划
 在 1.10.0 版本中,社区重构了 InLong Agent,丰富 Flink 1.15 Connector 
,完成支持查看操作日志等功能。在后续的版本中,InLong 将继续丰富 Flink 1.15 Connector 、丰富 Transform 能力、统一 
DataProxy 数据协议、支持入 Apache Paimon、Dashboard 体验优化等,期待更多开发者参与贡献。
diff --git 
a/i18n/zh-CN/docusaurus-plugin-content-blog/2024-04-21-release-1.12.0.md 
b/i18n/zh-CN/docusaurus-plugin-content-blog/2024-04-21-release-1.12.0.md
index 54a6cbdef6d..b37458536b4 100644
--- a/i18n/zh-CN/docusaurus-plugin-content-blog/2024-04-21-release-1.12.0.md
+++ b/i18n/zh-CN/docusaurus-plugin-content-blog/2024-04-21-release-1.12.0.md
@@ -64,7 +64,7 @@ Apache InLong(应龙)最近发布了 1.12.0 版本,该版本关闭了 140
 
 ### Manager 支持对 Agent 安装管理
 通过此特性,运维人员可以通过 Dashboard 管理 Agent 的发布包,包括 Agent 安装、升级、心跳管理等。用户在系统运维 ->> 安装包 
->> Agent 页面创建/管理安装包。感谢 @haifxu、@fuweng11 两位同学在 Dashboard 及 Manager 
部分对此功能的贡献。具体可参考:INLONG-9932。
-![1.12.0-agent-package.png](img%2F1.12.0-agent-package.png)
+![1.12.0-agent-package.png](img/1.12.0/1.12.0-agent-package.png)
 
 ### Agent 支持自升级
 Agent 可以通过提前部署的 Installer 完成自升级操作,Installer 会通过 IP 从 InLong manager 
获取升级的配置信息,根据配置判断是否升级主要流程:
@@ -72,7 +72,7 @@ Agent 可以通过提前部署的 Installer 完成自升级操作,Installer 
 - 删除流程:停止进程 -> 删除安装文件
 - 更新流程:下载安装包 -> 停止进程 -> 删除安装文件 -> 解压安装包 -> 启动进程
 感谢 @justinwwhuang  对此功能的贡献,具体可参考 INLONG-9801 。
-![1.12.0-agent-upgrade.png](img%2F1.12.0-agent-upgrade.png)
+![1.12.0-agent-upgrade.png](img/1.12.0/1.12.0-agent-upgrade.png)
 
 ### Agent 支持 Kafka 采集
 在 1.12.0 版本中,Agent 支持了从 Kafka 采集数据,在数据源创建时可以直接选择 Kafka,填写相关数据源信息即可开始使用,参数包括:
@@ -84,7 +84,7 @@ Agent 可以通过提前部署的 Installer 完成自升级操作,Installer 
 - 自动偏移重置:设置偏移策略
 - 分区位点:可精确指定具体分区位点
 感谢 @haifxu 对此功能的贡献,具体请参考 INLONG-9741 。
-![1.12.0-agent-kafka.png](img%2F1.12.0-agent-kafka.png)
+![1.12.0-agent-kafka.png](img/1.12.0/1.12.0-agent-kafka.png)
 
 ### Agent 支持 Pulsar 采集
 在 1.12.0 版本中,Agent 支持了从 Pulsar 采集数据,在数据源创建时可以直接选择 Pulsar,填写相关数据源信息即可开始使用,参数包括:
@@ -97,7 +97,7 @@ Agent 可以通过提前部署的 Installer 完成自升级操作,Installer 
 - Admin url:Pulsar admin url
 - Service url:Pulsar service url
 感谢 @justinwwhuang 同学对此功能的贡献,具体可参考 INLONG-9804
-![1.12.0-agent-pulsar.png](img%2F1.12.0-agent-pulsar.png)
+![1.12.0-agent-pulsar.png](img/1.12.0/1.12.0-agent-pulsar.png)
 
 ### Agent 支持 MongoDB 采集
 在 1.12.0 版本中,Agent 支持了从 MongoDB 采集数据,在数据源创建时可以直接选择 
MongoDB,填写相关数据源信息即可开始使用,参数包括:
@@ -111,23 +111,23 @@ Agent 可以通过提前部署的 Installer 完成自升级操作,Installer 
 - 集合名称:MongoDB 集合名称
 - 读取模式:可选“全量 + 增量” 或 “增量”
 感谢 @justinwwhuang 同学对此功能的贡献,具体可参考 INLONG-10006。
-![1.12.0-agent-mongodb.png](img%2F1.12.0-agent-mongodb.png)
+![1.12.0-agent-mongodb.png](img/1.12.0/1.12.0-agent-mongodb.png)
 
 ### Audit 支持多场景对账
 在 1.12.0 版本中,InLong 丰富了 Audit 审计对账的场景,包括支持 Agent 数据补录场景、Sort on Flink 
Checkpoint 场景等,特别感谢 @doleyzi 同学对此功能的贡献,具体可参考 
INLONG-9904、INLONG-9926、INLONG-9928、INLONG-9957 等。
 - 新增 OpenAPI 能力
 在 1.12.0 版本,Audit 新增了 OpenAPI 的能力,各个 OpenAPI 可以通过 HA 进行选主,Leader 
节点负责对审计数据源进行实时、回溯聚合,并且将聚合结果保存在 DB 中,Slave 节点负责将 DB 的数据 cache 到内存,对外提供服务( Leader 
节点同样也提供该服务)
-![1.12.0-audit-process.png](img%2F1.12.0-audit-process.png)
+![1.12.0-audit-process.png](img/1.12.0/1.12.0-audit-process.png)
 - 新增 Agent 数据补录的能力
 在 1.12.0 版本,审计支持了 Agent 数据补录的场景,通过新增 audit-version,区分每次补录的审计对账
-![1.12.0-audit-recovery.png](img%2F1.12.0-audit-recovery.png)
+![1.12.0-audit-recovery.png](img/1.12.0/1.12.0-audit-recovery.png)
 - 支持 Sort Flink Checkpoint 能力
 在 1.12.0 版本,审计支持了 Sort Flink 的 checkpoint 的场景,在 Flink 作业重启或者 failover 
时,能够保证审计数据不丢不重,从而保证全流程的审计对账
-![1.12.0-audit-checkpoint.png](img%2F1.12.0-audit-checkpoint.png)
+![1.12.0-audit-checkpoint.png](img/1.12.0/1.12.0-audit-checkpoint.png)
 
 ### Sort 新增 Redis Connector
 在 1.12.0 版本,增加了基于 Flink 1.15 支持的 Redis connector 实现,支持对 Redis 集群和单机的 
String、Hash、ZSet、Bitmap 四种常用数据类型读取和写入,在 Redis connector 内部实现了 Schema 
转换,可以将用户指定的 Schema 转换为不同的 Redis Data Type。具体 Schema 转换逻辑如下图所示,在下图的 Bitmap 
转换逻辑中,field1 作为 Bitmap 的 key, filed2、field4 作为 Bitmap 中的位置(index), 
filed3、field5 为设置的值(0 或 1)。具体可参考 Redis 原生命令 SETBIT key index value。感谢 
@XiaoYou201 同学对此功能的贡献,具体可参考 INLONG-9835、INLONG-8948 。
-![1.12.0-redis-connector.png](img%2F1.12.0-redis-connector.png)
+![1.12.0-redis-connector.png](img/1.12.0/1.12.0-redis-connector.png)
 
 ## 未来规划
 在 1.12.0 版本中,社区重构了 InLong Agent,InLong Audit,丰富了 Flink 1.15 Connector 
等功能。在后续的版本中,InLong 将继续丰富 Flink 1.15 Connector 、丰富 Transform 能力、支持离线集成、统一 
DataProxy 数据协议、Dashboard 体验优化等,期待更多开发者参与贡献。
diff --git 
a/i18n/zh-CN/docusaurus-plugin-content-blog/2024-07-18-release-1.13.0.md 
b/i18n/zh-CN/docusaurus-plugin-content-blog/2024-07-18-release-1.13.0.md
index b5d5e2ed3dc..d6d1e723121 100644
--- a/i18n/zh-CN/docusaurus-plugin-content-blog/2024-07-18-release-1.13.0.md
+++ b/i18n/zh-CN/docusaurus-plugin-content-blog/2024-07-18-release-1.13.0.md
@@ -72,25 +72,25 @@ Apache InLong(应龙)最近发布了 1.13.0 版本,该版本关闭了 275
 ### Manager 支持 SSH 安装 Agent
 通过此特性,运维人员可以通过 Dashboard 进行 Agent 的安装操作,目前支持通过 SSH 和手动安装的方式。用户可以在集群管理页面新建 
Agent 集群。
 
-![1.13.0-agent-cluster.png](img%2F1.13.0-agent-cluster.png)
+![1.13.0-agent-cluster.png](img/1.13.0/1.13.0-agent-cluster.png)
 
 之后,进入节点,选择新建节点并配置好 SSH 用户名和密码后实现 SSH 安装 Agent 能力。
 感谢 @haifxu、@fuweng11 两位同学在 Dashboard 及 Manager 部分对此功能的贡献。具体可参考:INLONG-10409。
 
-![1.13.0-agent-install.png](img%2F1.13.0-agent-install.png)
+![1.13.0-agent-install.png](img/1.13.0/1.13.0-agent-install.png)
 
 ### Manager 支持字段模板管理能力
 通过此特性,用户可以事先配置好字段模板,在新建 Stream 时,可以选择已配置好的字段模板,从而达到多个 Stream 复用配置的目的。
 感谢 @kamianlaida、@fuweng11 两位同学在 Dashboard 及 Manager 
部分对此功能的贡献。具体可参考:INLONG-10330。
 
-![1.13.0-create-template.png](img%2F1.13.0-create-template.png)
+![1.13.0-create-template.png](img/1.13.0/1.13.0-create-template.png)
 
 ### 支持配置离线同步任务底层框架搭建
 在 1.13.0 版本中,InLong 支持了离线同步任务的配置,与实时同步相比,离线数据同步更注重同步吞吐量和效率。
 该实现统一基于 Flink 计算引擎。实时同步任务以 Flink 流任务的方式运行,而离线同步则以 Flink 
批处理任务的方式进行。这种方法可以尽可能地确保实时和离线同步任务代码的一致性,从而降低维护成本。
 InLong 的离线同步功能将与调度系统相结合,将数据源信息的完整或增量数据同步到数据目标,离线同步任务由 InLong Manager 
创建(包括调度信息),具体的数据同步逻辑通过 InLong Sort 模块实现。
 
-![1.13.0-offline-architecture.png](img%2F1.13.0-offline-architecture.png)
+![1.13.0-offline-architecture.png](img/1.13.0/1.13.0-offline-architecture.png)
 
 关键能力:
 - 作业类型:支持单次或者周期的离线数据同步
@@ -101,7 +101,7 @@ InLong 的离线同步功能将与调度系统相结合,将数据源信息的
 
 下图为核心流程:
 
-![1.13.0-dataflow-architecture.png](img%2F1.13.0-dataflow-architecture.png)
+![1.13.0-dataflow-architecture.png](img/1.13.0/1.13.0-dataflow-architecture.png)
 
 感谢 @aloyszhang 对此功能的贡献,具体请参考 INLONG-10054, INLONG-10053, INLONG-10055, 
INLONG-10069。
 
@@ -111,7 +111,7 @@ InLong 的离线同步功能将与调度系统相结合,将数据源信息的
 - 配置构建流程重复并且繁琐。从数据库中拉取 Sort 配置时是全量拉取并且在拉取完毕后进行实时构建。
 在新的版本中,修改数据目标后,Sort 配置将不会实时生效,而是需要在执行工作流后将 Sort 配置构建写入 sort_config 表中。下图为流程对比:
 
-![1.13.0-manager-standalone.png](img%2F1.13.0-manager-standalone.png)
+![1.13.0-manager-standalone.png](img/1.13.0/1.13.0-manager-standalone.png)
 
 感谢 @fuweng11, @vernedeng 对此功能的贡献,具体请参考 INLONG-9867, INLONG-10017。
 
@@ -126,17 +126,17 @@ InLong 的离线同步功能将与调度系统相结合,将数据源信息的
 
 感谢 @haifxu 对此功能的贡献,具体请参考 INLONG-10318。
 
-![1.13.0-agent-postgreSQL.png](img%2F1.13.0-agent-postgreSQL.png)
+![1.13.0-agent-postgreSQL.png](img/1.13.0/1.13.0-agent-postgreSQL.png)
 
 ### Sort Connectors 上报审计信息支持 exactly once
 Sort Connectors 上报审计信息支持 exactly once 语义, 在算子遇见异常,snapshot 失败时,各个 Connector 
保证上报审计信息 exactly once。
 如下图所示,当数据传输时,会把当前数据写入当前算子 AuditBuffer 以及对应的 checkpointId。当 checkpoint 完成时(在 
notifyCompleteCheckpoint 方法中)将写入 buffer 的数据进行上报。
 
-![1.13.0-sort-exactly.png](img%2F1.13.0-sort-exactly.png)
+![1.13.0-sort-exactly.png](img/1.13.0/1.13.0-sort-exactly.png)
 
 在 snapShot 执行时,会将写入 buffer 的 checkpointId 变更为 snapShot 中的 checkpointId,并在 
checkpoint 执行完成时,也就是 notifyCompleteCheckpoint 方法中将审计信息上传至 Audit Server 中。
 
-![1.13.0-sort-audit.png](img%2F1.13.0-sort-audit.png)
+![1.13.0-sort-audit.png](img/1.13.0/1.13.0-sort-audit.png)
 
 感谢 @XiaoYou201 对此功能的贡献,具体请参考 INLONG-10311, INLONG-10312, INLONG-10317, 
INLONG-10355, INLONG-10357, INLONG-10358, INLONG-10401。
 
diff --git 
a/i18n/zh-CN/docusaurus-plugin-content-blog/img/1.10.0-agent-audit.png 
b/i18n/zh-CN/docusaurus-plugin-content-blog/img/1.10.0/1.10.0-agent-audit.png
similarity index 100%
rename from i18n/zh-CN/docusaurus-plugin-content-blog/img/1.10.0-agent-audit.png
rename to 
i18n/zh-CN/docusaurus-plugin-content-blog/img/1.10.0/1.10.0-agent-audit.png
diff --git 
a/i18n/zh-CN/docusaurus-plugin-content-blog/img/1.10.0-group-operation-log.png 
b/i18n/zh-CN/docusaurus-plugin-content-blog/img/1.10.0/1.10.0-group-operation-log.png
similarity index 100%
rename from 
i18n/zh-CN/docusaurus-plugin-content-blog/img/1.10.0-group-operation-log.png
rename to 
i18n/zh-CN/docusaurus-plugin-content-blog/img/1.10.0/1.10.0-group-operation-log.png
diff --git 
a/i18n/zh-CN/docusaurus-plugin-content-blog/img/1.10.0-group-switching-1.png 
b/i18n/zh-CN/docusaurus-plugin-content-blog/img/1.10.0/1.10.0-group-switching-1.png
similarity index 100%
rename from 
i18n/zh-CN/docusaurus-plugin-content-blog/img/1.10.0-group-switching-1.png
rename to 
i18n/zh-CN/docusaurus-plugin-content-blog/img/1.10.0/1.10.0-group-switching-1.png
diff --git 
a/i18n/zh-CN/docusaurus-plugin-content-blog/img/1.10.0-group-switching-2.png 
b/i18n/zh-CN/docusaurus-plugin-content-blog/img/1.10.0/1.10.0-group-switching-2.png
similarity index 100%
rename from 
i18n/zh-CN/docusaurus-plugin-content-blog/img/1.10.0-group-switching-2.png
rename to 
i18n/zh-CN/docusaurus-plugin-content-blog/img/1.10.0/1.10.0-group-switching-2.png
diff --git 
a/i18n/zh-CN/docusaurus-plugin-content-blog/img/1.10.0-group-switching-3.png 
b/i18n/zh-CN/docusaurus-plugin-content-blog/img/1.10.0/1.10.0-group-switching-3.png
similarity index 100%
rename from 
i18n/zh-CN/docusaurus-plugin-content-blog/img/1.10.0-group-switching-3.png
rename to 
i18n/zh-CN/docusaurus-plugin-content-blog/img/1.10.0/1.10.0-group-switching-3.png
diff --git 
a/i18n/zh-CN/docusaurus-plugin-content-blog/img/1.10.0-periodic-collection.png 
b/i18n/zh-CN/docusaurus-plugin-content-blog/img/1.10.0/1.10.0-periodic-collection.png
similarity index 100%
rename from 
i18n/zh-CN/docusaurus-plugin-content-blog/img/1.10.0-periodic-collection.png
rename to 
i18n/zh-CN/docusaurus-plugin-content-blog/img/1.10.0/1.10.0-periodic-collection.png
diff --git 
a/i18n/zh-CN/docusaurus-plugin-content-blog/img/1.10.0-sdk-isolation.png 
b/i18n/zh-CN/docusaurus-plugin-content-blog/img/1.10.0/1.10.0-sdk-isolation.png
similarity index 100%
rename from 
i18n/zh-CN/docusaurus-plugin-content-blog/img/1.10.0-sdk-isolation.png
rename to 
i18n/zh-CN/docusaurus-plugin-content-blog/img/1.10.0/1.10.0-sdk-isolation.png
diff --git a/i18n/zh-CN/docusaurus-plugin-content-blog/img/1.10.0-transform.png 
b/i18n/zh-CN/docusaurus-plugin-content-blog/img/1.10.0/1.10.0-transform.png
similarity index 100%
rename from i18n/zh-CN/docusaurus-plugin-content-blog/img/1.10.0-transform.png
rename to 
i18n/zh-CN/docusaurus-plugin-content-blog/img/1.10.0/1.10.0-transform.png
diff --git 
a/i18n/zh-CN/docusaurus-plugin-content-blog/img/1.12.0-agent-kafka.png 
b/i18n/zh-CN/docusaurus-plugin-content-blog/img/1.12.0/1.12.0-agent-kafka.png
similarity index 100%
rename from i18n/zh-CN/docusaurus-plugin-content-blog/img/1.12.0-agent-kafka.png
rename to 
i18n/zh-CN/docusaurus-plugin-content-blog/img/1.12.0/1.12.0-agent-kafka.png
diff --git 
a/i18n/zh-CN/docusaurus-plugin-content-blog/img/1.12.0-agent-mongodb.png 
b/i18n/zh-CN/docusaurus-plugin-content-blog/img/1.12.0/1.12.0-agent-mongodb.png
similarity index 100%
rename from 
i18n/zh-CN/docusaurus-plugin-content-blog/img/1.12.0-agent-mongodb.png
rename to 
i18n/zh-CN/docusaurus-plugin-content-blog/img/1.12.0/1.12.0-agent-mongodb.png
diff --git 
a/i18n/zh-CN/docusaurus-plugin-content-blog/img/1.12.0-agent-package.png 
b/i18n/zh-CN/docusaurus-plugin-content-blog/img/1.12.0/1.12.0-agent-package.png
similarity index 100%
rename from 
i18n/zh-CN/docusaurus-plugin-content-blog/img/1.12.0-agent-package.png
rename to 
i18n/zh-CN/docusaurus-plugin-content-blog/img/1.12.0/1.12.0-agent-package.png
diff --git 
a/i18n/zh-CN/docusaurus-plugin-content-blog/img/1.12.0-agent-pulsar.png 
b/i18n/zh-CN/docusaurus-plugin-content-blog/img/1.12.0/1.12.0-agent-pulsar.png
similarity index 100%
rename from 
i18n/zh-CN/docusaurus-plugin-content-blog/img/1.12.0-agent-pulsar.png
rename to 
i18n/zh-CN/docusaurus-plugin-content-blog/img/1.12.0/1.12.0-agent-pulsar.png
diff --git 
a/i18n/zh-CN/docusaurus-plugin-content-blog/img/1.12.0-agent-upgrade.png 
b/i18n/zh-CN/docusaurus-plugin-content-blog/img/1.12.0/1.12.0-agent-upgrade.png
similarity index 100%
rename from 
i18n/zh-CN/docusaurus-plugin-content-blog/img/1.12.0-agent-upgrade.png
rename to 
i18n/zh-CN/docusaurus-plugin-content-blog/img/1.12.0/1.12.0-agent-upgrade.png
diff --git 
a/i18n/zh-CN/docusaurus-plugin-content-blog/img/1.12.0-audit-checkpoint.png 
b/i18n/zh-CN/docusaurus-plugin-content-blog/img/1.12.0/1.12.0-audit-checkpoint.png
similarity index 100%
rename from 
i18n/zh-CN/docusaurus-plugin-content-blog/img/1.12.0-audit-checkpoint.png
rename to 
i18n/zh-CN/docusaurus-plugin-content-blog/img/1.12.0/1.12.0-audit-checkpoint.png
diff --git 
a/i18n/zh-CN/docusaurus-plugin-content-blog/img/1.12.0-audit-process.png 
b/i18n/zh-CN/docusaurus-plugin-content-blog/img/1.12.0/1.12.0-audit-process.png
similarity index 100%
rename from 
i18n/zh-CN/docusaurus-plugin-content-blog/img/1.12.0-audit-process.png
rename to 
i18n/zh-CN/docusaurus-plugin-content-blog/img/1.12.0/1.12.0-audit-process.png
diff --git 
a/i18n/zh-CN/docusaurus-plugin-content-blog/img/1.12.0-audit-recovery.png 
b/i18n/zh-CN/docusaurus-plugin-content-blog/img/1.12.0/1.12.0-audit-recovery.png
similarity index 100%
rename from 
i18n/zh-CN/docusaurus-plugin-content-blog/img/1.12.0-audit-recovery.png
rename to 
i18n/zh-CN/docusaurus-plugin-content-blog/img/1.12.0/1.12.0-audit-recovery.png
diff --git 
a/i18n/zh-CN/docusaurus-plugin-content-blog/img/1.12.0-redis-connector.png 
b/i18n/zh-CN/docusaurus-plugin-content-blog/img/1.12.0/1.12.0-redis-connector.png
similarity index 100%
rename from 
i18n/zh-CN/docusaurus-plugin-content-blog/img/1.12.0-redis-connector.png
rename to 
i18n/zh-CN/docusaurus-plugin-content-blog/img/1.12.0/1.12.0-redis-connector.png
diff --git 
a/i18n/zh-CN/docusaurus-plugin-content-blog/img/1.13.0-agent-cluster.png 
b/i18n/zh-CN/docusaurus-plugin-content-blog/img/1.13.0/1.13.0-agent-cluster.png
similarity index 100%
rename from 
i18n/zh-CN/docusaurus-plugin-content-blog/img/1.13.0-agent-cluster.png
rename to 
i18n/zh-CN/docusaurus-plugin-content-blog/img/1.13.0/1.13.0-agent-cluster.png
diff --git 
a/i18n/zh-CN/docusaurus-plugin-content-blog/img/1.13.0-agent-install.png 
b/i18n/zh-CN/docusaurus-plugin-content-blog/img/1.13.0/1.13.0-agent-install.png
similarity index 100%
rename from 
i18n/zh-CN/docusaurus-plugin-content-blog/img/1.13.0-agent-install.png
rename to 
i18n/zh-CN/docusaurus-plugin-content-blog/img/1.13.0/1.13.0-agent-install.png
diff --git 
a/i18n/zh-CN/docusaurus-plugin-content-blog/img/1.13.0-agent-postgreSQL.png 
b/i18n/zh-CN/docusaurus-plugin-content-blog/img/1.13.0/1.13.0-agent-postgreSQL.png
similarity index 100%
rename from 
i18n/zh-CN/docusaurus-plugin-content-blog/img/1.13.0-agent-postgreSQL.png
rename to 
i18n/zh-CN/docusaurus-plugin-content-blog/img/1.13.0/1.13.0-agent-postgreSQL.png
diff --git 
a/i18n/zh-CN/docusaurus-plugin-content-blog/img/1.13.0-create-template.png 
b/i18n/zh-CN/docusaurus-plugin-content-blog/img/1.13.0/1.13.0-create-template.png
similarity index 100%
rename from 
i18n/zh-CN/docusaurus-plugin-content-blog/img/1.13.0-create-template.png
rename to 
i18n/zh-CN/docusaurus-plugin-content-blog/img/1.13.0/1.13.0-create-template.png
diff --git 
a/i18n/zh-CN/docusaurus-plugin-content-blog/img/1.13.0-dataflow-architecture.png
 
b/i18n/zh-CN/docusaurus-plugin-content-blog/img/1.13.0/1.13.0-dataflow-architecture.png
similarity index 100%
rename from 
i18n/zh-CN/docusaurus-plugin-content-blog/img/1.13.0-dataflow-architecture.png
rename to 
i18n/zh-CN/docusaurus-plugin-content-blog/img/1.13.0/1.13.0-dataflow-architecture.png
diff --git 
a/i18n/zh-CN/docusaurus-plugin-content-blog/img/1.13.0-import-template.png 
b/i18n/zh-CN/docusaurus-plugin-content-blog/img/1.13.0/1.13.0-import-template.png
similarity index 100%
rename from 
i18n/zh-CN/docusaurus-plugin-content-blog/img/1.13.0-import-template.png
rename to 
i18n/zh-CN/docusaurus-plugin-content-blog/img/1.13.0/1.13.0-import-template.png
diff --git 
a/i18n/zh-CN/docusaurus-plugin-content-blog/img/1.13.0-manager-offlinesync.png 
b/i18n/zh-CN/docusaurus-plugin-content-blog/img/1.13.0/1.13.0-manager-offlinesync.png
similarity index 100%
rename from 
i18n/zh-CN/docusaurus-plugin-content-blog/img/1.13.0-manager-offlinesync.png
rename to 
i18n/zh-CN/docusaurus-plugin-content-blog/img/1.13.0/1.13.0-manager-offlinesync.png
diff --git 
a/i18n/zh-CN/docusaurus-plugin-content-blog/img/1.13.0-manager-standalone.png 
b/i18n/zh-CN/docusaurus-plugin-content-blog/img/1.13.0/1.13.0-manager-standalone.png
similarity index 100%
rename from 
i18n/zh-CN/docusaurus-plugin-content-blog/img/1.13.0-manager-standalone.png
rename to 
i18n/zh-CN/docusaurus-plugin-content-blog/img/1.13.0/1.13.0-manager-standalone.png
diff --git 
a/i18n/zh-CN/docusaurus-plugin-content-blog/img/1.13.0-offline-architecture.png 
b/i18n/zh-CN/docusaurus-plugin-content-blog/img/1.13.0/1.13.0-offline-architecture.png
similarity index 100%
rename from 
i18n/zh-CN/docusaurus-plugin-content-blog/img/1.13.0-offline-architecture.png
rename to 
i18n/zh-CN/docusaurus-plugin-content-blog/img/1.13.0/1.13.0-offline-architecture.png
diff --git 
a/i18n/zh-CN/docusaurus-plugin-content-blog/img/1.13.0-select-template.png 
b/i18n/zh-CN/docusaurus-plugin-content-blog/img/1.13.0/1.13.0-select-template.png
similarity index 100%
rename from 
i18n/zh-CN/docusaurus-plugin-content-blog/img/1.13.0-select-template.png
rename to 
i18n/zh-CN/docusaurus-plugin-content-blog/img/1.13.0/1.13.0-select-template.png
diff --git 
a/i18n/zh-CN/docusaurus-plugin-content-blog/img/1.13.0-sort-audit.png 
b/i18n/zh-CN/docusaurus-plugin-content-blog/img/1.13.0/1.13.0-sort-audit.png
similarity index 100%
rename from i18n/zh-CN/docusaurus-plugin-content-blog/img/1.13.0-sort-audit.png
rename to 
i18n/zh-CN/docusaurus-plugin-content-blog/img/1.13.0/1.13.0-sort-audit.png
diff --git 
a/i18n/zh-CN/docusaurus-plugin-content-blog/img/1.13.0-sort-exactly.png 
b/i18n/zh-CN/docusaurus-plugin-content-blog/img/1.13.0/1.13.0-sort-exactly.png
similarity index 100%
rename from 
i18n/zh-CN/docusaurus-plugin-content-blog/img/1.13.0-sort-exactly.png
rename to 
i18n/zh-CN/docusaurus-plugin-content-blog/img/1.13.0/1.13.0-sort-exactly.png
diff --git 
a/i18n/zh-CN/docusaurus-plugin-content-blog/img/1.5.0-create-dashboard-stream.png
 
b/i18n/zh-CN/docusaurus-plugin-content-blog/img/1.5.0/1.5.0-create-dashboard-stream.png
similarity index 100%
rename from 
i18n/zh-CN/docusaurus-plugin-content-blog/img/1.5.0-create-dashboard-stream.png
rename to 
i18n/zh-CN/docusaurus-plugin-content-blog/img/1.5.0/1.5.0-create-dashboard-stream.png
diff --git 
a/i18n/zh-CN/docusaurus-plugin-content-blog/img/1.5.0-create-hudi-source.png 
b/i18n/zh-CN/docusaurus-plugin-content-blog/img/1.5.0/1.5.0-create-hudi-source.png
similarity index 100%
rename from 
i18n/zh-CN/docusaurus-plugin-content-blog/img/1.5.0-create-hudi-source.png
rename to 
i18n/zh-CN/docusaurus-plugin-content-blog/img/1.5.0/1.5.0-create-hudi-source.png
diff --git a/i18n/zh-CN/docusaurus-plugin-content-blog/img/1.5.0-dirty-data.png 
b/i18n/zh-CN/docusaurus-plugin-content-blog/img/1.5.0/1.5.0-dirty-data.png
similarity index 100%
rename from i18n/zh-CN/docusaurus-plugin-content-blog/img/1.5.0-dirty-data.png
rename to 
i18n/zh-CN/docusaurus-plugin-content-blog/img/1.5.0/1.5.0-dirty-data.png
diff --git a/i18n/zh-CN/docusaurus-plugin-content-blog/img/1.5.0-mq-handler.png 
b/i18n/zh-CN/docusaurus-plugin-content-blog/img/1.5.0/1.5.0-mq-handler.png
similarity index 100%
rename from i18n/zh-CN/docusaurus-plugin-content-blog/img/1.5.0-mq-handler.png
rename to 
i18n/zh-CN/docusaurus-plugin-content-blog/img/1.5.0/1.5.0-mq-handler.png
diff --git 
a/i18n/zh-CN/docusaurus-plugin-content-blog/img/1.5.0-support-kafka.png 
b/i18n/zh-CN/docusaurus-plugin-content-blog/img/1.5.0/1.5.0-support-kafka.png
similarity index 100%
rename from 
i18n/zh-CN/docusaurus-plugin-content-blog/img/1.5.0-support-kafka.png
rename to 
i18n/zh-CN/docusaurus-plugin-content-blog/img/1.5.0/1.5.0-support-kafka.png
diff --git 
a/i18n/zh-CN/docusaurus-plugin-content-blog/img/1.6.0-audit-kafka.png 
b/i18n/zh-CN/docusaurus-plugin-content-blog/img/1.6.0/1.6.0-audit-kafka.png
similarity index 100%
rename from i18n/zh-CN/docusaurus-plugin-content-blog/img/1.6.0-audit-kafka.png
rename to 
i18n/zh-CN/docusaurus-plugin-content-blog/img/1.6.0/1.6.0-audit-kafka.png
diff --git 
a/i18n/zh-CN/docusaurus-plugin-content-blog/img/1.6.0-connection-test.png 
b/i18n/zh-CN/docusaurus-plugin-content-blog/img/1.6.0/1.6.0-connection-test.png
similarity index 100%
rename from 
i18n/zh-CN/docusaurus-plugin-content-blog/img/1.6.0-connection-test.png
rename to 
i18n/zh-CN/docusaurus-plugin-content-blog/img/1.6.0/1.6.0-connection-test.png
diff --git 
a/i18n/zh-CN/docusaurus-plugin-content-blog/img/1.6.0-create-kudu.png 
b/i18n/zh-CN/docusaurus-plugin-content-blog/img/1.6.0/1.6.0-create-kudu.png
similarity index 100%
rename from i18n/zh-CN/docusaurus-plugin-content-blog/img/1.6.0-create-kudu.png
rename to 
i18n/zh-CN/docusaurus-plugin-content-blog/img/1.6.0/1.6.0-create-kudu.png
diff --git 
a/i18n/zh-CN/docusaurus-plugin-content-blog/img/1.6.0-mq-selector.png 
b/i18n/zh-CN/docusaurus-plugin-content-blog/img/1.6.0/1.6.0-mq-selector.png
similarity index 100%
rename from i18n/zh-CN/docusaurus-plugin-content-blog/img/1.6.0-mq-selector.png
rename to 
i18n/zh-CN/docusaurus-plugin-content-blog/img/1.6.0/1.6.0-mq-selector.png
diff --git 
a/i18n/zh-CN/docusaurus-plugin-content-blog/img/1.6.0-sort-audit-time.png 
b/i18n/zh-CN/docusaurus-plugin-content-blog/img/1.6.0/1.6.0-sort-audit-time.png
similarity index 100%
rename from 
i18n/zh-CN/docusaurus-plugin-content-blog/img/1.6.0-sort-audit-time.png
rename to 
i18n/zh-CN/docusaurus-plugin-content-blog/img/1.6.0/1.6.0-sort-audit-time.png
diff --git 
a/i18n/zh-CN/docusaurus-plugin-content-blog/img/1.6.0-update-redis.png 
b/i18n/zh-CN/docusaurus-plugin-content-blog/img/1.6.0/1.6.0-update-redis.png
similarity index 100%
rename from i18n/zh-CN/docusaurus-plugin-content-blog/img/1.6.0-update-redis.png
rename to 
i18n/zh-CN/docusaurus-plugin-content-blog/img/1.6.0/1.6.0-update-redis.png
diff --git a/i18n/zh-CN/docusaurus-plugin-content-blog/img/1.7.0-batch-add.png 
b/i18n/zh-CN/docusaurus-plugin-content-blog/img/1.7.0/1.7.0-batch-add.png
similarity index 100%
rename from i18n/zh-CN/docusaurus-plugin-content-blog/img/1.7.0-batch-add.png
rename to 
i18n/zh-CN/docusaurus-plugin-content-blog/img/1.7.0/1.7.0-batch-add.png
diff --git 
a/i18n/zh-CN/docusaurus-plugin-content-blog/img/1.7.0-dashboard-refactor.png 
b/i18n/zh-CN/docusaurus-plugin-content-blog/img/1.7.0/1.7.0-dashboard-refactor.png
similarity index 100%
rename from 
i18n/zh-CN/docusaurus-plugin-content-blog/img/1.7.0-dashboard-refactor.png
rename to 
i18n/zh-CN/docusaurus-plugin-content-blog/img/1.7.0/1.7.0-dashboard-refactor.png
diff --git 
a/i18n/zh-CN/docusaurus-plugin-content-blog/img/1.7.0-kafka-stream.png 
b/i18n/zh-CN/docusaurus-plugin-content-blog/img/1.7.0/1.7.0-kafka-stream.png
similarity index 100%
rename from i18n/zh-CN/docusaurus-plugin-content-blog/img/1.7.0-kafka-stream.png
rename to 
i18n/zh-CN/docusaurus-plugin-content-blog/img/1.7.0/1.7.0-kafka-stream.png
diff --git 
a/i18n/zh-CN/docusaurus-plugin-content-blog/img/1.7.0-mysql-ghost.png 
b/i18n/zh-CN/docusaurus-plugin-content-blog/img/1.7.0/1.7.0-mysql-ghost.png
similarity index 100%
rename from i18n/zh-CN/docusaurus-plugin-content-blog/img/1.7.0-mysql-ghost.png
rename to 
i18n/zh-CN/docusaurus-plugin-content-blog/img/1.7.0/1.7.0-mysql-ghost.png
diff --git 
a/i18n/zh-CN/docusaurus-plugin-content-blog/img/1.7.0-mysql-schema.png 
b/i18n/zh-CN/docusaurus-plugin-content-blog/img/1.7.0/1.7.0-mysql-schema.png
similarity index 100%
rename from i18n/zh-CN/docusaurus-plugin-content-blog/img/1.7.0-mysql-schema.png
rename to 
i18n/zh-CN/docusaurus-plugin-content-blog/img/1.7.0/1.7.0-mysql-schema.png
diff --git 
a/i18n/zh-CN/docusaurus-plugin-content-blog/img/1.8.0-agent-1.8.0.png 
b/i18n/zh-CN/docusaurus-plugin-content-blog/img/1.8.0/1.8.0-agent-1.8.0.png
similarity index 100%
rename from i18n/zh-CN/docusaurus-plugin-content-blog/img/1.8.0-agent-1.8.0.png
rename to 
i18n/zh-CN/docusaurus-plugin-content-blog/img/1.8.0/1.8.0-agent-1.8.0.png
diff --git 
a/i18n/zh-CN/docusaurus-plugin-content-blog/img/1.8.0-agent-flow-controll.png 
b/i18n/zh-CN/docusaurus-plugin-content-blog/img/1.8.0/1.8.0-agent-flow-controll.png
similarity index 100%
rename from 
i18n/zh-CN/docusaurus-plugin-content-blog/img/1.8.0-agent-flow-controll.png
rename to 
i18n/zh-CN/docusaurus-plugin-content-blog/img/1.8.0/1.8.0-agent-flow-controll.png
diff --git 
a/i18n/zh-CN/docusaurus-plugin-content-blog/img/1.8.0-agent-under-1.8.0.png 
b/i18n/zh-CN/docusaurus-plugin-content-blog/img/1.8.0/1.8.0-agent-under-1.8.0.png
similarity index 100%
rename from 
i18n/zh-CN/docusaurus-plugin-content-blog/img/1.8.0-agent-under-1.8.0.png
rename to 
i18n/zh-CN/docusaurus-plugin-content-blog/img/1.8.0/1.8.0-agent-under-1.8.0.png
diff --git 
a/i18n/zh-CN/docusaurus-plugin-content-blog/img/1.8.0-create-tenant.png 
b/i18n/zh-CN/docusaurus-plugin-content-blog/img/1.8.0/1.8.0-create-tenant.png
similarity index 100%
rename from 
i18n/zh-CN/docusaurus-plugin-content-blog/img/1.8.0-create-tenant.png
rename to 
i18n/zh-CN/docusaurus-plugin-content-blog/img/1.8.0/1.8.0-create-tenant.png
diff --git 
a/i18n/zh-CN/docusaurus-plugin-content-blog/img/1.8.0-data-preview.png 
b/i18n/zh-CN/docusaurus-plugin-content-blog/img/1.8.0/1.8.0-data-preview.png
similarity index 100%
rename from i18n/zh-CN/docusaurus-plugin-content-blog/img/1.8.0-data-preview.png
rename to 
i18n/zh-CN/docusaurus-plugin-content-blog/img/1.8.0/1.8.0-data-preview.png
diff --git 
a/i18n/zh-CN/docusaurus-plugin-content-blog/img/1.8.0-multi-tenant-management.png
 
b/i18n/zh-CN/docusaurus-plugin-content-blog/img/1.8.0/1.8.0-multi-tenant-management.png
similarity index 100%
rename from 
i18n/zh-CN/docusaurus-plugin-content-blog/img/1.8.0-multi-tenant-management.png
rename to 
i18n/zh-CN/docusaurus-plugin-content-blog/img/1.8.0/1.8.0-multi-tenant-management.png
diff --git 
a/i18n/zh-CN/docusaurus-plugin-content-blog/img/1.8.0-realtime-sync.png 
b/i18n/zh-CN/docusaurus-plugin-content-blog/img/1.8.0/1.8.0-realtime-sync.png
similarity index 100%
rename from 
i18n/zh-CN/docusaurus-plugin-content-blog/img/1.8.0-realtime-sync.png
rename to 
i18n/zh-CN/docusaurus-plugin-content-blog/img/1.8.0/1.8.0-realtime-sync.png
diff --git 
a/i18n/zh-CN/docusaurus-plugin-content-blog/img/1.8.0-trans-delay.png 
b/i18n/zh-CN/docusaurus-plugin-content-blog/img/1.8.0/1.8.0-trans-delay.png
similarity index 100%
rename from i18n/zh-CN/docusaurus-plugin-content-blog/img/1.8.0-trans-delay.png
rename to 
i18n/zh-CN/docusaurus-plugin-content-blog/img/1.8.0/1.8.0-trans-delay.png
diff --git 
a/i18n/zh-CN/docusaurus-plugin-content-blog/img/1.9.0-dataproxycplussdk.png 
b/i18n/zh-CN/docusaurus-plugin-content-blog/img/1.9.0/1.9.0-dataproxycplussdk.png
similarity index 100%
rename from 
i18n/zh-CN/docusaurus-plugin-content-blog/img/1.9.0-dataproxycplussdk.png
rename to 
i18n/zh-CN/docusaurus-plugin-content-blog/img/1.9.0/1.9.0-dataproxycplussdk.png
diff --git 
a/i18n/zh-CN/docusaurus-plugin-content-blog/img/1.9.0-dataproxymetadataupdate.png
 
b/i18n/zh-CN/docusaurus-plugin-content-blog/img/1.9.0/1.9.0-dataproxymetadataupdate.png
similarity index 100%
rename from 
i18n/zh-CN/docusaurus-plugin-content-blog/img/1.9.0-dataproxymetadataupdate.png
rename to 
i18n/zh-CN/docusaurus-plugin-content-blog/img/1.9.0/1.9.0-dataproxymetadataupdate.png
diff --git 
a/i18n/zh-CN/docusaurus-plugin-content-blog/img/1.9.0-icebergswitch.png 
b/i18n/zh-CN/docusaurus-plugin-content-blog/img/1.9.0/1.9.0-icebergswitch.png
similarity index 100%
rename from 
i18n/zh-CN/docusaurus-plugin-content-blog/img/1.9.0-icebergswitch.png
rename to 
i18n/zh-CN/docusaurus-plugin-content-blog/img/1.9.0/1.9.0-icebergswitch.png
diff --git 
a/i18n/zh-CN/docusaurus-plugin-content-blog/img/1.9.0-managertenant.png 
b/i18n/zh-CN/docusaurus-plugin-content-blog/img/1.9.0/1.9.0-managertenant.png
similarity index 100%
rename from 
i18n/zh-CN/docusaurus-plugin-content-blog/img/1.9.0-managertenant.png
rename to 
i18n/zh-CN/docusaurus-plugin-content-blog/img/1.9.0/1.9.0-managertenant.png
diff --git 
a/i18n/zh-CN/docusaurus-plugin-content-blog/img/1.9.0-observability.png 
b/i18n/zh-CN/docusaurus-plugin-content-blog/img/1.9.0/1.9.0-observability.png
similarity index 100%
rename from 
i18n/zh-CN/docusaurus-plugin-content-blog/img/1.9.0-observability.png
rename to 
i18n/zh-CN/docusaurus-plugin-content-blog/img/1.9.0/1.9.0-observability.png

Reply via email to