全部產品
Search
文件中心

OpenSearch:DataSource

更新時間:Jul 13, 2024

描述

資料來源資訊

樣本

{
  "tableName": "news",
  "type": "rds",
  "fields": [
    {
      "id": "id"
    },
    {
      "caption": "caption"
    },
    {
      "content": "content"
    },
    {
      "categoryId": "category_id"
    }
  ],
  "plugins": {
    "caption": {
      "name": "HTMLTagRemover",
      "parameters": {}
    },
    "content": {
      "name": "HTMLTagRemover",
      "parameters": {}
    }
  },
  "keyField": "id",
  "parameters": {
    "filter": "",
    "instanceId": "rm-abc",
    "dbName": "my_db",
    "dbTableName": "my_table",
    "dbUser": "my_user",
    "dbPassword": "my-password",
    "autoSync": true
  }
}

結構

欄位

類型

描述

tableName

String

表名

type

String

資料來源類型- rds- odps- opensearch-polardb

fields[]

Object

表欄位對應資訊{key:value},key:資料來源表欄位,value:應用表欄位。

plugins

Object

欄位資料處理外掛程式

plugins.*

Object

外掛程式詳情,具體說明查看下文Plugin*:欄位名

keyField

String

主鍵

parameters

Object

資料來源資訊不同資料來源的配置資訊各不相同,具體說明查看相關下文:

rds

odps

opensearch

polardb

Plugin

樣本

{
  "name": "HTMLTagRemover",
  "parameters": {}
}

結構

欄位

類型

描述

name

String

外掛程式名稱- JsonKeyValueExtractor- MultiValueSpliter- KeyValueExtractor- StringCatenateExtractor- HTMLTagRemover

parameters

Object

外掛程式參數不同外掛程式的參數各不相同,具體說明查看相關下文:

JsonKeyValueExtractor

MultiValueSpliter

KeyValueExtractor

StringCatenateExtractor

HTMLTagRemover

JsonKeyValueExtractor

從JSON格式的來源欄位中提取指定的索引值,提取出來的索引值作為目標表欄位的內容,只能抽取某個key中的值。樣本

{
  "key": "my_field"
}

結構

欄位

類型

描述

key

String

鍵名

MultiValueSpliter

將來源欄位按照分隔字元分割成多個值,分割後的內容作為目標表欄位的內容,目標表欄位必須是配置為ARRAY類型的欄位(若分隔字元為不可見字元,需要使用unicode字元來標識,如\u001D)。樣本

{
  "seperator": "|"
}

結構

欄位

類型

描述

seperator

String

分隔字元

KeyValueExtractor

從KV格式的來源欄位中提取指定的索引值,提取出來的索引值作為目標表欄位的內容,只能抽取某個key中的值。分隔字元可以不填。樣本

{
  "key": "my_field",
  "fieldSep": ";",
  "kvSep": ":"
}

結構

欄位

類型

描述

key

String

fieldSep

String

鍵分隔字元

kvSep

String

索引值分隔字元

StringCatenateExtractor

將多個指定欄位按照指定的順序拼接成一個字串,該外掛程式不支援int欄位類型,建議用literal欄位類型;欄位列表以逗號分隔(欄位需來自於目標欄位)。樣本

{
  "connector": "-",
  "sources": "id,title"
}

結構

欄位

類型

描述

connector

String

串連符

sources

String

指定的多個欄位

HTMLTagRemover

剔除來源欄位中的HTML標籤,剔除標籤後的內容複寫到當前欄位,源欄位配置為當前欄位則做內容替換。註:此外掛程式不需要額外參數。

rds

樣本

{
  "instanceId": "rds-instance-id",
  "dbName": "my_db",
  "dbTableName": "my_table",
  "dbUser": "my",
  "dbPassword": "my_passwd",
  "filter":"",
  "autoSync": true
}

結構

欄位

類型

描述

instanceId

String

執行個體ID

dbName

String

資料庫名

dbTableName

String

資料庫表名

dbUser

String

資料庫帳號

dbPassword

String

資料庫帳號密碼

filter

String

過濾條件目前支援的條件有<, >, =, !=, >=, <=,多個條件用’,’分隔

autoSync

Boolean

是否資料自動同步- true 是- false 否

odps

樣本

{
  "projectName": "my_project",
  "tableName": "my_table",
  "partition": "",
  "done": "no",
  "donePrefix": "",
  "timestamp":""
}

結構

欄位

類型

描述

projectName

String

專案名稱

tableName

String

表名

partition

String

分區資訊參考:ODPS資料來源配置

done

String

是否使用done檔案- no- yes

donePrefix

String

done檔案首碼註:當done=”yes”時必填

timestamp

String

全量資料的時間戳記

opensearch

樣本

{
  "appId": "12345678",
  "tableName": "my_table",
  "appType": "standard",
  "filter": ""
}

結構

欄位

類型

描述

appId

String

應用ID

tableName

String

應用表名

appType

String

應用類型- standard 標準版- advance 老進階版(新應用不支援此類型)- enhanced 新進階版

filter

String

過濾條件目前支援的條件有<, >, =, !=, >=, <=,多個條件用’,’分隔

polardb

樣本

{
  "clusterId": "my_cluster_id",
  "dbName": "my_db",
  "dbTableName": "my_table",
  "aliyunUserId":"123455789",
  "dbUser":"my_user",
  "dbPassword":"my_passwd",
  "autoSync":true,
  "filter": "id>100"
}

結構

欄位

類型

描述

clusterId

String

叢集ID

dbName

String

資料庫名

dbTableName

String

資料表名

aliyunUserId

String

阿里雲使用者ID

dbUser

String

資料庫帳號

dbPassword

String

資料庫帳號密碼

autoSync

Boolean

是否資料自動同步- true 是- false 否

filter

String

過濾條件目前支援的條件有<, >, =, !=, >=, <=,多個條件用’,’分隔