You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@inlong.apache.org by lz...@apache.org on 2023/11/24 02:10:17 UTC

(inlong) branch master updated: [INLONG-9322][Dashboard] Sink field mapping title format is unified (#9326)

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

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


The following commit(s) were added to refs/heads/master by this push:
     new fd064e28f8 [INLONG-9322][Dashboard] Sink field mapping title format is unified (#9326)
fd064e28f8 is described below

commit fd064e28f88bdcd6c1df258d0a905f8beb97788d
Author: Lizhen <88...@users.noreply.github.com>
AuthorDate: Fri Nov 24 10:10:09 2023 +0800

    [INLONG-9322][Dashboard] Sink field mapping title format is unified (#9326)
---
 .../src/plugins/sinks/defaults/ClickHouse.ts       |  12 +-
 inlong-dashboard/src/plugins/sinks/defaults/Cls.ts |   8 +-
 .../src/plugins/sinks/defaults/Doris.ts            |  42 +-
 .../src/plugins/sinks/defaults/Elasticsearch.ts    |   8 +-
 .../src/plugins/sinks/defaults/Greenplum.ts        |   8 +-
 .../src/plugins/sinks/defaults/HBase.ts            |   6 +-
 .../src/plugins/sinks/defaults/Hive.ts             |   8 +-
 .../src/plugins/sinks/defaults/Hudi.ts             |   8 +-
 .../src/plugins/sinks/defaults/Iceberg.ts          |   8 +-
 .../src/plugins/sinks/defaults/Kudu.ts             |   8 +-
 .../src/plugins/sinks/defaults/MySQL.ts            |   8 +-
 .../src/plugins/sinks/defaults/Oracle.ts           |   8 +-
 .../src/plugins/sinks/defaults/PostgreSQL.ts       |   8 +-
 .../src/plugins/sinks/defaults/Redis.ts            |   8 +-
 .../src/plugins/sinks/defaults/SQLServer.ts        |   8 +-
 .../src/plugins/sinks/defaults/StarRocks.ts        |   8 +-
 .../src/plugins/sinks/defaults/TDSQLPostgreSQL.ts  |   8 +-
 inlong-dashboard/src/ui/locales/cn.json            |  70 +--
 inlong-dashboard/src/ui/locales/en.json            | 581 +++++++++------------
 19 files changed, 350 insertions(+), 473 deletions(-)

diff --git a/inlong-dashboard/src/plugins/sinks/defaults/ClickHouse.ts b/inlong-dashboard/src/plugins/sinks/defaults/ClickHouse.ts
index c079bd1b5e..3c03835e2a 100644
--- a/inlong-dashboard/src/plugins/sinks/defaults/ClickHouse.ts
+++ b/inlong-dashboard/src/plugins/sinks/defaults/ClickHouse.ts
@@ -347,13 +347,13 @@ const getFieldListColumns = sinkValues => {
   return [
     ...sourceFields,
     {
-      title: `ClickHouse${i18n.t('meta.Sinks.ClickHouse.FieldName')}`,
+      title: i18n.t('meta.Sinks.SinkFieldName'),
       dataIndex: 'fieldName',
       rules: [
         { required: true },
         {
           pattern: /^[a-zA-Z][a-zA-Z0-9_]*$/,
-          message: i18n.t('meta.Sinks.ClickHouse.FieldNameRule'),
+          message: i18n.t('meta.Sinks.SinkFieldNameRule'),
         },
       ],
       props: (text, record, idx, isNew) => ({
@@ -361,7 +361,7 @@ const getFieldListColumns = sinkValues => {
       }),
     },
     {
-      title: `ClickHouse${i18n.t('meta.Sinks.ClickHouse.FieldType')}`,
+      title: i18n.t('meta.Sinks.SinkFieldType'),
       dataIndex: 'fieldType',
       initialValue: clickHouseTargetTypes[0].value,
       type: 'select',
@@ -372,7 +372,7 @@ const getFieldListColumns = sinkValues => {
       rules: [{ required: true, message: `${i18n.t('meta.Sinks.FieldTypeMessage')}` }],
     },
     {
-      title: 'DefaultType',
+      title: 'Default type',
       dataIndex: 'defaultType',
       type: 'autocomplete',
       props: (text, record, idx, isNew) => ({
@@ -384,7 +384,7 @@ const getFieldListColumns = sinkValues => {
       }),
     },
     {
-      title: 'DefaultExpr',
+      title: 'Default expr',
       dataIndex: 'defaultExpr',
       type: 'input',
       props: (text, record, idx, isNew) => ({
@@ -408,7 +408,7 @@ const getFieldListColumns = sinkValues => {
       }),
     },
     {
-      title: `ClickHouse${i18n.t('meta.Sinks.ClickHouse.FieldDescription')}`,
+      title: i18n.t('meta.Sinks.FieldDescription'),
       dataIndex: 'fieldComment',
       props: (text, record, idx, isNew) => ({
         disabled: [110].includes(sinkValues?.status as number) && !isNew,
diff --git a/inlong-dashboard/src/plugins/sinks/defaults/Cls.ts b/inlong-dashboard/src/plugins/sinks/defaults/Cls.ts
index 2aa231a3e6..29168970f5 100644
--- a/inlong-dashboard/src/plugins/sinks/defaults/Cls.ts
+++ b/inlong-dashboard/src/plugins/sinks/defaults/Cls.ts
@@ -131,14 +131,14 @@ const getFieldListColumns = sinkValues => {
   return [
     ...sourceFields,
     {
-      title: `CLS${i18n.t('meta.Sinks.Cls.FieldName')}`,
+      title: i18n.t('meta.Sinks.SinkFieldName'),
       dataIndex: 'fieldName',
       initialValue: '',
       rules: [
         { required: true },
         {
           pattern: /^[a-z][0-9a-z_]*$/,
-          message: i18n.t('meta.Sinks.Cls.FieldNameRule'),
+          message: i18n.t('meta.Sinks.SinkFieldNameRule'),
         },
       ],
       props: (text, record, idx, isNew) => ({
@@ -146,7 +146,7 @@ const getFieldListColumns = sinkValues => {
       }),
     },
     {
-      title: `CLS${i18n.t('meta.Sinks.Cls.FieldType')}`,
+      title: i18n.t('meta.Sinks.SinkFieldType'),
       dataIndex: 'fieldType',
       initialValue: targetTypes[0].value,
       type: 'select',
@@ -175,7 +175,7 @@ const getFieldListColumns = sinkValues => {
       }),
     },
     {
-      title: i18n.t('meta.Sinks.Cls.FieldDescription'),
+      title: i18n.t('meta.Sinks.FieldDescription'),
       dataIndex: 'fieldComment',
       initialValue: '',
     },
diff --git a/inlong-dashboard/src/plugins/sinks/defaults/Doris.ts b/inlong-dashboard/src/plugins/sinks/defaults/Doris.ts
index 4879090a74..2879215616 100644
--- a/inlong-dashboard/src/plugins/sinks/defaults/Doris.ts
+++ b/inlong-dashboard/src/plugins/sinks/defaults/Doris.ts
@@ -30,23 +30,23 @@ const { FieldDecorator, SyncField } = RenderRow;
 const { ColumnDecorator } = RenderList;
 
 const dorisTargetTypes = [
-  'NULL_TYPE',
-  'BOOLEAN',
-  'TINYINT',
-  'SMALLINT',
-  'INT',
-  'BIGINT',
-  'FLOAT',
-  'DOUBLE',
-  'DATE',
-  'DATETIME',
-  'DECIMAL',
-  'CHAR',
-  'LARGEINT',
-  'VARCHAR',
-  'DECIMALV2',
-  'TIME',
-  'HLL',
+  'null_type',
+  'boolean',
+  'tinyint',
+  'smallint',
+  'int',
+  'bigint',
+  'float',
+  'double',
+  'date',
+  'datetime',
+  'decimal',
+  'char',
+  'largenint',
+  'varchar',
+  'decimalv2',
+  'time',
+  'hll',
 ].map(item => ({
   label: item,
   value: item,
@@ -198,14 +198,14 @@ const getFieldListColumns = sinkValues => {
   return [
     ...sourceFields,
     {
-      title: `Doris${i18n.t('meta.Sinks.Doris.FieldName')}`,
+      title: i18n.t('meta.Sinks.SinkFieldName'),
       dataIndex: 'fieldName',
       initialValue: '',
       rules: [
         { required: true },
         {
           pattern: /^[a-z][0-9a-z_]*$/,
-          message: i18n.t('meta.Sinks.Doris.FieldNameRule'),
+          message: i18n.t('meta.Sinks.SinkFieldNameRule'),
         },
       ],
       props: (text, record, idx, isNew) => ({
@@ -213,7 +213,7 @@ const getFieldListColumns = sinkValues => {
       }),
     },
     {
-      title: `Doris${i18n.t('meta.Sinks.Doris.FieldType')}`,
+      title: i18n.t('meta.Sinks.SinkFieldType'),
       dataIndex: 'fieldType',
       initialValue: dorisTargetTypes[0].value,
       type: 'select',
@@ -255,7 +255,7 @@ const getFieldListColumns = sinkValues => {
       visible: (text, record) => ['BIGINT', 'DATE'].includes(record.fieldType as string),
     },
     {
-      title: i18n.t('meta.Sinks.Doris.FieldDescription'),
+      title: i18n.t('meta.Sinks.FieldDescription'),
       dataIndex: 'fieldComment',
       initialValue: '',
     },
diff --git a/inlong-dashboard/src/plugins/sinks/defaults/Elasticsearch.ts b/inlong-dashboard/src/plugins/sinks/defaults/Elasticsearch.ts
index 876d6f08d8..6ac2902720 100644
--- a/inlong-dashboard/src/plugins/sinks/defaults/Elasticsearch.ts
+++ b/inlong-dashboard/src/plugins/sinks/defaults/Elasticsearch.ts
@@ -127,13 +127,13 @@ const getFieldListColumns = sinkValues => {
   return [
     ...sourceFields,
     {
-      title: i18n.t('meta.Sinks.ES.FieldName'),
+      title: i18n.t('meta.Sinks.SinkFieldName'),
       dataIndex: 'fieldName',
       rules: [
         { required: true },
         {
           pattern: /^[a-zA-Z][a-zA-Z0-9_]*$/,
-          message: i18n.t('meta.Sinks.ES.FieldNameRule'),
+          message: i18n.t('meta.Sinks.SinkFieldNameRule'),
         },
       ],
       props: (text, record, idx, isNew) => ({
@@ -141,7 +141,7 @@ const getFieldListColumns = sinkValues => {
       }),
     },
     {
-      title: i18n.t('meta.Sinks.ES.FieldType'),
+      title: i18n.t('meta.Sinks.SinkFieldType'),
       dataIndex: 'fieldType',
       initialValue: esTypes[0].value,
       type: 'select',
@@ -185,7 +185,7 @@ const getFieldListColumns = sinkValues => {
       visible: (text, record) => record.fieldType === 'scaled_float',
     },
     {
-      title: i18n.t('meta.Sinks.ES.FieldDescription'),
+      title: i18n.t('meta.Sinks.FieldDescription'),
       dataIndex: 'fieldComment',
       props: (text, record, idx, isNew) => ({
         disabled: [110].includes(sinkValues?.status as number) && !isNew,
diff --git a/inlong-dashboard/src/plugins/sinks/defaults/Greenplum.ts b/inlong-dashboard/src/plugins/sinks/defaults/Greenplum.ts
index 9c29eaad45..47ddf75965 100644
--- a/inlong-dashboard/src/plugins/sinks/defaults/Greenplum.ts
+++ b/inlong-dashboard/src/plugins/sinks/defaults/Greenplum.ts
@@ -167,14 +167,14 @@ const getFieldListColumns = sinkValues => {
   return [
     ...sourceFields,
     {
-      title: `GREENPLUM${i18n.t('meta.Sinks.Greenplum.FieldName')}`,
+      title: i18n.t('meta.Sinks.SinkFieldName'),
       dataIndex: 'fieldName',
       initialValue: '',
       rules: [
         { required: true },
         {
           pattern: /^[a-z][0-9a-z_]*$/,
-          message: i18n.t('meta.Sinks.Greenplum.FieldNameRule'),
+          message: i18n.t('meta.Sinks.SinkFieldNameRule'),
         },
       ],
       props: (text, record, idx, isNew) => ({
@@ -182,7 +182,7 @@ const getFieldListColumns = sinkValues => {
       }),
     },
     {
-      title: `GREENPLUM${i18n.t('meta.Sinks.Greenplum.FieldType')}`,
+      title: i18n.t('meta.Sinks.SinkFieldType'),
       dataIndex: 'fieldType',
       initialValue: greenplumFieldTypes[0].value,
       type: 'autocomplete',
@@ -242,7 +242,7 @@ const getFieldListColumns = sinkValues => {
         ['BIGINT', 'DATE', 'TIMESTAMP'].includes(record.fieldType as string),
     },
     {
-      title: i18n.t('meta.Sinks.Greenplum.FieldDescription'),
+      title: i18n.t('meta.Sinks.FieldDescription'),
       dataIndex: 'fieldComment',
       initialValue: '',
     },
diff --git a/inlong-dashboard/src/plugins/sinks/defaults/HBase.ts b/inlong-dashboard/src/plugins/sinks/defaults/HBase.ts
index 351be79182..3d943b19c5 100644
--- a/inlong-dashboard/src/plugins/sinks/defaults/HBase.ts
+++ b/inlong-dashboard/src/plugins/sinks/defaults/HBase.ts
@@ -165,14 +165,14 @@ const getFieldListColumns = sinkValues => {
   return [
     ...sourceFields,
     {
-      title: `HBASE${i18n.t('meta.Sinks.HBase.FieldName')}`,
+      title: i18n.t('meta.Sinks.SinkFieldName'),
       dataIndex: 'fieldName',
       initialValue: '',
       rules: [
         { required: true },
         {
           pattern: /^[a-z][0-9a-z_]*$/,
-          message: i18n.t('meta.Sinks.HBase.FieldNameRule'),
+          message: i18n.t('meta.Sinks.SinkFieldNameRule'),
         },
       ],
       props: (text, record, idx, isNew) => ({
@@ -180,7 +180,7 @@ const getFieldListColumns = sinkValues => {
       }),
     },
     {
-      title: `HBASE${i18n.t('meta.Sinks.HBase.FieldType')}`,
+      title: i18n.t('meta.Sinks.SinkFieldType'),
       dataIndex: 'fieldType',
       initialValue: hbaseFieldTypes[0].value,
       type: 'select',
diff --git a/inlong-dashboard/src/plugins/sinks/defaults/Hive.ts b/inlong-dashboard/src/plugins/sinks/defaults/Hive.ts
index bb4845f302..551feefc7c 100644
--- a/inlong-dashboard/src/plugins/sinks/defaults/Hive.ts
+++ b/inlong-dashboard/src/plugins/sinks/defaults/Hive.ts
@@ -309,14 +309,14 @@ const getFieldListColumns = sinkValues => {
   return [
     ...sourceFields,
     {
-      title: `Hive${i18n.t('meta.Sinks.Hive.FieldName')}`,
+      title: i18n.t('meta.Sinks.SinkFieldName'),
       dataIndex: 'fieldName',
       initialValue: '',
       rules: [
         { required: true },
         {
           pattern: /^[a-z][0-9a-z_]*$/,
-          message: i18n.t('meta.Sinks.Hive.FieldNameRule'),
+          message: i18n.t('meta.Sinks.SinkFieldNameRule'),
         },
       ],
       props: (text, record, idx, isNew) => ({
@@ -324,7 +324,7 @@ const getFieldListColumns = sinkValues => {
       }),
     },
     {
-      title: `Hive${i18n.t('meta.Sinks.Hive.FieldType')}`,
+      title: i18n.t('meta.Sinks.SinkFieldType'),
       dataIndex: 'fieldType',
       initialValue: hiveFieldTypes[0].value,
       type: 'select',
@@ -367,7 +367,7 @@ const getFieldListColumns = sinkValues => {
         ['bigint', 'date', 'timestamp'].includes(record.fieldType as string),
     },
     {
-      title: i18n.t('meta.Sinks.Hive.FieldDescription'),
+      title: i18n.t('meta.Sinks.FieldDescription'),
       dataIndex: 'fieldComment',
       initialValue: '',
     },
diff --git a/inlong-dashboard/src/plugins/sinks/defaults/Hudi.ts b/inlong-dashboard/src/plugins/sinks/defaults/Hudi.ts
index 5d633b356a..4d096a17e3 100644
--- a/inlong-dashboard/src/plugins/sinks/defaults/Hudi.ts
+++ b/inlong-dashboard/src/plugins/sinks/defaults/Hudi.ts
@@ -290,14 +290,14 @@ const getFieldListColumns = sinkValues => {
   return [
     ...sourceFields,
     {
-      title: `Hudi ${i18n.t('meta.Sinks.Hudi.FieldName')}`,
+      title: i18n.t('meta.Sinks.SinkFieldName'),
       width: 110,
       dataIndex: 'fieldName',
       rules: [
         { required: true },
         {
           pattern: /^[a-zA-Z_][a-zA-Z0-9_]*$/,
-          message: i18n.t('meta.Sinks.Hudi.FieldNameRule'),
+          message: i18n.t('meta.Sinks.SinkFieldNameRule'),
         },
       ],
       props: (text, record, idx, isNew) => ({
@@ -305,7 +305,7 @@ const getFieldListColumns = sinkValues => {
       }),
     },
     {
-      title: `Hudi ${i18n.t('meta.Sinks.Hudi.FieldType')}`,
+      title: i18n.t('meta.Sinks.SinkFieldType'),
       dataIndex: 'fieldType',
       width: 130,
       initialValue: hudiFieldTypes[0].value,
@@ -358,7 +358,7 @@ const getFieldListColumns = sinkValues => {
       visible: (text, record) => record.fieldType === 'decimal',
     },
     {
-      title: i18n.t('meta.Sinks.Hudi.FieldDescription'),
+      title: i18n.t('meta.Sinks.FieldDescription'),
       dataIndex: 'fieldComment',
     },
   ];
diff --git a/inlong-dashboard/src/plugins/sinks/defaults/Iceberg.ts b/inlong-dashboard/src/plugins/sinks/defaults/Iceberg.ts
index 8cc88bc1e9..2597f3c0ff 100644
--- a/inlong-dashboard/src/plugins/sinks/defaults/Iceberg.ts
+++ b/inlong-dashboard/src/plugins/sinks/defaults/Iceberg.ts
@@ -287,14 +287,14 @@ const getFieldListColumns = sinkValues => {
   return [
     ...sourceFields,
     {
-      title: `Iceberg ${i18n.t('meta.Sinks.Iceberg.FieldName')}`,
+      title: i18n.t('meta.Sinks.SinkFieldName'),
       width: 110,
       dataIndex: 'fieldName',
       rules: [
         { required: true },
         {
           pattern: /^[a-zA-Z_][a-zA-Z0-9_]*$/,
-          message: i18n.t('meta.Sinks.Iceberg.FieldNameRule'),
+          message: i18n.t('meta.Sinks.SinkFieldNameRule'),
         },
       ],
       props: (text, record, idx, isNew) => ({
@@ -302,7 +302,7 @@ const getFieldListColumns = sinkValues => {
       }),
     },
     {
-      title: `Iceberg ${i18n.t('meta.Sinks.Iceberg.FieldType')}`,
+      title: i18n.t('meta.Sinks.SinkFieldType'),
       dataIndex: 'fieldType',
       width: 130,
       initialValue: icebergFieldTypes[0].value,
@@ -365,7 +365,7 @@ const getFieldListColumns = sinkValues => {
       }),
     },
     {
-      title: i18n.t('meta.Sinks.Iceberg.FieldDescription'),
+      title: i18n.t('meta.Sinks.FieldDescription'),
       dataIndex: 'fieldComment',
     },
   ];
diff --git a/inlong-dashboard/src/plugins/sinks/defaults/Kudu.ts b/inlong-dashboard/src/plugins/sinks/defaults/Kudu.ts
index 6643a63fbc..5b6e5d5965 100644
--- a/inlong-dashboard/src/plugins/sinks/defaults/Kudu.ts
+++ b/inlong-dashboard/src/plugins/sinks/defaults/Kudu.ts
@@ -205,14 +205,14 @@ const getFieldListColumns = sinkValues => {
   return [
     ...sourceFields,
     {
-      title: `Kudu ${i18n.t('meta.Sinks.Kudu.FieldName')}`,
+      title: i18n.t('meta.Sinks.SinkFieldName'),
       width: 110,
       dataIndex: 'fieldName',
       rules: [
         { required: true },
         {
           pattern: /^[a-zA-Z_][a-zA-Z0-9_]*$/,
-          message: i18n.t('meta.Sinks.Kudu.FieldNameRule'),
+          message: i18n.t('meta.Sinks.SinkFieldNameRule'),
         },
       ],
       props: (text, record, idx, isNew) => ({
@@ -220,7 +220,7 @@ const getFieldListColumns = sinkValues => {
       }),
     },
     {
-      title: `Kudu ${i18n.t('meta.Sinks.Kudu.FieldType')}`,
+      title: i18n.t('meta.Sinks.SinkFieldType'),
       dataIndex: 'fieldType',
       width: 130,
       initialValue: kuduFieldTypes[0].value,
@@ -275,7 +275,7 @@ const getFieldListColumns = sinkValues => {
       }),
     },
     {
-      title: i18n.t('meta.Sinks.Kudu.FieldDescription'),
+      title: i18n.t('meta.Sinks.FieldDescription'),
       dataIndex: 'fieldComment',
     },
   ];
diff --git a/inlong-dashboard/src/plugins/sinks/defaults/MySQL.ts b/inlong-dashboard/src/plugins/sinks/defaults/MySQL.ts
index 0f56db47db..39cc169280 100644
--- a/inlong-dashboard/src/plugins/sinks/defaults/MySQL.ts
+++ b/inlong-dashboard/src/plugins/sinks/defaults/MySQL.ts
@@ -152,14 +152,14 @@ const getFieldListColumns = sinkValues => {
   return [
     ...sourceFields,
     {
-      title: `MYSQL${i18n.t('meta.Sinks.MySQL.FieldName')}`,
+      title: i18n.t('meta.Sinks.SinkFieldName'),
       dataIndex: 'fieldName',
       initialValue: '',
       rules: [
         { required: true },
         {
           pattern: /^[a-z][0-9a-z_]*$/,
-          message: i18n.t('meta.Sinks.MySQL.FieldNameRule'),
+          message: i18n.t('meta.Sinks.SinkFieldNameRule'),
         },
       ],
       props: (text, record, idx, isNew) => ({
@@ -167,7 +167,7 @@ const getFieldListColumns = sinkValues => {
       }),
     },
     {
-      title: `MYSQL${i18n.t('meta.Sinks.MySQL.FieldType')}`,
+      title: i18n.t('meta.Sinks.SinkFieldType'),
       dataIndex: 'fieldType',
       initialValue: fieldTypes[0].value,
       type: 'autocomplete',
@@ -228,7 +228,7 @@ const getFieldListColumns = sinkValues => {
         ['BIGINT', 'DATE', 'TIMESTAMP'].includes(record.fieldType as string),
     },
     {
-      title: i18n.t('meta.Sinks.MySQL.FieldDescription'),
+      title: i18n.t('meta.Sinks.FieldDescription'),
       dataIndex: 'fieldComment',
       initialValue: '',
     },
diff --git a/inlong-dashboard/src/plugins/sinks/defaults/Oracle.ts b/inlong-dashboard/src/plugins/sinks/defaults/Oracle.ts
index a8cf51f6da..a405e03ef7 100644
--- a/inlong-dashboard/src/plugins/sinks/defaults/Oracle.ts
+++ b/inlong-dashboard/src/plugins/sinks/defaults/Oracle.ts
@@ -160,14 +160,14 @@ const getFieldListColumns = sinkValues => {
   return [
     ...sourceFields,
     {
-      title: `ORACLE${i18n.t('meta.Sinks.Oracle.FieldName')}`,
+      title: i18n.t('meta.Sinks.SinkFieldName'),
       dataIndex: 'fieldName',
       initialValue: '',
       rules: [
         { required: true },
         {
           pattern: /^[a-z][0-9a-z_]*$/,
-          message: i18n.t('meta.Sinks.Oracle.FieldNameRule'),
+          message: i18n.t('meta.Sinks.SinkFieldNameRule'),
         },
       ],
       props: (text, record, idx, isNew) => ({
@@ -175,7 +175,7 @@ const getFieldListColumns = sinkValues => {
       }),
     },
     {
-      title: `ORACLE${i18n.t('meta.Sinks.Oracle.FieldType')}`,
+      title: i18n.t('meta.Sinks.SinkFieldType'),
       dataIndex: 'fieldType',
       initialValue: oracleFieldTypes[0].value,
       type: 'autocomplete',
@@ -235,7 +235,7 @@ const getFieldListColumns = sinkValues => {
         ['BIGINT', 'DATE', 'TIMESTAMP'].includes(record.fieldType as string),
     },
     {
-      title: i18n.t('meta.Sinks.Oracle.FieldDescription'),
+      title: i18n.t('meta.Sinks.FieldDescription'),
       dataIndex: 'fieldComment',
       initialValue: '',
     },
diff --git a/inlong-dashboard/src/plugins/sinks/defaults/PostgreSQL.ts b/inlong-dashboard/src/plugins/sinks/defaults/PostgreSQL.ts
index bd9c235333..ae98ebac6e 100644
--- a/inlong-dashboard/src/plugins/sinks/defaults/PostgreSQL.ts
+++ b/inlong-dashboard/src/plugins/sinks/defaults/PostgreSQL.ts
@@ -176,14 +176,14 @@ const getFieldListColumns = sinkValues => {
   return [
     ...sourceFields,
     {
-      title: `POSTGRESQL${i18n.t('meta.Sinks.PostgreSQL.FieldName')}`,
+      title: i18n.t('meta.Sinks.SinkFieldName'),
       dataIndex: 'fieldName',
       initialValue: '',
       rules: [
         { required: true },
         {
           pattern: /^[a-z][0-9a-z_]*$/,
-          message: i18n.t('meta.Sinks.PostgreSQL.FieldNameRule'),
+          message: i18n.t('meta.Sinks.SinkFieldNameRule'),
         },
       ],
       props: (text, record, idx, isNew) => ({
@@ -191,7 +191,7 @@ const getFieldListColumns = sinkValues => {
       }),
     },
     {
-      title: `POSTGRESQL${i18n.t('meta.Sinks.PostgreSQL.FieldType')}`,
+      title: i18n.t('meta.Sinks.SinkFieldType'),
       dataIndex: 'fieldType',
       initialValue: postgreSqlFieldTypes[0].value,
       type: 'autocomplete',
@@ -251,7 +251,7 @@ const getFieldListColumns = sinkValues => {
         ['BIGINT', 'DATE', 'TIMESTAMP'].includes(record.fieldType as string),
     },
     {
-      title: i18n.t('meta.Sinks.PostgreSQL.FieldDescription'),
+      title: i18n.t('meta.Sinks.FieldDescription'),
       dataIndex: 'fieldComment',
       initialValue: '',
     },
diff --git a/inlong-dashboard/src/plugins/sinks/defaults/Redis.ts b/inlong-dashboard/src/plugins/sinks/defaults/Redis.ts
index 14c9bb39f8..35abaf41aa 100644
--- a/inlong-dashboard/src/plugins/sinks/defaults/Redis.ts
+++ b/inlong-dashboard/src/plugins/sinks/defaults/Redis.ts
@@ -405,14 +405,14 @@ const getFieldListColumns = sinkValues => {
   return [
     ...sourceFields,
     {
-      title: `Redis${i18n.t('meta.Sinks.Redis.FieldName')}`,
+      title: i18n.t('meta.Sinks.SinkFieldName'),
       dataIndex: 'fieldName',
       initialValue: '',
       rules: [
         { required: true },
         {
           pattern: /^[a-z][0-9a-z_]*$/,
-          message: i18n.t('meta.Sinks.Redis.FieldNameRule'),
+          message: i18n.t('meta.Sinks.SinkFieldNameRule'),
         },
       ],
       props: (text, record, idx, isNew) => ({
@@ -420,7 +420,7 @@ const getFieldListColumns = sinkValues => {
       }),
     },
     {
-      title: `Redis${i18n.t('meta.Sinks.Redis.FieldType')}`,
+      title: i18n.t('meta.Sinks.SinkFieldType'),
       dataIndex: 'fieldType',
       initialValue: redisTargetTypes[0].value,
       type: 'select',
@@ -444,7 +444,7 @@ const getFieldListColumns = sinkValues => {
       visible: (text, record) => ['BIGINT', 'DATE'].includes(record.fieldType as string),
     },
     {
-      title: i18n.t('meta.Sinks.Redis.FieldDescription'),
+      title: i18n.t('meta.Sinks.FieldDescription'),
       dataIndex: 'fieldComment',
       initialValue: '',
     },
diff --git a/inlong-dashboard/src/plugins/sinks/defaults/SQLServer.ts b/inlong-dashboard/src/plugins/sinks/defaults/SQLServer.ts
index 1a2a9eefc9..be723b7bf7 100644
--- a/inlong-dashboard/src/plugins/sinks/defaults/SQLServer.ts
+++ b/inlong-dashboard/src/plugins/sinks/defaults/SQLServer.ts
@@ -215,14 +215,14 @@ const getFieldListColumns = sinkValues => {
   return [
     ...sourceFields,
     {
-      title: `SQLSERVER${i18n.t('meta.Sinks.SQLServer.FieldName')}`,
+      title: i18n.t('meta.Sinks.SinkFieldName'),
       dataIndex: 'fieldName',
       initialValue: '',
       rules: [
         { required: true },
         {
           pattern: /^[a-z][0-9a-z_]*$/,
-          message: i18n.t('meta.Sinks.SQLServer.FieldNameRule'),
+          message: i18n.t('meta.Sinks.SinkFieldNameRule'),
         },
       ],
       props: (text, record, idx, isNew) => ({
@@ -230,7 +230,7 @@ const getFieldListColumns = sinkValues => {
       }),
     },
     {
-      title: `SQLSERVER${i18n.t('meta.Sinks.SQLServer.FieldType')}`,
+      title: i18n.t('meta.Sinks.SinkFieldType'),
       dataIndex: 'fieldType',
       initialValue: sqlserverFieldTypes[0].value,
       type: 'autocomplete',
@@ -290,7 +290,7 @@ const getFieldListColumns = sinkValues => {
         ['BIGINT', 'DATE', 'TIMESTAMP'].includes(record.fieldType as string),
     },
     {
-      title: i18n.t('meta.Sinks.SQLServer.FieldDescription'),
+      title: i18n.t('meta.Sinks.FieldDescription'),
       dataIndex: 'fieldComment',
       initialValue: '',
     },
diff --git a/inlong-dashboard/src/plugins/sinks/defaults/StarRocks.ts b/inlong-dashboard/src/plugins/sinks/defaults/StarRocks.ts
index ab4b1719b3..4f7694d5c2 100644
--- a/inlong-dashboard/src/plugins/sinks/defaults/StarRocks.ts
+++ b/inlong-dashboard/src/plugins/sinks/defaults/StarRocks.ts
@@ -125,14 +125,14 @@ const getFieldListColumns = sinkValues => {
   return [
     ...sourceFields,
     {
-      title: `StarRocks${i18n.t('meta.Sinks.StarRocks.FieldName')}`,
+      title: i18n.t('meta.Sinks.SinkFieldName'),
       dataIndex: 'fieldName',
       initialValue: '',
       rules: [
         { required: true },
         {
           pattern: /^[a-z][0-9a-z_]*$/,
-          message: i18n.t('meta.Sinks.StarRocks.FieldNameRule'),
+          message: i18n.t('meta.Sinks.SinkFieldNameRule'),
         },
       ],
       props: (text, record, idx, isNew) => ({
@@ -140,7 +140,7 @@ const getFieldListColumns = sinkValues => {
       }),
     },
     {
-      title: `StarRocks${i18n.t('meta.Sinks.StarRocks.FieldType')}`,
+      title: i18n.t('meta.Sinks.SinkFieldType'),
       dataIndex: 'fieldType',
       initialValue: fieldTypes[0].value,
       type: 'autocomplete',
@@ -201,7 +201,7 @@ const getFieldListColumns = sinkValues => {
         ['BIGINT', 'DATE', 'TIMESTAMP'].includes(record.fieldType as string),
     },
     {
-      title: i18n.t('meta.Sinks.StarRocks.FieldDescription'),
+      title: i18n.t('meta.Sinks.FieldDescription'),
       dataIndex: 'fieldComment',
       initialValue: '',
     },
diff --git a/inlong-dashboard/src/plugins/sinks/defaults/TDSQLPostgreSQL.ts b/inlong-dashboard/src/plugins/sinks/defaults/TDSQLPostgreSQL.ts
index 07c88f332a..f3c956bf9c 100644
--- a/inlong-dashboard/src/plugins/sinks/defaults/TDSQLPostgreSQL.ts
+++ b/inlong-dashboard/src/plugins/sinks/defaults/TDSQLPostgreSQL.ts
@@ -171,14 +171,14 @@ const getFieldListColumns = sinkValues => {
   return [
     ...sourceFields,
     {
-      title: `TDSQLPOSTGRESQL${i18n.t('meta.Sinks.TDSQLPostgreSQL.FieldName')}`,
+      title: i18n.t('meta.Sinks.SinkFieldName'),
       dataIndex: 'fieldName',
       initialValue: '',
       rules: [
         { required: true },
         {
           pattern: /^[a-z][0-9a-z_]*$/,
-          message: i18n.t('meta.Sinks.TDSQLPostgreSQL.FieldNameRule'),
+          message: i18n.t('meta.Sinks.SinkFieldNameRule'),
         },
       ],
       props: (text, record, idx, isNew) => ({
@@ -186,7 +186,7 @@ const getFieldListColumns = sinkValues => {
       }),
     },
     {
-      title: `TDSQLPOSTGRESQL${i18n.t('meta.Sinks.TDSQLPostgreSQL.FieldType')}`,
+      title: i18n.t('meta.Sinks.SinkFieldType'),
       dataIndex: 'fieldType',
       initialValue: tdsqlPostgreSQLFieldTypes[0].value,
       type: 'select',
@@ -229,7 +229,7 @@ const getFieldListColumns = sinkValues => {
         ['BIGINT', 'DATE', 'TIMESTAMP'].includes(record.fieldType as string),
     },
     {
-      title: i18n.t('meta.Sinks.TDSQLPostgreSQL.FieldDescription'),
+      title: i18n.t('meta.Sinks.FieldDescription'),
       dataIndex: 'fieldComment',
       initialValue: '',
     },
diff --git a/inlong-dashboard/src/ui/locales/cn.json b/inlong-dashboard/src/ui/locales/cn.json
index c48d511e89..ce759a3f1e 100644
--- a/inlong-dashboard/src/ui/locales/cn.json
+++ b/inlong-dashboard/src/ui/locales/cn.json
@@ -126,6 +126,10 @@
   "meta.Sinks.SourceFieldName": "源字段名",
   "meta.Sinks.SourceFieldType": "源字段类型",
   "meta.Sinks.SourceFieldNameRule": "以英文字母开头,只能包含英文字母、数字、下划线",
+  "meta.Sinks.SinkFieldName": "Sink 字段名",
+  "meta.Sinks.SinkFieldType": "Sink 字段类型",
+  "meta.Sinks.SinkFieldNameRule": "以英文字母开头,只能包含英文字母、数字、下划线",
+  "meta.Sinks.FieldDescription": "字段描述",
   "meta.Sinks.Username": "用户名",
   "meta.Sinks.Password": "密码",
   "meta.Sinks.EnableCreateResource": "是否创建资源",
@@ -146,13 +150,11 @@
   "meta.Sinks.Hive.PartitionFieldListHelp": "字段类型若为 timestamp,则必须设置此字段值的格式,支持 MICROSECONDS,MILLISECONDS,SECONDS,SQL,ISO_8601,以及自定义,比如:yyyy-MM-dd HH:mm:ss 等",
   "meta.Sinks.Hive.DbName": "DB名称",
   "meta.Sinks.Hive.TableName":  "表名称",
-  "meta.Sinks.Hive.FieldNameRule": "以小写英文字母开头,只能包含小写英文字母、数字、下划线",
   "meta.Sinks.Hive.ConnectionTest": "测试连接",
   "meta.Sinks.Hive.ConnectionSucceeded": "连接成功",
   "meta.Sinks.Hive.ConnectionFailed": "连接失败",
   "meta.Sinks.Hive.FieldName": "字段名",
   "meta.Sinks.Hive.FieldType": "字段类型",
-  "meta.Sinks.Hive.FieldDescription": "字段描述",
   "meta.Sinks.Hive.IsMetaField": "是否为元字段",
   "meta.Sinks.Hive.FieldFormat": "字段格式",
   "meta.Sinks.ClickHouse.DbName": "DB 名称",
@@ -168,10 +170,6 @@
   "meta.Sinks.ClickHouse.No": "否",
   "meta.Sinks.ClickHouse.PartitionStrategy": "分区策略",
   "meta.Sinks.ClickHouse.PartitionFields": "分区字段",
-  "meta.Sinks.ClickHouse.FieldName": "字段名",
-  "meta.Sinks.ClickHouse.FieldNameRule": "以英文字母开头,只能包含英文字母、数字、下划线",
-  "meta.Sinks.ClickHouse.FieldType": "字段类型",
-  "meta.Sinks.ClickHouse.FieldDescription": "字段描述",
   "meta.Sinks.ClickHouse.Engine": "引擎",
   "meta.Sinks.ClickHouse.OrderBy": "排序",
   "meta.Sinks.ClickHouse.PartitionBy": "分区",
@@ -184,10 +182,6 @@
   "meta.Sinks.ES.Cycle.Hour": "时",
   "meta.Sinks.ES.Cycle.Minute": "分",
   "meta.Sinks.ES.Index": "索引",
-  "meta.Sinks.ES.FieldName": "Sink 字段名",
-  "meta.Sinks.ES.FieldNameRule": "以英文字母开头,只能包含英文字母、数字、下划线",
-  "meta.Sinks.ES.FieldType": "Sink 字段类型",
-  "meta.Sinks.ES.FieldDescription": "字段描述",
   "meta.Sinks.ES.DateFormat": "日期格式",
   "meta.Sinks.Kafka.Server": "服务器地址",
   "meta.Sinks.Kafka.SerializationType": "序列化类型",
@@ -200,10 +194,6 @@
   "meta.Sinks.Iceberg.Description": "表描述",
   "meta.Sinks.Iceberg.ExtList": "属性",
   "meta.Sinks.Iceberg.DataConsistency": "数据一致性",
-  "meta.Sinks.Iceberg.FieldName": "字段名",
-  "meta.Sinks.Iceberg.FieldNameRule": "以英文字母或下划线开头,只能包含英文字母、数字、下划线",
-  "meta.Sinks.Iceberg.FieldType": "字段类型",
-  "meta.Sinks.Iceberg.FieldDescription": "字段描述",
   "meta.Sinks.Iceberg.PartitionStrategy": "分区策略",
   "meta.Sinks.Hudi.DbName": "DB 名称",
   "meta.Sinks.Hudi.TableName": "表名称",
@@ -212,10 +202,6 @@
   "meta.Sinks.Hudi.Description": "表描述",
   "meta.Sinks.Hudi.ExtList": "属性",
   "meta.Sinks.Hudi.DataConsistency": "数据一致性",
-  "meta.Sinks.Hudi.FieldName": "字段名",
-  "meta.Sinks.Hudi.FieldNameRule": "以英文字母或下划线开头,只能包含英文字母、数字、下划线",
-  "meta.Sinks.Hudi.FieldType": "字段类型",
-  "meta.Sinks.Hudi.FieldDescription": "字段描述",
   "meta.Sinks.Hudi.PrimaryKey": "主键",
   "meta.Sinks.Hudi.PartitionKey": "分区字段",
   "meta.Sinks.Hudi.PrimaryKeyHelper": "主键字段列表,以逗号(,)分割",
@@ -224,58 +210,34 @@
   "meta.Sinks.Hudi.ExtListHelper": "hudi表的DDL属性需带前缀'ddl.'",
   "meta.Sinks.Greenplum.TableName": "表名称",
   "meta.Sinks.Greenplum.PrimaryKey": "主键",
-  "meta.Sinks.Greenplum.FieldName": "字段名",
-  "meta.Sinks.Greenplum.FieldNameRule": "以英文字母或下划线开头,只能包含英文字母、数字、下划线",
-  "meta.Sinks.Greenplum.FieldType": "字段类型",
   "meta.Sinks.Greenplum.IsMetaField": "是否为元字段",
   "meta.Sinks.Greenplum.FieldFormat": "字段格式",
-  "meta.Sinks.Greenplum.FieldDescription": "字段描述",
   "meta.Sinks.MySQL.DatabaseName": "数据库名",
   "meta.Sinks.MySQL.TableName": "表名称",
   "meta.Sinks.MySQL.PrimaryKey": "主键",
-  "meta.Sinks.MySQL.FieldName": "字段名",
-  "meta.Sinks.MySQL.FieldNameRule": "以英文字母或下划线开头,只能包含英文字母、数字、下划线",
-  "meta.Sinks.MySQL.FieldType": "字段类型",
   "meta.Sinks.MySQL.IsMetaField": "是否为元字段",
   "meta.Sinks.MySQL.FieldFormat": "字段格式",
-  "meta.Sinks.MySQL.FieldDescription": "字段描述",
   "meta.Sinks.Oracle.TableName": "表名称",
   "meta.Sinks.Oracle.PrimaryKey": "主键",
-  "meta.Sinks.Oracle.FieldName": "字段名",
-  "meta.Sinks.Oracle.FieldNameRule": "以英文字母或下划线开头,只能包含英文字母、数字、下划线",
-  "meta.Sinks.Oracle.FieldType": "字段类型",
   "meta.Sinks.Oracle.IsMetaField": "是否为元字段",
   "meta.Sinks.Oracle.FieldFormat": "字段格式",
-  "meta.Sinks.Oracle.FieldDescription": "字段描述",
   "meta.Sinks.PostgreSQL.DbName": "DB 名称",
   "meta.Sinks.PostgreSQL.TableName": "表名称",
   "meta.Sinks.PostgreSQL.PrimaryKey": "主键",
-  "meta.Sinks.PostgreSQL.FieldName": "字段名",
-  "meta.Sinks.PostgreSQL.FieldNameRule": "以英文字母或下划线开头,只能包含英文字母、数字、下划线",
-  "meta.Sinks.PostgreSQL.FieldType": "字段类型",
   "meta.Sinks.PostgreSQL.IsMetaField": "是否为元字段",
   "meta.Sinks.PostgreSQL.FieldFormat": "字段格式",
-  "meta.Sinks.PostgreSQL.FieldDescription": "字段描述",
   "meta.Sinks.SQLServer.SchemaName": "架构名称",
   "meta.Sinks.SQLServer.AllMigration": "是否迁移所有数据库",
   "meta.Sinks.SQLServer.ServerTimezone": "数组库时区",
   "meta.Sinks.SQLServer.TableName": "表名称",
   "meta.Sinks.SQLServer.PrimaryKey": "主键",
-  "meta.Sinks.SQLServer.FieldName": "字段名",
-  "meta.Sinks.SQLServer.FieldNameRule": "以英文字母或下划线开头,只能包含英文字母、数字、下划线",
-  "meta.Sinks.SQLServer.FieldType": "字段类型",
   "meta.Sinks.SQLServer.IsMetaField": "是否为元字段",
   "meta.Sinks.SQLServer.FieldFormat": "字段格式",
-  "meta.Sinks.SQLServer.FieldDescription": "字段描述",
   "meta.Sinks.TDSQLPostgreSQL.SchemaName": "架构名称",
   "meta.Sinks.TDSQLPostgreSQL.TableName": "表名称",
   "meta.Sinks.TDSQLPostgreSQL.PrimaryKey": "主键",
-  "meta.Sinks.TDSQLPostgreSQL.FieldName": "字段名",
-  "meta.Sinks.TDSQLPostgreSQL.FieldNameRule": "以英文字母或下划线开头,只能包含英文字母、数字、下划线",
-  "meta.Sinks.TDSQLPostgreSQL.FieldType": "字段类型",
   "meta.Sinks.TDSQLPostgreSQL.IsMetaField": "是否为元字段",
   "meta.Sinks.TDSQLPostgreSQL.FieldFormat": "字段格式",
-  "meta.Sinks.TDSQLPostgreSQL.FieldDescription": "字段描述",
   "meta.Sinks.Doris.HttpAddress": "Http 地址",
   "meta.Sinks.Doris.TableIdentifier": "表名称",
   "meta.Sinks.Doris.LabelPrefix": "流加载前缀",
@@ -284,12 +246,8 @@
   "meta.Sinks.Doris.SinkMultipleFormat": "多重格式",
   "meta.Sinks.Doris.DatabasePattern": "多数据库模式",
   "meta.Sinks.Doris.TablePattern": "多表模式",
-  "meta.Sinks.Doris.FieldName": "字段名",
-  "meta.Sinks.Doris.FieldType": "字段类型",
-  "meta.Sinks.Doris.FieldDescription": "字段描述",
   "meta.Sinks.Doris.IsMetaField": "是否为元字段",
   "meta.Sinks.Doris.FieldFormat": "字段格式",
-  "meta.Sinks.Doris.FieldNameRule": "以英文字母或下划线开头,只能包含英文字母、数字、下划线",
   "meta.Sinks.HBase.Namespace": "命名空间",
   "meta.Sinks.HBase.TableName": "表名称",
   "meta.Sinks.HBase.RowKey": "RowKey",
@@ -299,12 +257,8 @@
   "meta.Sinks.HBase.BufferFlushMaxRows": "缓存刷新的最大行数",
   "meta.Sinks.HBase.BufferFlushInterval": "缓存区刷新间隔",
   "meta.Sinks.HBase.FlushIntervalUnit": "秒",
-  "meta.Sinks.HBase.FieldName": "字段名",
-  "meta.Sinks.HBase.FieldNameRule": "以英文字母或下划线开头,只能包含英文字母、数字、下划线",
-  "meta.Sinks.HBase.FieldType": "字段类型",
   "meta.Sinks.HBase.IsMetaField": "是否为元字段",
   "meta.Sinks.HBase.FieldFormat": "字段格式",
-  "meta.Sinks.HBase.FieldDescription": "字段描述",
   "meta.Sinks.StarRocks.TableName": "表名称",
   "meta.Sinks.StarRocks.PrimaryKey": "主键",
   "meta.Sinks.StarRocks.DatabaseName": "数据库名",
@@ -312,19 +266,11 @@
   "meta.Sinks.StarRocks.SinkMultipleFormat": "多重格式",
   "meta.Sinks.StarRocks.DatabasePattern": "多数据库模式",
   "meta.Sinks.StarRocks.TablePattern": "多表模式",
-  "meta.Sinks.StarRocks.FieldName": "字段名",
-  "meta.Sinks.StarRocks.FieldNameRule": "以英文字母或下划线开头,只能包含英文字母、数字、下划线",
-  "meta.Sinks.StarRocks.FieldType": "字段类型",
   "meta.Sinks.StarRocks.IsMetaField": "是否为元字段",
   "meta.Sinks.StarRocks.FieldFormat": "字段格式",
-  "meta.Sinks.StarRocks.FieldDescription": "字段描述",
   "meta.Sinks.Redis.ttlUnit": "秒",
-  "meta.Sinks.Redis.FieldName": "字段名",
-  "meta.Sinks.Redis.FieldNameRule": "以英文字母或下划线开头,只能包含英文字母、数字、下划线",
-  "meta.Sinks.Redis.FieldType": "字段类型",
   "meta.Sinks.Redis.IsMetaField": "是否为元字段",
   "meta.Sinks.Redis.FieldFormat": "字段格式",
-  "meta.Sinks.Redis.FieldDescription": "字段描述",
   "meta.Sinks.Redis.Database": "DatabaseID",
   "meta.Sinks.Redis.Password": "密码",
   "meta.Sinks.Redis.Ttl": "TTL",
@@ -357,11 +303,7 @@
   "meta.Sinks.Kudu.DataConsistency": "数据一致性",
   "meta.Sinks.Kudu.PartitionKeyHelper": "主键字段需以逗号分割",
   "meta.Sinks.Kudu.PartitionKey": "主键字段",
-  "meta.Sinks.Kudu.FieldName": "字段名",
-  "meta.Sinks.Kudu.FieldNameRule": "以英文字母或下划线开头,只能包含英文字母、数字、下划线",
-  "meta.Sinks.Kudu.FieldType": "类型",
   "meta.Sinks.Kudu.PartitionStrategy": "分区策略",
-  "meta.Sinks.Kudu.FieldDescription": "描述",
   "meta.Sinks.Kudu.buckets": "Buckets",
   "meta.Sinks.Pulsar.Tenant": "Pulsar 租户",
   "meta.Sinks.Pulsar.Namespace": "命名空间",
@@ -373,12 +315,8 @@
   "meta.Sinks.Cls.StorageDuration.OneYear": "一年",
   "meta.Sinks.Cls.Tag": "标签",
   "meta.Sinks.Cls.Tokenizer": "分词规则",
-  "meta.Sinks.Cls.FieldName": "字段名",
-  "meta.Sinks.Cls.FieldType": "字段类型",
-  "meta.Sinks.Cls.FieldDescription": "字段描述",
   "meta.Sinks.Cls.IsMetaField": "是否为元字段",
   "meta.Sinks.Cls.FieldFormat": "字段格式",
-  "meta.Sinks.Cls.FieldNameRule": "以英文字母或下划线开头,只能包含英文字母、数字、下划线",
   "meta.Group.InlongGroupId": "数据流组 ID",
   "meta.Group.InlongGroupIdRules": "只能包含英文字母、数字、点号(.)、中划线(-)、下划线(_)",
   "meta.Group.InlongGroupName": "数据流组名称",
diff --git a/inlong-dashboard/src/ui/locales/en.json b/inlong-dashboard/src/ui/locales/en.json
index 6857d02a4d..b17f3c54b3 100644
--- a/inlong-dashboard/src/ui/locales/en.json
+++ b/inlong-dashboard/src/ui/locales/en.json
@@ -2,18 +2,18 @@
   "basic.Edit": "Edit",
   "basic.Detail": "Detail",
   "basic.Operating": "Operation",
-  "basic.OperatingSuccess": "Operating Success",
-  "basic.ConnectionSuccess": "Connection Success",
+  "basic.OperatingSuccess": "Operating success",
+  "basic.ConnectionSuccess": "Connection success",
   "basic.Save": "Save",
   "basic.Cancel": "Cancel",
   "basic.Create": "Create",
   "basic.Delete": "Delete",
   "basic.DeleteConfirm": "Are you sure to delete?",
-  "basic.DeleteSuccess": "Delete Success",
+  "basic.DeleteSuccess": "Delete success",
   "basic.Status": "Status",
   "basic.Creator": "Creator",
   "basic.Modifier": "Modifier",
-  "basic.CreateTime": "CreateTime",
+  "basic.CreateTime": "Create time",
   "basic.Yes": "Yes",
   "basic.No": "No",
   "basic.Stop": "Stop",
@@ -22,12 +22,12 @@
   "basic.ConfirmStop": "Confirm stop?",
   "basic.SuccessfullyRestart": "Successfully restart",
   "basic.SuccessfullyStop": "Successfully stop",
-  "meta.Sources.Name": "Source Name",
+  "meta.Sources.Name": "Source name",
   "meta.Sources.NameRule": "Only English letters, numbers, dots(.), minus(-), and underscores(_)",
   "meta.Sources.Type": "Type",
   "meta.Sources.File.SerializationType": "File type",
   "meta.Sources.File.DataSourceIP": "Data source IP",
-  "meta.Sources.File.ClusterName": "Cluster Name",
+  "meta.Sources.File.ClusterName": "Cluster name",
   "meta.Sources.File.FilePath": "File path",
   "meta.Sources.File.FilePathHelp": "Must be an absolute path and support regular expressions, such as: /data/.*log",
   "meta.Sources.File.IpRule": "Please enter the IP address correctly",
@@ -36,88 +36,88 @@
   "meta.Sources.Db.Server": "Server",
   "meta.Sources.Db.Port": "Port",
   "meta.Sources.Db.ServerTimezone": "Timezone",
-  "meta.Sources.Db.IntervalMs": "Recording Offset",
+  "meta.Sources.Db.IntervalMs": "Recording offset",
   "meta.Sources.Db.User": "User",
   "meta.Sources.Db.Password": "Password",
-  "meta.Sources.Db.HistoryFilename": "History Filename",
-  "meta.Sources.Db.AllMigration": "AllMigration",
-  "meta.Sources.Db.TableWhiteList": "Table WhiteList",
+  "meta.Sources.Db.HistoryFilename": "History file name",
+  "meta.Sources.Db.AllMigration": "All migration",
+  "meta.Sources.Db.TableWhiteList": "Table white list",
   "meta.Sources.Db.TableWhiteListHelp": "The whitelist should be a comma-separated list of regular expressions that match the fully-qualified names of tables to be monitored. Fully-qualified names for tables are of the form <databaseName>.<tableName>, the dbName and tableName can be configured with regular expressions. For example: test_db.order*, inlong_db*.user*, means to collect all tables starting with order in the test_db database + all tables starting with user under all databases  [...]
-  "meta.Sources.Db.DatabaseWhiteList": "Database WhiteList",
+  "meta.Sources.Db.DatabaseWhiteList": "Database white list",
   "meta.Sources.Db.DatabaseWhiteListHelp": "A list of databases to be collected, supporting regular expressions, separated by commas, for example: db1,test_db, databases not in the list will be excluded. If not set, all databases are monitored.",
   "meta.Sources.Mongodb.Hosts": "Hosts",
   "meta.Sources.Mongodb.Username": "Username",
   "meta.Sources.Mongodb.Password": "Password",
   "meta.Sources.Mongodb.Database": "Database",
   "meta.Sources.Mongodb.Collection": "Collection",
-  "meta.Sources.Mongodb.PrimaryKey": "PrimaryKey",
+  "meta.Sources.Mongodb.PrimaryKey": "Primary key",
   "meta.Sources.Oracle.Hostname": "Hostname",
   "meta.Sources.Oracle.Port": "Port",
   "meta.Sources.Oracle.Username": "Username",
   "meta.Sources.Oracle.Password": "Password",
   "meta.Sources.Oracle.Database": "Database",
-  "meta.Sources.Oracle.SchemaName": "SchemaName",
-  "meta.Sources.Oracle.TableName": "TableName",
-  "meta.Sources.Oracle.AllMigration": "AllMigration",
+  "meta.Sources.Oracle.SchemaName": "Schema name",
+  "meta.Sources.Oracle.TableName": "Table name",
+  "meta.Sources.Oracle.AllMigration": "All migration",
   "meta.Sources.Oracle.ScanStartupMode": "Scan startup mode",
-  "meta.Sources.Oracle.PrimaryKey": "PrimaryKey",
+  "meta.Sources.Oracle.PrimaryKey": "Primary key",
   "meta.Sources.PostgreSQL.Hostname": "Hostname",
   "meta.Sources.PostgreSQL.Port": "Port",
   "meta.Sources.PostgreSQL.Username": "Username",
   "meta.Sources.PostgreSQL.Password": "Password",
   "meta.Sources.PostgreSQL.Database": "Database",
   "meta.Sources.PostgreSQL.SchemaName": "Model",
-  "meta.Sources.PostgreSQL.TableName": "TableName",
+  "meta.Sources.PostgreSQL.TableName": "Table name",
   "meta.Sources.PostgreSQL.TableNameHelp": "Multiple table names are supported, separated by commas",
   "meta.Sources.PostgreSQL.SyncTableNameHelp": "Support mode plus table name filling, example: public.tableName",
   "meta.Sources.PostgreSQL.decodingPluginName": "Decoding Plugin Name",
-  "meta.Sources.PostgreSQL.PrimaryKey": "PrimaryKey",
+  "meta.Sources.PostgreSQL.PrimaryKey": "Primary key",
   "meta.Sources.SQLServer.Hostname": "Hostname",
   "meta.Sources.SQLServer.Port": "Port",
   "meta.Sources.SQLServer.Username": "Username",
   "meta.Sources.SQLServer.Password": "Password",
   "meta.Sources.SQLServer.Database": "Database",
-  "meta.Sources.SQLServer.SchemaName": "SchemaName",
-  "meta.Sources.SQLServer.TableName": "TableName",
-  "meta.Sources.SQLServer.AllMigration": "AllMigration",
+  "meta.Sources.SQLServer.SchemaName": "Schema name",
+  "meta.Sources.SQLServer.TableName": "Table name",
+  "meta.Sources.SQLServer.AllMigration": "All migration",
   "meta.Sources.SQLServer.ServerTimezone": "Timezone",
-  "meta.Sources.SQLServer.PrimaryKey": "PrimaryKey",
+  "meta.Sources.SQLServer.PrimaryKey": "Primary key",
   "meta.Sources.Redis.Hostname": "Hostname",
   "meta.Sources.Redis.Port": "Port",
   "meta.Sources.Redis.Username": "Username",
   "meta.Sources.Redis.Password": "Password",
-  "meta.Sources.Redis.Database": "Database Number",
-  "meta.Sources.Redis.PrimaryKey": "PrimaryKey",
-  "meta.Sources.Redis.RedisCommand": "RedisCommand",
+  "meta.Sources.Redis.Database": "Database number",
+  "meta.Sources.Redis.PrimaryKey": "Primary key",
+  "meta.Sources.Redis.RedisCommand": "Redis command",
   "meta.Sources.Redis.RedisMode": " Deploy mode",
   "meta.Sources.Redis.ClusterNodes": "Cluster Nodes",
-  "meta.Sources.Redis.MasterName": "MasterName",
-  "meta.Sources.Redis.SentinelsInfo": "SentinelsInfo",
-  "meta.Sources.Redis.AdditionalKey": "AdditionalKey",
+  "meta.Sources.Redis.MasterName": "Master name",
+  "meta.Sources.Redis.SentinelsInfo": "Sentinels info",
+  "meta.Sources.Redis.AdditionalKey": "Additional key",
   "meta.Sources.Redis.Timeout": "Timeout",
-  "meta.Sources.Redis.SoTimeout": "SoTimeout",
-  "meta.Sources.Redis.MaxTotal": "Max Total",
-  "meta.Sources.Redis.MaxIdle": "Max Idle",
-  "meta.Sources.Redis.MinIdle": "Min Idle",
-  "meta.Sources.Redis.LookupAsync": "Lookup Async",
-  "meta.Sources.Redis.LookupCacheMaxRows": "Cache Max Rows",
-  "meta.Sources.Redis.LookupCacheTtl": "Lookup Cache TTL",
-  "meta.Sources.Redis.LookupMaxRetries": "Lookup Max Retries",
+  "meta.Sources.Redis.SoTimeout": "So timeout",
+  "meta.Sources.Redis.MaxTotal": "Max total",
+  "meta.Sources.Redis.MaxIdle": "Max idle",
+  "meta.Sources.Redis.MinIdle": "Min idle",
+  "meta.Sources.Redis.LookupAsync": "Lookup async",
+  "meta.Sources.Redis.LookupCacheMaxRows": "Cache max rows",
+  "meta.Sources.Redis.LookupCacheTtl": "Lookup cache ttl",
+  "meta.Sources.Redis.LookupMaxRetries": "Lookup max retries",
   "meta.Sources.MQTT.Username": "Username",
   "meta.Sources.MQTT.Password": "Password",
-  "meta.Sources.MQTT.MqttVersion": "MQTT Version",
+  "meta.Sources.MQTT.MqttVersion": "MQTT version",
   "meta.Sources.Hudi.DbName": "DbName",
-  "meta.Sources.Hudi.TableName": "TableName",
+  "meta.Sources.Hudi.TableName": "Table name",
   "meta.Sources.Hudi.Warehouse": "Warehouse",
-  "meta.Sources.Hudi.ReadStreamingSkipCompaction": "SkipCompaction",
-  "meta.Sources.Hudi.ReadStartCommit": "StartCommit",
+  "meta.Sources.Hudi.ReadStreamingSkipCompaction": "Skip compaction",
+  "meta.Sources.Hudi.ReadStartCommit": "Start commit",
   "meta.Sources.Hudi.ReadStreamingSkipCompactionHelp": "Whether to skip compaction commits during stream reading, skipping compaction has two purposes: 1) Avoid repeated consumption under upsert semantics (the instant of compaction is repeated data, if not skipped, there is a small probability of repeated consumption); 2) changelog Semantic correctness is guaranteed in the mode. Starting from 0.11, the above two problems have been fixed by retaining the instant time of compaction",
   "meta.Sources.Hudi.ReadStartCommitHelp": "Specify the starting commit in the format of 'yyyyMMddHHmmss' (closed range)",
   "meta.Sources.Hudi.ExtListHelper": "The DDL attribute of the hudi table needs to be prefixed with 'ddl.'",
-  "meta.Sources.Hudi.ExtList": "AdvancedProperties",
+  "meta.Sources.Hudi.ExtList": "Advanced properties",
   "meta.Sources.Iceberg.Database": "Database",
   "meta.Sources.Iceberg.TableName": "TableName",
-  "meta.Sources.Iceberg.PrimaryKey": "PrimaryKey",
+  "meta.Sources.Iceberg.PrimaryKey": "Primary key",
   "meta.Sources.Iceberg.Warehouse": "Warehouse",
   "meta.Sinks.SinkName": "Name",
   "meta.Sinks.SinkNameRule": "Only English letters, numbers, dots(.), minus(-), and underscores(_)",
@@ -126,6 +126,10 @@
   "meta.Sinks.SourceFieldName": "Source field name",
   "meta.Sinks.SourceFieldType": "Source field type",
   "meta.Sinks.SourceFieldNameRule": "At the beginning of English letters, only English letters, numbers, and underscores",
+  "meta.Sinks.SinkFieldName": "Sink field name",
+  "meta.Sinks.SinkFieldType": "Sink field type",
+  "meta.Sinks.SinkFieldNameRule": "At the beginning of English letters, only English letters, numbers, and underscores",
+  "meta.Sinks.FieldDescription": "Field description",
   "meta.Sinks.Username": "Username",
   "meta.Sinks.Password": "Password",
   "meta.Sinks.EnableCreateResource": "Create resource",
@@ -142,57 +146,47 @@
   "meta.Sinks.Hive.DataSeparator.Semicolon": "Semicolon(;)",
   "meta.Sinks.Hive.DataSeparator.VerticalLine": "Vertical line (|)",
   "meta.Sinks.Hive.DataSeparator.DoubleQuotes": "Double quotes(\")",
-  "meta.Sinks.Hive.PartitionFieldList": "PartitionFieldList",
+  "meta.Sinks.Hive.PartitionFieldList": "Partition field list",
   "meta.Sinks.Hive.PartitionFieldListHelp": "If the field type is timestamp, you must set the format of the field value, support MICROSECONDS, MILLISECONDS, SECONDS, SQL, ISO_8601, and custom, such as: yyyy-MM-dd HH:mm:ss, etc.",
-  "meta.Sinks.Hive.DbName": "DbName",
-  "meta.Sinks.Hive.TableName": "TableName",
-  "meta.Sinks.Hive.FieldNameRule": "At the beginning of lowercase letters, only lowercase letters, numbers, and underscores",
+  "meta.Sinks.Hive.DbName": "Db name",
+  "meta.Sinks.Hive.TableName": "Table name",
   "meta.Sinks.Hive.ConnectionTest": "Test connection",
   "meta.Sinks.Hive.ConnectionSucceeded": "Connection succeeded",
   "meta.Sinks.Hive.ConnectionFailed": "Connection failed",
-  "meta.Sinks.Hive.FieldName": "FieldName",
-  "meta.Sinks.Hive.FieldType": "FieldType",
-  "meta.Sinks.Hive.FieldDescription": "Field description",
-  "meta.Sinks.Hive.IsMetaField": "IsMetaField",
-  "meta.Sinks.Hive.FieldFormat": "FieldFormat",
-  "meta.Sinks.ClickHouse.DbName": "DbName",
-  "meta.Sinks.ClickHouse.TableName": "TableName",
-  "meta.Sinks.ClickHouse.FlushInterval": "FlushInterval",
+  "meta.Sinks.Hive.FieldName": "Field name",
+  "meta.Sinks.Hive.FieldType": "Field type",
+  "meta.Sinks.Hive.IsMetaField": "Is meta field",
+  "meta.Sinks.Hive.FieldFormat": "Field format",
+  "meta.Sinks.ClickHouse.DbName": "Db name",
+  "meta.Sinks.ClickHouse.TableName": "Table name",
+  "meta.Sinks.ClickHouse.FlushInterval": "Flush interval",
   "meta.Sinks.ClickHouse.FlushIntervalUnit": "S",
-  "meta.Sinks.ClickHouse.FlushRecord": "FlushRecord",
+  "meta.Sinks.ClickHouse.FlushRecord": "Flush record",
   "meta.Sinks.ClickHouse.FlushRecordUnit": "items",
-  "meta.Sinks.ClickHouse.RetryTimes": "RetryTimes",
+  "meta.Sinks.ClickHouse.RetryTimes": "Retry times",
   "meta.Sinks.ClickHouse.RetryTimesUnit": "items",
-  "meta.Sinks.ClickHouse.IsDistributed": "IsDistributedTable",
+  "meta.Sinks.ClickHouse.IsDistributed": "Is distributed table",
   "meta.Sinks.ClickHouse.Yes": "Yes",
   "meta.Sinks.ClickHouse.No": "No",
-  "meta.Sinks.ClickHouse.PartitionStrategy": "PartitionStrategy",
-  "meta.Sinks.ClickHouse.PartitionFields": "PartitionFields",
-  "meta.Sinks.ClickHouse.FieldName": "FieldName",
-  "meta.Sinks.ClickHouse.FieldNameRule": "At the beginning of English letters, only English letters, numbers, and underscores",
-  "meta.Sinks.ClickHouse.FieldType": "FieldType",
-  "meta.Sinks.ClickHouse.FieldDescription": "FieldDescription",
+  "meta.Sinks.ClickHouse.PartitionStrategy": "Partition strategy",
+  "meta.Sinks.ClickHouse.PartitionFields": "Partition fields",
   "meta.Sinks.ClickHouse.Engine": "Engine",
-  "meta.Sinks.ClickHouse.OrderBy": "OrderBy",
-  "meta.Sinks.ClickHouse.PartitionBy": "PartitionBy",
-  "meta.Sinks.ClickHouse.PrimaryKey": "PrimaryKey",
+  "meta.Sinks.ClickHouse.OrderBy": "Order by",
+  "meta.Sinks.ClickHouse.PartitionBy": "Partition by",
+  "meta.Sinks.ClickHouse.PrimaryKey": "Primary key",
   "meta.Sinks.ClickHouse.Cluster": "Cluster",
-  "meta.Sinks.ClickHouse.CompressionCode": "CompressionCode",
-  "meta.Sinks.ClickHouse.TtlExpr": "TtlExpr",
+  "meta.Sinks.ClickHouse.CompressionCode": "Compression code",
+  "meta.Sinks.ClickHouse.TtlExpr": "Ttl expr",
   "meta.Sinks.ES.Cycle": "Cycle",
   "meta.Sinks.ES.Cycle.Day": "Day",
   "meta.Sinks.ES.Cycle.Hour": "Hour",
   "meta.Sinks.ES.Cycle.Minute": "Minute",
   "meta.Sinks.ES.Index": "Index",
-  "meta.Sinks.ES.FieldName": "Sink field name",
-  "meta.Sinks.ES.FieldNameRule": "At the beginning of English letters, only English letters, numbers, and underscores",
-  "meta.Sinks.ES.FieldType": "Sink field type",
-  "meta.Sinks.ES.FieldDescription": "Field description",
   "meta.Sinks.ES.DateFormat": "Date format",
   "meta.Sinks.Kafka.Server": "Server",
-  "meta.Sinks.Kafka.SerializationType": "SerializationType",
-  "meta.Sinks.Kafka.PartitionNum": "PartitionNum",
-  "meta.Sinks.Kafka.AutoOffsetReset": "AutoOffsetReset",
+  "meta.Sinks.Kafka.SerializationType": "Serialization type",
+  "meta.Sinks.Kafka.PartitionNum": "Partition num",
+  "meta.Sinks.Kafka.AutoOffsetReset": "Auto offset reset",
   "meta.Sinks.Iceberg.DbName": "Db name",
   "meta.Sinks.Iceberg.TableName": "Table name",
   "meta.Sinks.Iceberg.FileFormat": "File format",
@@ -200,147 +194,100 @@
   "meta.Sinks.Iceberg.Description": "Description",
   "meta.Sinks.Iceberg.ExtList": "Ext list",
   "meta.Sinks.Iceberg.DataConsistency": "Data consistency",
-  "meta.Sinks.Iceberg.FieldName": "FieldName",
-  "meta.Sinks.Iceberg.FieldNameRule": "At the beginning of English letters or underscore, only English letters, numbers, and underscores",
-  "meta.Sinks.Iceberg.FieldType": "FieldType",
-  "meta.Sinks.Iceberg.FieldDescription": "FieldDescription",
-  "meta.Sinks.Iceberg.PartitionStrategy": "PartitionStrategy",
-  "meta.Sinks.Hudi.DbName": "DbName",
-  "meta.Sinks.Hudi.TableName": "TableName",
+  "meta.Sinks.Iceberg.PartitionStrategy": "Partition strategy",
+  "meta.Sinks.Hudi.DbName": "Db name",
+  "meta.Sinks.Hudi.TableName": "Table name",
   "meta.Sinks.Hudi.Warehouse": "Warehouse",
-  "meta.Sinks.Hudi.FileFormat": "FileFormat",
+  "meta.Sinks.Hudi.FileFormat": "File format",
   "meta.Sinks.Hudi.Description": "Description",
-  "meta.Sinks.Hudi.ExtList": "ExtList",
-  "meta.Sinks.Hudi.DataConsistency": "DataConsistency",
-  "meta.Sinks.Hudi.FieldName": "FieldName",
-  "meta.Sinks.Hudi.FieldNameRule": "At the beginning of English letters or underscore, only English letters, numbers, and underscores",
-  "meta.Sinks.Hudi.FieldType": "FieldType",
-  "meta.Sinks.Hudi.FieldDescription": "FieldDescription",
-  "meta.Sinks.Hudi.PrimaryKey": "PrimaryKey",
+  "meta.Sinks.Hudi.ExtList": "Ext list",
+  "meta.Sinks.Hudi.DataConsistency": "Data consistency",
+  "meta.Sinks.Hudi.PrimaryKey": "Primary key",
   "meta.Sinks.Hudi.PrimaryKeyHelper": "The Primary key fields, separated by commas (,)",
-  "meta.Sinks.Hudi.PartitionKey": "PartitionKey",
+  "meta.Sinks.Hudi.PartitionKey": "Partition key",
   "meta.Sinks.Hudi.PartitionKeyHelper": "A list of partition fields, separated by commas (,).",
-  "meta.Sinks.Hudi.FieldFormat": "FieldFormat",
+  "meta.Sinks.Hudi.FieldFormat": "Field format",
   "meta.Sinks.Hudi.ExtListHelper": "The DDL attribute of the hudi table needs to be prefixed with 'ddl.'",
-  "meta.Sinks.Greenplum.TableName": "TableName",
-  "meta.Sinks.Greenplum.PrimaryKey": "PrimaryKey",
-  "meta.Sinks.Greenplum.FieldName": "FieldName",
-  "meta.Sinks.Greenplum.FieldNameRule": "At the beginning of English letters, only English letters, numbers, and underscores",
-  "meta.Sinks.Greenplum.FieldType": "FieldType",
-  "meta.Sinks.Greenplum.IsMetaField": "IsMetaField",
-  "meta.Sinks.Greenplum.FieldFormat": "FieldFormat",
-  "meta.Sinks.Greenplum.FieldDescription": "FieldDescription",
+  "meta.Sinks.Greenplum.TableName": "Table name",
+  "meta.Sinks.Greenplum.PrimaryKey": "Primary key",
+  "meta.Sinks.Greenplum.IsMetaField": "Is meta field",
+  "meta.Sinks.Greenplum.FieldFormat": "Field format",
   "meta.Sinks.MySQL.DatabaseName": "Database name",
   "meta.Sinks.MySQL.TableName": "Table name",
   "meta.Sinks.MySQL.PrimaryKey": "Primary key",
-  "meta.Sinks.MySQL.FieldName": "Field name",
-  "meta.Sinks.MySQL.FieldNameRule": "At the beginning of English letters, only English letters, numbers, and underscores",
-  "meta.Sinks.MySQL.FieldType": "Field type",
-  "meta.Sinks.MySQL.IsMetaField": "IsMetaField",
+  "meta.Sinks.MySQL.IsMetaField": "Is meta field",
   "meta.Sinks.MySQL.FieldFormat": "Field format",
-  "meta.Sinks.MySQL.FieldDescription": "Field description",
-  "meta.Sinks.Oracle.TableName": "TableName",
-  "meta.Sinks.Oracle.PrimaryKey": "PrimaryKey",
-  "meta.Sinks.Oracle.FieldName": "FieldName",
-  "meta.Sinks.Oracle.FieldNameRule": "At the beginning of English letters, only English letters, numbers, and underscores",
-  "meta.Sinks.Oracle.FieldType": "FieldType",
-  "meta.Sinks.Oracle.IsMetaField": "IsMetaField",
-  "meta.Sinks.Oracle.FieldFormat": "FieldFormat",
-  "meta.Sinks.Oracle.FieldDescription": "FieldDescription",
-  "meta.Sinks.PostgreSQL.DbName": "DbName",
-  "meta.Sinks.PostgreSQL.TableName": "TableName",
-  "meta.Sinks.PostgreSQL.PrimaryKey": "PrimaryKey",
-  "meta.Sinks.PostgreSQL.FieldName": "FieldName",
-  "meta.Sinks.PostgreSQL.FieldNameRule": "At the beginning of English letters, only English letters, numbers, and underscores",
-  "meta.Sinks.PostgreSQL.FieldType": "FieldType",
-  "meta.Sinks.PostgreSQL.IsMetaField": "IsMetaField",
-  "meta.Sinks.PostgreSQL.FieldFormat": "FieldFormat",
-  "meta.Sinks.PostgreSQL.FieldDescription": "FieldDescription",
-  "meta.Sinks.SQLServer.SchemaName": "SchemaName",
-  "meta.Sinks.SQLServer.AllMigration": "AllMigration",
-  "meta.Sinks.SQLServer.ServerTimezone": "ServerTimezone",
-  "meta.Sinks.SQLServer.TableName": "TableName",
-  "meta.Sinks.SQLServer.PrimaryKey": "PrimaryKey",
-  "meta.Sinks.SQLServer.FieldName": "FieldName",
-  "meta.Sinks.SQLServer.FieldNameRule": "At the beginning of English letters, only English letters, numbers, and underscores",
-  "meta.Sinks.SQLServer.FieldType": "FieldType",
-  "meta.Sinks.SQLServer.IsMetaField": "IsMetaField",
-  "meta.Sinks.SQLServer.FieldFormat": "FieldFormat",
-  "meta.Sinks.SQLServer.FieldDescription": "FieldDescription",
-  "meta.Sinks.TDSQLPostgreSQL.SchemaName": "SchemaName",
-  "meta.Sinks.TDSQLPostgreSQL.TableName": "TableName",
-  "meta.Sinks.TDSQLPostgreSQL.PrimaryKey": "PrimaryKey",
-  "meta.Sinks.TDSQLPostgreSQL.FieldName": "FieldName",
-  "meta.Sinks.TDSQLPostgreSQL.FieldNameRule": "At the beginning of English letters, only English letters, numbers, and underscores",
-  "meta.Sinks.TDSQLPostgreSQL.FieldType": "FieldType",
-  "meta.Sinks.TDSQLPostgreSQL.IsMetaField": "IsMetaField",
-  "meta.Sinks.TDSQLPostgreSQL.FieldFormat": "FieldFormat",
-  "meta.Sinks.TDSQLPostgreSQL.FieldDescription": "FieldDescription",
-  "meta.Sinks.Doris.HttpAddress": "Http Address",
-  "meta.Sinks.Doris.TableIdentifier": "TableName",
+  "meta.Sinks.Oracle.TableName": "Table name",
+  "meta.Sinks.Oracle.PrimaryKey": "Primary key",
+  "meta.Sinks.Oracle.IsMetaField": "Is meta field",
+  "meta.Sinks.Oracle.FieldFormat": "Field format",
+  "meta.Sinks.PostgreSQL.DbName": "Db name",
+  "meta.Sinks.PostgreSQL.TableName": "Table name",
+  "meta.Sinks.PostgreSQL.PrimaryKey": "Primary key",
+  "meta.Sinks.PostgreSQL.IsMetaField": "Is meta field",
+  "meta.Sinks.PostgreSQL.FieldFormat": "Field format",
+  "meta.Sinks.SQLServer.SchemaName": "Schema name",
+  "meta.Sinks.SQLServer.AllMigration": "All migration",
+  "meta.Sinks.SQLServer.ServerTimezone": "Server timezone",
+  "meta.Sinks.SQLServer.TableName": "Table name",
+  "meta.Sinks.SQLServer.PrimaryKey": "Primary key",
+  "meta.Sinks.SQLServer.IsMetaField": "Is meta field",
+  "meta.Sinks.SQLServer.FieldFormat": "Field format",
+  "meta.Sinks.TDSQLPostgreSQL.SchemaName": "Schema name",
+  "meta.Sinks.TDSQLPostgreSQL.TableName": "Table name",
+  "meta.Sinks.TDSQLPostgreSQL.PrimaryKey": "Primary key",
+  "meta.Sinks.TDSQLPostgreSQL.IsMetaField": "Is meta field",
+  "meta.Sinks.TDSQLPostgreSQL.FieldFormat": "Field format",
+  "meta.Sinks.Doris.HttpAddress": "Http address",
+  "meta.Sinks.Doris.TableIdentifier": "Table name",
   "meta.Sinks.Doris.LabelPrefix": "Stream Prefix",
-  "meta.Sinks.Doris.PrimaryKey": "PrimaryKey",
-  "meta.Sinks.Doris.SinkMultipleEnable": "Multiple Enable",
-  "meta.Sinks.Doris.SinkMultipleFormat": "Multiple Format",
-  "meta.Sinks.Doris.DatabasePattern": "DatabasePattern",
-  "meta.Sinks.Doris.TablePattern": "TablePattern",
-  "meta.Sinks.Doris.FieldName": "FieldName",
-  "meta.Sinks.Doris.FieldType": "FieldType",
-  "meta.Sinks.Doris.FieldDescription": "Field description",
-  "meta.Sinks.Doris.IsMetaField": "IsMetaField",
-  "meta.Sinks.Doris.FieldFormat": "FieldFormat",
-  "meta.Sinks.Doris.FieldNameRule": "At the beginning of lowercase letters, only lowercase letters, numbers, and underscores",
+  "meta.Sinks.Doris.PrimaryKey": "Primary key",
+  "meta.Sinks.Doris.SinkMultipleEnable": "Multiple nnable",
+  "meta.Sinks.Doris.SinkMultipleFormat": "Multiple format",
+  "meta.Sinks.Doris.DatabasePattern": "Database pattern",
+  "meta.Sinks.Doris.TablePattern": "Table pattern",
+  "meta.Sinks.Doris.IsMetaField": "Is meta field",
+  "meta.Sinks.Doris.FieldFormat": "Field format",
   "meta.Sinks.HBase.Namespace": "Namespace",
-  "meta.Sinks.HBase.TableName": "TableName",
-  "meta.Sinks.HBase.RowKey": "RowKey",
+  "meta.Sinks.HBase.TableName": "Table name",
+  "meta.Sinks.HBase.RowKey": "Row key",
   "meta.Sinks.HBase.ZkQuorum": "ZooKeeper address",
   "meta.Sinks.HBase.ZkNodeParent": "ZooKeeper node parent",
   "meta.Sinks.HBase.BufferFlushMaxSize": "Buffer flush max size",
   "meta.Sinks.HBase.BufferFlushMaxRows": "Buffer flush max rows",
   "meta.Sinks.HBase.BufferFlushInterval": "Buffer flush interval",
   "meta.Sinks.HBase.FlushIntervalUnit": "S",
-  "meta.Sinks.HBase.FieldName": "FieldName",
-  "meta.Sinks.HBase.FieldNameRule": "At the beginning of English letters, only English letters, numbers, and underscores",
-  "meta.Sinks.HBase.FieldType": "FieldType",
-  "meta.Sinks.HBase.IsMetaField": "IsMetaField",
-  "meta.Sinks.HBase.FieldFormat": "FieldFormat",
-  "meta.Sinks.HBase.FieldDescription": "FieldDescription",
-  "meta.Sinks.StarRocks.TableName": "TableName",
-  "meta.Sinks.StarRocks.PrimaryKey": "PrimaryKey",
-  "meta.Sinks.StarRocks.DatabaseName": "Database Name",
-  "meta.Sinks.StarRocks.SinkMultipleEnable": "Multiple Enable",
-  "meta.Sinks.StarRocks.SinkMultipleFormat": "Multiple Format",
-  "meta.Sinks.StarRocks.DatabasePattern": "Database Pattern",
-  "meta.Sinks.StarRocks.TablePattern": "Table Pattern",
-  "meta.Sinks.StarRocks.FieldName": "FieldName",
-  "meta.Sinks.StarRocks.FieldNameRule": "At the beginning of English letters, only English letters, numbers, and underscores",
-  "meta.Sinks.StarRocks.FieldType": "FieldType",
-  "meta.Sinks.StarRocks.IsMetaField": "IsMetaField",
-  "meta.Sinks.StarRocks.FieldFormat": "FieldFormat",
-  "meta.Sinks.StarRocks.FieldDescription": "FieldDescription",
+  "meta.Sinks.HBase.IsMetaField": "Is meta field",
+  "meta.Sinks.HBase.FieldFormat": "Field format",
+  "meta.Sinks.StarRocks.TableName": "Table name",
+  "meta.Sinks.StarRocks.PrimaryKey": "Primary key",
+  "meta.Sinks.StarRocks.DatabaseName": "Database name",
+  "meta.Sinks.StarRocks.SinkMultipleEnable": "Multiple fnable",
+  "meta.Sinks.StarRocks.SinkMultipleFormat": "Multiple format",
+  "meta.Sinks.StarRocks.DatabasePattern": "Database pattern",
+  "meta.Sinks.StarRocks.TablePattern": "Table pattern",
+  "meta.Sinks.StarRocks.IsMetaField": "Is meta field",
+  "meta.Sinks.StarRocks.FieldFormat": "Field format",
   "meta.Sinks.Redis.clusterModeHelp": "Redis cluster mode, contains [cluster|sentinel|standalone]",
   "meta.Sinks.Redis.ttlUnit": "s",
-  "meta.Sinks.Redis.FieldName": "FieldName",
-  "meta.Sinks.Redis.FieldNameRule": "At the beginning of English letters, only English letters, numbers, and underscores",
-  "meta.Sinks.Redis.FieldType": "FieldType",
-  "meta.Sinks.Redis.IsMetaField": "IsMetaField",
-  "meta.Sinks.Redis.FieldFormat": "FieldFormat",
-  "meta.Sinks.Redis.FieldDescription": "FieldDescription",
-  "meta.Sinks.Redis.database": "DatabaseID",
+  "meta.Sinks.Redis.IsMetaField": "Is meta field",
+  "meta.Sinks.Redis.FieldFormat": "Field format",
+  "meta.Sinks.Redis.database": "Database id",
   "meta.Sinks.Redis.password": "Password",
   "meta.Sinks.Redis.ttl": "TTL",
   "meta.Sinks.Redis.TtlUnit": "s",
-  "meta.Sinks.Redis.ExtList": "ExtList",
-  "meta.Sinks.Redis.Timeout": "TimeOut",
-  "meta.Sinks.Redis.SoTimeout": "SoTimeout",
-  "meta.Sinks.Redis.MaxTotal": "Max Total",
-  "meta.Sinks.Redis.MaxIdle": "Max Idle",
-  "meta.Sinks.Redis.MinIdle": "Min Idle",
-  "meta.Sinks.Redis.maxRetries": "Max Retries",
-  "meta.Sinks.Redis.dataType": "Data Type",
-  "meta.Sinks.Redis.schemaMapMode": "Schema Map Mode",
+  "meta.Sinks.Redis.ExtList": "Ext list",
+  "meta.Sinks.Redis.Timeout": "Time out",
+  "meta.Sinks.Redis.SoTimeout": "So timeout",
+  "meta.Sinks.Redis.MaxTotal": "Max total",
+  "meta.Sinks.Redis.MaxIdle": "Max idle",
+  "meta.Sinks.Redis.MinIdle": "Min idle",
+  "meta.Sinks.Redis.maxRetries": "Max retries",
+  "meta.Sinks.Redis.dataType": "Data type",
+  "meta.Sinks.Redis.schemaMapMode": "Schema map mode",
   "meta.Sinks.Redis.TimeoutUnit": "s",
-  "meta.Sinks.Redis.SoTimeoutUnit": "s",  "meta.Sinks.Redis.FormatDataType": "Format data type",
+  "meta.Sinks.Redis.SoTimeoutUnit": "s",  
+  "meta.Sinks.Redis.FormatDataType": "Format data type",
   "meta.Sinks.Redis.FormatIgnoreParseError": "Ignore parse error",
   "meta.Sinks.Redis.FormatDataEncoding": "Data encoding",
   "meta.Sinks.Redis.DataSeparator.Space": "Space",
@@ -354,42 +301,34 @@
   "meta.Sinks.Kudu.TableName": "Table",
   "meta.Sinks.Kudu.ExtListHelper": "The DDL attribute of the Kudu table needs to be prefixed with 'ddl.'",
   "meta.Sinks.Kudu.ExtList": "Extenstion params",
-  "meta.Sinks.Kudu.DataConsistency": "DataConsistency",
+  "meta.Sinks.Kudu.DataConsistency": "Data consistency",
   "meta.Sinks.Kudu.PartitionKeyHelper": "Primary key fields need to be separated by commas",
-  "meta.Sinks.Kudu.PartitionKey": "PartitionKey",
-  "meta.Sinks.Kudu.FieldName": "FieldName",
-  "meta.Sinks.Kudu.FieldNameRule": "At the beginning of English letters, only English letters, numbers, and underscores",
-  "meta.Sinks.Kudu.FieldType": "FieldType",
-  "meta.Sinks.Kudu.PartitionStrategy": "PartitionStrategy",
-  "meta.Sinks.Kudu.FieldDescription": "FieldDescription",
+  "meta.Sinks.Kudu.PartitionKey": "Partition key",
+  "meta.Sinks.Kudu.PartitionStrategy": "Partition strategy",
   "meta.Sinks.Kudu.buckets": "Buckets",
-  "meta.Sinks.Pulsar.Tenant": "Pulsar Tenant",
+  "meta.Sinks.Pulsar.Tenant": "Pulsar tenant",
   "meta.Sinks.Pulsar.Namespace": "Namespace",
-  "meta.Sinks.Pulsar.PartitionNum": "Partition Number",
+  "meta.Sinks.Pulsar.PartitionNum": "Partition number",
   "meta.Sinks.Cls.StorageDuration": "Log save time",
   "meta.Sinks.Cls.StorageDuration.Week": "One week",
   "meta.Sinks.Cls.StorageDuration.Month": "One month",
   "meta.Sinks.Cls.StorageDuration.HalfAYear": "Half a year",
   "meta.Sinks.Cls.StorageDuration.OneYear": "One year",
   "meta.Sinks.Cls.Tag": "Tag",
-  "meta.Sinks.Cls.Tokenizer": "Tokenizer Rule",
-  "meta.Sinks.Cls.FieldName": "FieldName",
-  "meta.Sinks.Cls.FieldType": "FieldType",
-  "meta.Sinks.Cls.FieldDescription": "Field description",
-  "meta.Sinks.Cls.IsMetaField": "IsMetaField",
-  "meta.Sinks.Cls.FieldFormat": "FieldFormat",
-  "meta.Sinks.Cls.FieldNameRule": "At the beginning of lowercase letters, only lowercase letters, numbers, and underscores",
-  "meta.Group.InlongGroupId": "Inlong Group ID",
+  "meta.Sinks.Cls.Tokenizer": "Tokenizer rule",
+  "meta.Sinks.Cls.IsMetaField": "Is meta field",
+  "meta.Sinks.Cls.FieldFormat": "Field format",
+  "meta.Group.InlongGroupId": "Inlong group id",
   "meta.Group.InlongGroupIdRules": "Only English letters, numbers, dots(.), minus(-), and underscores(_)",
-  "meta.Group.InlongGroupName": "Inlong Group Name",
-  "meta.Group.InlongGroupOwners": "Inlong Group Owners",
+  "meta.Group.InlongGroupName": "Inlong group name",
+  "meta.Group.InlongGroupOwners": "Inlong group owners",
   "meta.Group.InlongGroupOwnersExtra": "Can view, modify group info",
   "meta.Group.InlongGroupIntroduction": "Description",
-  "meta.Group.MQType": "MQ Type",
-  "meta.Group.Pulsar.QueueModule": "Queue Module",
+  "meta.Group.MQType": "MQ type",
+  "meta.Group.Pulsar.QueueModule": "Queue module",
   "meta.Group.Pulsar.Parallel": "Parallel",
   "meta.Group.Pulsar.Serial": "Serial",
-  "meta.Group.Pulsar.PartitionNum": "Topic Part Nums",
+  "meta.Group.Pulsar.PartitionNum": "Topic part nums",
   "meta.Group.Pulsar.PartitionExtra": "The number of topic partitions, up to 100 can be configured",
   "meta.Group.Pulsar.EnsembleSuffix": "Number of nodes",
   "meta.Group.Pulsar.EnsembleExtra": "How many nodes are Topic saved to, up to 10 can be configured",
@@ -418,7 +357,7 @@
   "meta.Group.Status.Reject": "Reject",
   "meta.Group.Status.ConfigurationSuccess": "Success",
   "meta.Group.Status.BeSubmitted": "Be submitted",
-  "meta.Group.Status.BeApproved": "BeApproved",
+  "meta.Group.Status.BeApproved": "Be approved",
   "meta.Group.Status.ConfigurationFailed": "Configuration failed",
   "meta.Group.Status.Deleting": "Deleting",
   "meta.Group.Status.Deleted": "Deleted",
@@ -426,7 +365,7 @@
   "meta.Group.Status.Suspended": "Suspended",
   "meta.Group.Status.Restarting": "Restarting",
   "meta.Group.Status.Restarted": "Restarted",
-  "meta.Stream.StreamId": "Stream ID",
+  "meta.Stream.StreamId": "Stream id",
   "meta.Stream.StreamIdRules": "Only English letters, numbers, dots(.), minus(-), and underscores(_)",
   "meta.Stream.DataSeparator": "Source data separator",
   "meta.Stream.DataSeparator.Space": "Space",
@@ -449,40 +388,40 @@
   "meta.Stream.Status.Pending": "Pending",
   "meta.Stream.Status.Error": "Error",
   "meta.Stream.Status.Success": "Success",
-  "meta.Stream.ExecuteWorkflow": "ExecuteWorkflow",
+  "meta.Stream.ExecuteWorkflow": "Execute workflow",
   "meta.Stream.ExecuteConfirm": "Are you sure to execute the workflow?",
-  "meta.Stream.ExecuteSuccess": "Execution Success",
+  "meta.Stream.ExecuteSuccess": "Execution success",
   "meta.Stream.WrapType": "Message type",
   "meta.Stream.WrapTypeHelp": "Message body packaging type, default InLongMsg V0. Raw: No protocol packaging of the message body, InLongMsg V0: Six-stage packaging protocol, InLongMsg V1: PB packaging protocol",
   "meta.Stream.PredefinedFields": "Predefined fields",
   "meta.Transform.Name": "Transform name",
   "meta.Transform.NameRule": "Only supports letters, numbers, dots(.), minus(-), and underscores(_)",
-  "meta.Transform.Type": "Transform Type",
-  "meta.Consume.ConsumerGroupName": "Consumer Group Name",
-  "meta.Consume.TopicName": "Topic Name",
-  "meta.Consume.MQType": "MQ Type",
+  "meta.Transform.Type": "Transform type",
+  "meta.Consume.ConsumerGroupName": "Consumer group name",
+  "meta.Consume.TopicName": "Topic name",
+  "meta.Consume.MQType": "MQ type",
   "meta.Consume.ConsumerGroupNameRules": "Only lowercase letters, numbers, minus, and underscores",
-  "meta.Consume.TargetInlongGroupID": "Target Inlong Group ID",
-  "meta.Consume.TargetInlongStreamID": "Target Inlong Stream ID",
-  "meta.Consume.MQAddress": "MQ Address",
-  "meta.Consume.FilterEnabled": "Filter Enabled",
+  "meta.Consume.TargetInlongGroupID": "Target inlong group id",
+  "meta.Consume.TargetInlongStreamID": "Target inlong stream id",
+  "meta.Consume.MQAddress": "MQ address",
+  "meta.Consume.FilterEnabled": "Filter enabled",
   "meta.Consume.Yes": "Yes",
   "meta.Consume.No": "No",
-  "meta.Consume.Owner": "Subscription Owners",
+  "meta.Consume.Owner": "Subscription owners",
   "meta.Consume.OwnersExtra": "Can view, modify subscription info",
   "meta.Consume.Pulsar.isDiq": "Configure dead letter queue",
   "meta.Nodes.Name": "Name",
   "meta.Nodes.Type": "Type",
   "meta.Nodes.Owners": "Owners",
   "meta.Nodes.Description": "Description",
-  "meta.Nodes.Hive.DataPath": "DataPath",
+  "meta.Nodes.Hive.DataPath": "Data path",
   "meta.Nodes.Hive.DataPathHelp": "Storage path of the DB, excluding the table name, such as: hdfs://127.0.0.1:9000/warehouse/inlong.db",
-  "meta.Nodes.Hive.ConfDir": "ConfDir",
+  "meta.Nodes.Hive.ConfDir": "Conf dir",
   "meta.Nodes.Hive.ConfDirHelp": "Upload the hive-site.xml file of the Hive cluster to a directory in HDFS, such as: /user/hive/conf",
   "meta.Nodes.MySQL.Username": "Username",
   "meta.Nodes.MySQL.Password": "Password",
   "meta.Nodes.MySQL.Url": "URL",
-  "meta.Nodes.MySQL.BackupUrl": "Backup URL",
+  "meta.Nodes.MySQL.BackupUrl": "Backup url",
   "meta.Nodes.PostgreSQL.Username": "Username",
   "meta.Nodes.PostgreSQL.Password": "Password",
   "meta.Nodes.PostgreSQL.Url": "URL",
@@ -491,18 +430,18 @@
   "meta.Nodes.ES.Username": "Username",
   "meta.Nodes.ES.Password": "Password",
   "meta.Nodes.ES.BulkActionUnit": "Items",
-  "meta.Nodes.ES.FlushInterval": "FlushInterval",
+  "meta.Nodes.ES.FlushInterval": "Flush interval",
   "meta.Nodes.ES.FlushIntervalUnit": "S",
-  "meta.Nodes.ES.ConcurrentRequests": "ConcurrentRequests",
-  "meta.Nodes.ES.MaxConnect": "MaxConnect",
+  "meta.Nodes.ES.ConcurrentRequests": "Concurrent requests",
+  "meta.Nodes.ES.MaxConnect": "Max connect",
   "meta.Nodes.ES.KeywordMaxLength": "Max keyword length",
   "meta.Nodes.ES.IsUseIndexId": "Create index id or not",
-  "meta.Nodes.ES.MaxThreads": "MaxThreads",
+  "meta.Nodes.ES.MaxThreads": "Max threads",
   "meta.Nodes.Iceberg.Username": "Username",
   "meta.Nodes.Iceberg.Password": "Password",
   "meta.Nodes.Iceberg.Url": "URL",
   "meta.Nodes.Iceberg.Warehouse": "Warehouse",
-  "meta.Nodes.Iceberg.CatalogType": "Catalog Type",
+  "meta.Nodes.Iceberg.CatalogType": "Catalog type",
   "meta.Nodes.ClickHouse.Username": "Username",
   "meta.Nodes.ClickHouse.Password": "Password",
   "meta.Nodes.ClickHouse.Url": "URL",
@@ -512,36 +451,36 @@
   "meta.Nodes.Hive.Username": "Username",
   "meta.Nodes.Hive.Password": "Password",
   "meta.Nodes.Redis.Database": "Database",
-  "meta.Nodes.Redis.clusterMode": "ClusterMode",
+  "meta.Nodes.Redis.clusterMode": "Cluster mode",
   "meta.Nodes.Redis.Host": "Host",
   "meta.Sinks.Redis.Port": "port",
-  "meta.Nodes.Redis.MasterName": "Sentinel Master",
-  "meta.Nodes.Redis.SentinelsInfo": "Sentinels Info",
-  "meta.Nodes.Redis.ClusterNodes": "Cluster Nodes",
-  "meta.Nodes.Redis.ClusterMode": "Cluster Mode",
-  "meta.Nodes.Redis.ClusterModeHelper": "Please select Cluster Mode",
+  "meta.Nodes.Redis.MasterName": "Sentinel master",
+  "meta.Nodes.Redis.SentinelsInfo": "Sentinels info",
+  "meta.Nodes.Redis.ClusterNodes": "Cluster nodes",
+  "meta.Nodes.Redis.ClusterMode": "Cluster mode",
+  "meta.Nodes.Redis.ClusterModeHelper": "Please select custer mode",
   "meta.Nodes.Redis.PortHelper": "Please select Redis server port, default: 6379",
   "meta.Nodes.Redis.Password": "Password",
   "meta.Nodes.Redis.Url": "URL",
   "meta.Nodes.Hudi.Username": "Username",
   "meta.Nodes.Hudi.Password": "Password",
   "meta.Nodes.Hudi.Url": "URL",
-  "meta.Nodes.Hudi.CatalogType": "Catalog Type",
+  "meta.Nodes.Hudi.CatalogType": "Catalog type",
   "meta.Nodes.Hudi.Warehouse": "Warehouse",
   "meta.Nodes.Kudu.masters": "Masters",
-  "meta.Nodes.Kudu.DefaultAdminOperationTimeoutMs": "AdminOperationTimeout(ms)",
-  "meta.Nodes.Kudu.DefaultOperationTimeoutMs": "OperationTimeout(ms)",
-  "meta.Nodes.Kudu.DefaultSocketReadTimeoutMs": "SocketReadTimeout(ms)",
-  "meta.Nodes.Kudu.StatisticsDisabled": "DisabledStatistics",
-  "meta.Nodes.Cls.MainAccountId": "Main Account Id",
-  "meta.Nodes.Cls.SubAccountId": "Sub Account Id",
-  "meta.Nodes.Cls.SendSecretKey": "Send SecretKey",
-  "meta.Nodes.Cls.SendSecretId": "Send SecretId",
-  "meta.Nodes.Cls.ManageSecretKey": "Manage SecretKey",
-  "meta.Nodes.Cls.ManageSecretId": "Manage Secret Id",
+  "meta.Nodes.Kudu.DefaultAdminOperationTimeoutMs": "Admin operation timeout(ms)",
+  "meta.Nodes.Kudu.DefaultOperationTimeoutMs": "Operation timeout(ms)",
+  "meta.Nodes.Kudu.DefaultSocketReadTimeoutMs": "Socket read timeout(ms)",
+  "meta.Nodes.Kudu.StatisticsDisabled": "Disabled statistics",
+  "meta.Nodes.Cls.MainAccountId": "Main account id",
+  "meta.Nodes.Cls.SubAccountId": "Sub account id",
+  "meta.Nodes.Cls.SendSecretKey": "Send secretKey",
+  "meta.Nodes.Cls.SendSecretId": "Send secretId",
+  "meta.Nodes.Cls.ManageSecretKey": "Manage secretKey",
+  "meta.Nodes.Cls.ManageSecretId": "Manage secret Id",
   "meta.Nodes.Cls.Endpoint": "Endpoint",
   "meta.Nodes.Cls.Region": "Service region",
-  "meta.Nodes.Cls.LogSetId": "Log Set Id",
+  "meta.Nodes.Cls.LogSetId": "Log set id",
   "components.EditableTable.NewLine": "New line",
   "components.EditableTable.BatchParseField": "Batch add",
   "components.EditableTable.DeleteAll": "Delete all",
@@ -559,8 +498,8 @@
   "components.FormGenerator.plugins.PleaseInput": "Please input",
   "components.TextSwitch.Title": "Advanced options",
   "components.Layout.NavWidget.Logout": "Logout",
-  "components.Layout.NavWidget.EditPassword": "EditPassword",
-  "components.Layout.NavWidget.PersonalKey": "PersonalKey",
+  "components.Layout.NavWidget.EditPassword": "Edit password",
+  "components.Layout.NavWidget.PersonalKey": "Personal key",
   "components.Layout.NavWidget.Password": "Old password",
   "components.Layout.NavWidget.NewPassword": "New password",
   "components.Layout.NavWidget.ConfirmPassword": "Confirm password",
@@ -579,18 +518,18 @@
   "pages.GroupDashboard.ExecutionLogModal.TaskType": "Task type",
   "pages.GroupDashboard.ExecutionLogModal.ConfirmThatItIsRe-executed": "Confirm that it is re-executed?",
   "pages.GroupDashboard.ExecutionLogModal.CarriedOut": "Carried out",
-  "pages.GroupDashboard.ExecutionLogModal.EndTime": "End Time",
+  "pages.GroupDashboard.ExecutionLogModal.EndTime": "End time",
   "pages.GroupDashboard.ExecutionLogModal.Processing": "Processing",
   "pages.GroupDashboard.ExecutionLogModal.ExecuteLog": "Execute log",
-  "pages.GroupDashboard.ExecutionLogModal.RunResults": "RunResults",
+  "pages.GroupDashboard.ExecutionLogModal.RunResults": "Run results",
   "pages.GroupDashboard.ExecutionLogModal.Success": "Success",
   "pages.GroupDashboard.ExecutionLogModal.Skip": "Jump over",
   "pages.GroupDashboard.ExecutionLogModal.Fail": "Failure",
   "pages.GroupDashboard.config.Total": "Total",
-  "pages.GroupDashboard.config.WaitAssignCount": "WaitAssignCount",
-  "pages.GroupDashboard.config.WaitApproveCount": "WaitApproveCount",
+  "pages.GroupDashboard.config.WaitAssignCount": "Wait assign count",
+  "pages.GroupDashboard.config.WaitApproveCount": "Wait approve count",
   "pages.GroupDashboard.config.Reject": "Reject",
-  "pages.GroupDashboard.config.ExecuteLog": "ExecuteLog",
+  "pages.GroupDashboard.config.ExecuteLog": "Execute log",
   "pages.GroupDashboard.config.Restart": "Restart",
   "pages.GroupDashboard.config.Stop": "Stop",
   "pages.GroupDashboard.ConfirmDelete": "Confirm delete?",
@@ -614,7 +553,7 @@
   "pages.GroupDetail.Sources.SaveSuccessfully": "Save successfully",
   "pages.GroupDetail.Sources.DeleteConfirm": "Delete confirm",
   "pages.GroupDetail.Sources.DeleteSuccessfully": "Delete successfully",
-  "pages.GroupDetail.Sources.DataStreams": "DataStreams",
+  "pages.GroupDetail.Sources.DataStreams": "Data streams",
   "pages.GroupDetail.Sources.Create": "Create",
   "pages.GroupDetail.Sources.Edit": "Edit",
   "pages.GroupDetail.Sources.status.Disable": "Disable",
@@ -622,20 +561,20 @@
   "pages.GroupDetail.Sources.status.Failure": "Failure",
   "pages.GroupDetail.Sources.status.Frozen": "Stop",
   "pages.GroupDetail.Sources.status.New": "New",
-  "pages.GroupDetail.Sources.status.TobeAdd": "ToBeAdd",
-  "pages.GroupDetail.Sources.status.TobeDelete": "ToBeDelete",
-  "pages.GroupDetail.Sources.status.TobeRetry": "ToBeRetry",
-  "pages.GroupDetail.Sources.status.TobeFrozen": "ToBeStop",
-  "pages.GroupDetail.Sources.status.TobeActive": "ToBeRestart",
-  "pages.GroupDetail.Sources.status.BeenAdd": "BeenAdd",
-  "pages.GroupDetail.Sources.status.BeenDelete": "BeenDelete",
-  "pages.GroupDetail.Sources.status.BeenRetry": "BeenRetry",
-  "pages.GroupDetail.Sources.status.BeenFrozen": "BeenStop",
-  "pages.GroupDetail.Sources.status.BeenActive": "BeenRestart",
+  "pages.GroupDetail.Sources.status.TobeAdd": "To be add",
+  "pages.GroupDetail.Sources.status.TobeDelete": "To be delete",
+  "pages.GroupDetail.Sources.status.TobeRetry": "To be retry",
+  "pages.GroupDetail.Sources.status.TobeFrozen": "To be stop",
+  "pages.GroupDetail.Sources.status.TobeActive": "To be restart",
+  "pages.GroupDetail.Sources.status.BeenAdd": "Been add",
+  "pages.GroupDetail.Sources.status.BeenDelete": "Been delete",
+  "pages.GroupDetail.Sources.status.BeenRetry": "Been retry",
+  "pages.GroupDetail.Sources.status.BeenFrozen": "Been stop",
+  "pages.GroupDetail.Sources.status.BeenActive": "Been restart",
   "pages.GroupDetail.Sink.New": "Create",
   "pages.GroupDetail.Sink.Edit": "Edit",
   "pages.GroupDetail.Sink.Type": "Type",
-  "pages.GroupDetail.Sink.DataStreams": "DataStreams",
+  "pages.GroupDetail.Sink.DataStreams": "Data streams",
   "pages.GroupDetail.Sink.Status.New": "New",
   "pages.GroupDetail.Sink.Status.Pending": "Pending",
   "pages.GroupDetail.Sink.Status.Error": "Error",
@@ -645,15 +584,15 @@
   "pages.GroupDetail.Sink.SaveAndRefresh": "Save and submit the process",
   "pages.GroupDetail.Stream.StreamConfigTitle": "Data stream configuration",
   "pages.GroupDetail.Stream.CreateDataStream": "Create",
-  "pages.GroupDetail.Info": "Group Info",
+  "pages.GroupDetail.Info": "Group info",
   "pages.GroupDetail.Streams": "Streams",
   "pages.GroupDetail.Sources": "Sources",
   "pages.GroupDetail.Sinks": "Sinks",
   "pages.GroupDetail.Audit": "Audit",
-  "pages.GroupDetail.Delay": "Transmission Delay",
-  "pages.GroupDetail.Resource": "Resource Detail",
+  "pages.GroupDetail.Delay": "Transmission delay",
+  "pages.GroupDetail.Resource": "Resource detail",
   "pages.GroupDetail.Resource.Info": " Info",
-  "pages.GroupDetail.Audit.DataStream": "DataStream",
+  "pages.GroupDetail.Audit.DataStream": "Data stream",
   "pages.GroupDetail.Audit.StartDate": "Start Date",
   "pages.GroupDetail.Audit.EndDate": "End Date",
   "pages.GroupDetail.Audit.AuditIds": "Contents",
@@ -661,23 +600,23 @@
   "pages.GroupDetail.Audit.Time": "Time",
   "pages.GroupDetail.Audit.Receive": "Receive",
   "pages.GroupDetail.Audit.Send": "Send",
-  "pages.GroupDetail.Audit.TimeStaticsDim": "TimeStaticsDim",
+  "pages.GroupDetail.Audit.TimeStaticsDim": "Time statics dim",
   "pages.GroupDetail.Audit.Min": "Minute",
   "pages.GroupDetail.Audit.Hour": "Hour",
   "pages.GroupDetail.Audit.Day": "Day",
   "pages.GroupDetail.Audit.Sink": "Sink",
-  "pages.GroupDetail.Delay.QueryDate": "Query Date",
-  "pages.GroupDetail.Delay.AverageTitle": "Average Transmission Delay (ms)",
-  "pages.GroupDetail.Delay.RealTimeTitle": "Transmission Delay (ms)",
-  "pages.GroupDetail.Stream.Preview": "Data Preview",
-  "pages.GroupDetail.Stream.Dt": "Data Time(dt)",
-  "pages.GroupDetail.Stream.Content": "Data Content",
-  "pages.GroupDetail.Stream.Number": "Records Number",
-  "pages.ApprovalDetail.GroupConfig.DataStorages": "DataStorages",
+  "pages.GroupDetail.Delay.QueryDate": "Query date",
+  "pages.GroupDetail.Delay.AverageTitle": "Average transmission delay (ms)",
+  "pages.GroupDetail.Delay.RealTimeTitle": "Transmission delay (ms)",
+  "pages.GroupDetail.Stream.Preview": "Data preview",
+  "pages.GroupDetail.Stream.Dt": "Data time(dt)",
+  "pages.GroupDetail.Stream.Content": "Data content",
+  "pages.GroupDetail.Stream.Number": "Records number",
+  "pages.ApprovalDetail.GroupConfig.DataStorages": "Data storages",
   "pages.ApprovalDetail.GroupConfig.ApprovalInformation": "Approval information",
   "pages.ApprovalDetail.GroupConfig.DataFlowInformation": "Data stream information",
   "pages.ApprovalDetail.GroupConfig.BindClusterTag": "Cluster tag",
-  "pages.ApprovalDetail.GroupConfig.DataReportType": "ReportDataTo",
+  "pages.ApprovalDetail.GroupConfig.DataReportType": "Report data",
   "pages.ApprovalDetail.GroupConfig.DataReportType.DataProxyWithSource": "Report to DataProxy and respond when the DataProxy received data",
   "pages.ApprovalDetail.GroupConfig.DataReportType.DataProxyWithSink": "Report to DataProxy and respond after DataProxy sends data",
   "pages.ApprovalDetail.GroupConfig.DataReportType.MQ": "Report to MQ and respond when the MQ received data",
@@ -727,26 +666,26 @@
   "pages.ConsumeCreate.Next": "Next",
   "pages.ConsumeCreate.Submit": "Submit",
   "pages.ConsumeCreate.Back": "Back",
-  "pages.ConsumeCreate.NewSubscribe": "NewSubscribe",
+  "pages.ConsumeCreate.NewSubscribe": "New subscribe",
   "pages.ConsumeDashboard.config.BeAllocated": "Be allocated",
   "pages.ConsumeDashboard.config.ApplicationStatus": "Application status",
   "pages.ConsumeDashboard.config.Reject": "Reject",
   "pages.ConsumeDashboard.config.OperatingStatus": "Operating status",
   "pages.ConsumeDashboard.config.Total": "Total",
   "pages.ConsumeDashboard.config.Pending": "Pending",
-  "pages.ConsumeDashboard.config.ConsumerGroup": "ConsumerGroup",
-  "pages.ConsumeDashboard.config.ConsumeInlongGroupId": "Target Inlong Group ID",
+  "pages.ConsumeDashboard.config.ConsumerGroup": "Consumer group",
+  "pages.ConsumeDashboard.config.ConsumeInlongGroupId": "Target inlong group id",
   "pages.ConsumeDashboard.config.RecentConsumeTime": "Recent consume time",
-  "pages.ConsumeDashboard.config.Middleware": "Message Queue",
+  "pages.ConsumeDashboard.config.Middleware": "Message queue",
   "pages.ConsumeDashboard.status.Normal": "Normal",
   "pages.ConsumeDashboard.status.Abnormal": "Abnormal",
   "pages.ConsumeDashboard.status.Shield": "Shield",
-  "pages.ConsumeDashboard.status.NoStatus": "NoStatus",
+  "pages.ConsumeDashboard.status.NoStatus": "No status",
   "pages.ConsumeDashboard.status.Passed": "Passed",
   "pages.ConsumeDashboard.status.Cancelled": "Cancelled",
   "pages.ConsumeDashboard.NewSubscribe": "Create",
-  "pages.ConsumeDetail.SubscribeDetails": "Subscription Detail",
-  "pages.ConsumeDetail.ClusterInfo": "ClusterInfo:",
+  "pages.ConsumeDetail.SubscribeDetails": "Subscription detail",
+  "pages.ConsumeDetail.ClusterInfo": "Cluster info:",
   "pages.Clusters.Type": "Type",
   "pages.Clusters.TypeAll": "All",
   "pages.Clusters.Create": "Create",
@@ -756,10 +695,10 @@
   "pages.Clusters.Tag": "Cluster Tag",
   "pages.Clusters.InCharges": "Owners",
   "pages.Clusters.Description": "Description",
-  "pages.Clusters.TestConnection": "Test Connection",
+  "pages.Clusters.TestConnection": "Test connection",
   "pages.Clusters.Node.Name": "Node",
   "pages.Clusters.Node.Port": "Port",
-  "pages.Clusters.Node.ProtocolType": "Protocol Type",
+  "pages.Clusters.Node.ProtocolType": "Protocol type",
   "pages.Clusters.Node.Status": "Status",
   "pages.Clusters.Node.Status.Normal": "Normal",
   "pages.Clusters.Node.Status.Timeout": "Timeout",
@@ -768,19 +707,19 @@
   "pages.Clusters.Node.IpRule": "Please enter the IP address correctly",
   "pages.Clusters.Node.PortRule": "Please enter the port address correctly",
   "pages.Clusters.Node.ProtocolTypeRule": "Please enter the protocol type correctly",
-  "pages.Clusters.Pulsar.Tenant": "Default Tenant",
+  "pages.Clusters.Pulsar.Tenant": "Default tenant",
   "pages.Clusters.Pulsar.TokenPlaceholder": "Required if the cluster is configured with Token",
-  "pages.Clusters.Kafka.ClusterUrl": "Cluster URL",
+  "pages.Clusters.Kafka.ClusterUrl": "Cluster url",
   "pages.Clusters.Pulsar.ServiceUrlHelper": "For producing and consuming data",
   "pages.Clusters.Pulsar.AdminUrlHelper": "Used to manage (e.g. create, modify) tenants, namespaces, topics and subscription groups",
   "pages.Clusters.Tube.MasterRpcUrlHelper": "Master RPC URL, used to produce and consume data",
   "pages.Clusters.Tube.MasterWebUrlHelper": "Master Web URL, used to manage (e.g. create, modify) topics and consumer groups",
-  "pages.ClusterTags.Name": "ClusterTag",
+  "pages.ClusterTags.Name": "Cluster tag",
   "pages.ClusterTags.InCharges": "Owners",
   "pages.ClusterTags.Description": "Description",
-  "pages.ClusterTags.ModifyTime": "ModifyTime",
+  "pages.ClusterTags.ModifyTime": "Modify time",
   "pages.ClusterTags.Modifier": "Modifier",
-  "pages.ClusterTags.BindCluster": "BindCluster",
+  "pages.ClusterTags.BindCluster": "Bind cluster",
   "pages.ClusterTags.DelCluster": "Unbind",
   "pages.ClusterTags.DelClusterConfirm": "Are you sure you want to unbind?",
   "pages.ClusterTags.DelClusterSuccess": "Unbind successfully",
@@ -802,27 +741,27 @@
   "pages.UserManagement.config.UserName": "Username",
   "pages.UserManagement.config.GeneralUser": "General user",
   "pages.UserManagement.config.Creator": "Creator name",
-  "pages.UserManagement.config.CreateTime": "Create Time",
-  "pages.UserManagement.config.AccountRole": "Account Role",
+  "pages.UserManagement.config.CreateTime": "Create time",
+  "pages.UserManagement.config.AccountRole": "Account role",
   "pages.UserManagement.status.Normal": "Normal",
   "pages.UserManagement.status.Fail": "Fail",
   "pages.UserManagement.CreateAccount": "Create",
-  "pages.ApprovalManagement.ProcessName": "Process Name",
-  "pages.ApprovalManagement.TaskName": "Task Name",
+  "pages.ApprovalManagement.ProcessName": "Process nName",
+  "pages.ApprovalManagement.TaskName": "Task name",
   "pages.ApprovalManagement.Approvers": "Approvers",
-  "pages.ApprovalManagement.Creator": "Creator Name",
-  "pages.ApprovalManagement.Modifier": "Modifier Name",
-  "pages.ApprovalManagement.CreateProcess": "Create Process",
-  "pages.Nodes.TestConnection": "Test Connection",
+  "pages.ApprovalManagement.Creator": "Creator name",
+  "pages.ApprovalManagement.Modifier": "Modifier name",
+  "pages.ApprovalManagement.CreateProcess": "Create process",
+  "pages.Nodes.TestConnection": "Test connection",
   "pages.SynchronizeDetail.Info": "Info",
-  "pages.SynchronizeDetail.SourceAndSink": "DataStream",
+  "pages.SynchronizeDetail.SourceAndSink": "Data stream",
   "pages.SynchronizeDetail.Audit": "Audit",
   "pages.SynchronizeDashboard.Create": "Create",
   "pages.SynchronizeDashboard.config.Total": "Total",
-  "pages.SynchronizeDashboard.config.WaitAssignCount": "WaitAssignCount",
-  "pages.SynchronizeDashboard.config.WaitApproveCount": "WaitApproveCount",
+  "pages.SynchronizeDashboard.config.WaitAssignCount": "Wait assign count",
+  "pages.SynchronizeDashboard.config.WaitApproveCount": "Wait approve count",
   "pages.SynchronizeDashboard.config.Reject": "Reject",
-  "pages.SynchronizeDashboard.config.ExecuteLog": "ExecuteLog",
+  "pages.SynchronizeDashboard.config.ExecuteLog": "Execute log",
   "pages.SynchronizeDashboard.config.Restart": "Restart",
   "pages.SynchronizeDashboard.config.Stop": "Stop",
   "pages.SynchronizeDashboard.Info.NextStep": "Next",
@@ -834,7 +773,7 @@
   "pages.SynchronizeDetail.Info.CheckMsg": "Please check the form",
   "pages.SynchronizeDetail.Info.Previous": "Previous",
   "pages.SynchronizeDetail.Info.Create": "Create",
-  "pages.SynchronizeDetail.Sources.SavePrompt": "Save Success",
+  "pages.SynchronizeDetail.Sources.SavePrompt": "Save success",
   "pages.SynchronizeDetail.Sync.Transform": "Transform",
   "pages.SynchronizeDetail.Transform": "Transform",
   "pages.SynchronizeDetail.Transform.Create": "Create",
@@ -858,15 +797,15 @@
   "pages.SynchronizeDetail.Transform.Type.Field": "Field",
   "pages.SynchronizeDetail.Transform.Type.CustomValue": "Custom value",
   "pages.SynchronizeDetail.Transform.ComparisonValue": "Comparison value",
-  "components.FieldList.AddField": "Add Field",
+  "components.FieldList.AddField": "Add field",
   "pages.Tenant.config.Description": "Description",
-  "pages.Tenant.config.Name": "Tenant Name",
+  "pages.Tenant.config.Name": "Tenant name",
   "pages.Tenant.New": "Create",
   "pages.TenantRole.New": "Create",
-  "pages.Tenant.config.Username": "User Name",
-  "pages.Tenant.config.TenantRole": "Tenant Role",
-  "pages.Tenant.config.Admin": "Tenant Admin",
-  "pages.Tenant.config.GeneralUser": "General User",
+  "pages.Tenant.config.Username": "Username",
+  "pages.Tenant.config.TenantRole": "Tenant role",
+  "pages.Tenant.config.Admin": "Tenant admin",
+  "pages.Tenant.config.GeneralUser": "General user",
   "pages.Tenant.config.Creator": "Creator",
-  "pages.Tenant.config.CreateTime": "Create Time"
+  "pages.Tenant.config.CreateTime": "Create time"
 }