# TaCustomReaderプラグイン
# 一、紹介する
TaCustomReaderプラグインは、TEからデータを読み取るためにDataXを実装します。基礎となる実装では、TaCustomReaderはJDBCを介してリモートTEデータベースに接続し、適切なsql文を実行してTEライブラリからデータをSELECTします。
# 二、実現原理
簡単に言うと、TaCustomReaderはJDBCコネクタを介してリモートのTEデータベースに接続し、ユーザー設定の情報に基づいてクエリSELECT SQL文を生成してTEクラスタに送信し、そのSQL実行の結果をDataXカスタムのデータ型を使用して抽象データセットに組み立て、下流のWriter処理に渡します。
# 三、機能説明
# 3.1構成サンプル
TEクラスタから読み取りデータをコンソールに印刷するジョブを構成します。
{
"job": {
"setting": {
"speed": {
"channel": 1
}
},
"content": [
{
"reader": {
"name": "ta-custom-reader",
"parameter": {
"querySql": "select * from v_event_1 where \"$part_date\" = '2020-01-01'"
}
},
"writer": {
"name": "streamwriter",
"parameter": {
"print": true,
"encoding": "UTF-8"
}
}
}
]
}
}
# 3.2パラメータの説明
- サーバー
- 説明:エンドTEデータベースへの接続情報、SERVER: PORT形式。
- 必須:いいえ
- 既定値:同期クラスター構成
- クエリスカル
- 説明:一部のビジネスシナリオでは、ユーザーはこの構成でフィルターSQLをカスタマイズできます。ユーザーがこの項目を構成した後、この構成項目の内容を直接使用してデータを選別します。たとえば、マルチテーブルjoin後にデータを同期する必要があり
select a, b from table_a join table_b ontable_a.id=table_b.id
- 必須:はい
- デフォルト:なし
- 説明:一部のビジネスシナリオでは、ユーザーはこの構成でフィルターSQLをカスタマイズできます。ユーザーがこの項目を構成した後、この構成項目の内容を直接使用してデータを選別します。たとえば、マルチテーブルjoin後にデータを同期する必要があり
# 3.3タイプ変換
現在、TaCustomReaderはほとんどのPrestoタイプをサポートしていますが、一部の個々のタイプがサポートしていない場合もありますので、タイプを確認してください。
以下に、TEリーダーがTEクラスターで使用するプレストタイプ変換のリストを示します。
DataX内部型 | Prestoデータ型 |
---|---|
ロング | TINYINT, SMALLINT, INTEGER, BIGINT |
ダブル | リアル、ダブル、デシマル |
弦 | VARCHAR, CHAR, VARBINARY, JSON |
日付 | 日付、時間、タイムスタンプ |
ブール型 | ブーリアン |
**注意:**上記の列フィールドタイプ以外はサポートされていません