Microsoft SQL Server 入力コンポーネントは、Microsoft SQL Server データソースからデータを読み取ります。 Microsoft SQL Server データソースから他のデータソースにデータを同期する必要がある場合は、まず Microsoft SQL Server 入力コンポーネントを構成してデータソースを読み取り、次にデータ同期のターゲットデータソースを構成する必要があります。 このトピックでは、Microsoft SQL Server 入力コンポーネントを構成する方法について説明します。
前提条件
Microsoft SQL Server データソースが作成されていること。 詳細については、「Microsoft SQL Server データソースを作成する」をご参照ください。
Microsoft SQL Server 入力コンポーネントのプロパティを構成するために使用されるアカウントが、データソースに対するリードスルー権限を持っていること。 権限がない場合は、データソース権限をリクエストする必要があります。 詳細については、「データソース権限のリクエスト、更新、および返却」をご参照ください。
手順
Dataphin ホームページの上部ナビゲーションバーで、[開発] > [Data Integration] を選択します。
前提条件
左側のナビゲーションウィンドウで、[バッチパイプライン] をクリックします。 [バッチパイプライン]オフライン パイプライン リストで、開発するオフラインパイプラインをクリックして、構成ページを開きます。
ページの右上隅にある [コンポーネントライブラリ] をクリックして、[コンポーネントライブラリ] パネルを開きます。
[コンポーネントライブラリ] パネルの左側のナビゲーションウィンドウで、[入力] を選択します。 右側の入力コンポーネントリストで [Microsoft SQL Server] コンポーネントを見つけ、キャンバスにドラッグします。
Microsoft SQL Server 入力コンポーネントカードの
アイコンをクリックして、[Microsoft SQL Server] [入力構成] ダイアログボックスを開きます。[Microsoft SQL Server 入力構成] ダイアログボックスで、パラメーターを構成します。
パラメーター
説明
ステップ名
Microsoft SQL Server 入力コンポーネントの名前。 Dataphin は自動的にステップ名を生成します。これはビジネスシナリオに基づいて変更できます。 名前は次の要件を満たしている必要があります。
中国語の文字、英字、アンダースコア(_)、および数字のみを含めることができます。
最大 64 文字まで入力できます。
データソース
データソースのドロップダウンリストには、リードスルー権限を持っているデータソースと持っていないデータソースを含め、すべての Microsoft SQL Server データソースが表示されます。
アイコンをクリックして、現在のデータソース名をコピーします。 リードスルー権限を持っていないデータソースの場合、データソースの後に [リクエスト] をクリックして、データソースのリードスルー権限をリクエストできます。 詳細については、「データソース権限のリクエスト、更新、および返却」をご参照ください。
Microsoft SQL Server データソースがない場合は、[データソースの作成] をクリックして作成します。 詳細については、「Microsoft SQL Server データソースを作成する」をご参照ください。
タイムゾーン
時間形式のデータが処理される基準となるタイムゾーン。 デフォルトは、選択したデータソースで構成されているタイムゾーンで、変更できません。
説明V5.1.2 より前に作成されたタスクの場合、[デフォルトのデータソース構成] または [チャネル構成タイムゾーン] を選択できます。 デフォルトは [チャネル構成タイムゾーン] です。
デフォルトのデータソース構成: 選択したデータソースのデフォルトのタイムゾーン。
チャネル構成タイムゾーン: 現在の統合タスクの [プロパティ] > [チャネル構成] で構成されているタイムゾーン。
スキーマ (オプション)
クロススキーマテーブルの選択をサポートします。 テーブルが配置されているスキーマを選択します。 指定しない場合、デフォルトはデータソースで構成されているスキーマです。
ソーステーブル数量
ソーステーブル数量を選択します。 オプションには、[単一テーブル] と [複数テーブル] が含まれます。
単一テーブル: 1 つのテーブルのビジネスデータをターゲットテーブルに同期する場合に適用されます。
複数テーブル: 複数テーブルのビジネスデータを同じターゲットテーブルに同期する場合に適用されます。 複数テーブルのデータが同じデータテーブルに書き込まれる場合、ユニオンアルゴリズムが使用されます。
テーブル
ソーステーブルを選択します。
[ソーステーブル数量] で [単一テーブル] を選択した場合、キーワードを入力してテーブルを検索するか、正確なテーブル名を入力して [完全一致] をクリックできます。 テーブルを選択すると、システムは自動的にテーブルステータスをチェックします。
アイコンをクリックして、現在選択されているテーブルの名前をコピーします。[ソーステーブル] で [複数テーブル] を選択した場合、次の操作を実行してテーブルを追加します。
入力ボックスにテーブル式を入力して、同じ構造のテーブルをフィルタリングします。
システムは、列挙、正規表現のような形式、および両方の組み合わせをサポートしています。 たとえば、
table_[001-100];table_102です。[完全一致] をクリックします。 [一致の詳細の確認] ダイアログボックスで、一致したテーブルのリストを表示します。
[OK] をクリックします。
シャードキー (オプション)
システムは、構成されたシャードキーフィールドに基づいてデータをシャーディングします。これは、同時実行構成と組み合わせて使用して、同時読み取りを実装できます。 ソースデータテーブルの列をシャードキーとして使用できます。 伝送パフォーマンスを確保するために、プライマリキーまたはインデックス付きの列をシャードキーとして使用することをお勧めします。
重要日付時刻タイプを選択すると、システムは最大値と最小値を識別し、合計時間範囲と同時実行性に基づいて強制シャーディングを実行します。 均等な分散は保証されません。
バッチ読み取りカウント (オプション)
一度に読み取るレコードの数。 ソースデータベースからデータを読み取るときに、レコードを 1 つずつ読み取る代わりに、特定のバッチ読み取りカウント ( 1,024 レコードなど) を構成できます。 これにより、データソースとの対話の回数が減り、I/O 効率が向上し、ネットワークレイテンシが軽減されます。
入力フィルター (オプション)
入力フィールドのフィルター情報を入力します。たとえば、
ds=${bizdate}です。 入力フィルター は、次の 2 つのシナリオに適用されます。データの固定部分。
パラメーターフィルタリング。
ヒント (オプション)
テーブルヒントは、クエリ オプティマイザーがテーブルまたはビューにアクセスする方法の選択に影響を与えるために使用されるメカニズムです。 クエリ文で特定のヒントを使用することにより、デフォルトの最適化戦略に依存するのではなく、データベース管理システムに特定の実行プランを使用してクエリを処理するように強制できます。
FROM 句でテーブル名の後にヒントを括弧で囲み、複数のヒントをコンマで区切って、これらのヒントを適用できます。 例:
SELECT * FROM MyTable WITH (INDEX(IX_MyIndex), NOLOCK)
出力フィールド
[出力フィールド] 領域には、選択したテーブルのすべてのフィールドと、フィルター条件に一致するフィールドが表示されます。 次の操作を実行できます。
フィールド管理: 特定のフィールドをダウンストリームコンポーネントに出力する必要がない場合は、それらのフィールドを削除できます。
単一フィールド削除シナリオ: 少量のフィールドを削除する必要がある場合は、[操作] 列の
アイコンをクリックして、不要なフィールドを削除できます。バッチフィールド削除シナリオ: 多くのフィールドを削除する必要がある場合は、[フィールド管理] をクリックします。 [フィールド管理] ダイアログボックスで、複数のフィールドを選択し、
左矢印アイコンをクリックして、選択した入力フィールドを未選択の入力フィールドに移動してから、[OK] をクリックして、フィールドのバッチ削除を完了します。
一括追加: [一括追加] をクリックして、JSON、TEXT、または DDL 形式でフィールドを構成します。
説明バッチ追加を完了して [OK] をクリックすると、システムは構成済みのフィールド情報を 上書き します。
JSON 形式のバッチ構成。例:
// 例: [ { "index": 1, "name": "Id", "type": "int(10)", "mapType": "Long", "comment": "" }, { "index": 2, "name": "Data", "type": "nvarchar(100)", "mapType": "String", "comment": "" } ]説明index は指定されたオブジェクトの列番号を示し、name はインポート後のフィールド名を示し、type はインポート後のフィールドタイプを示します。 たとえば、
"index":3,"name":"user_id","type":"String"は、ファイルから 4 番目の列をインポートすることを意味し、フィールド名は user_id、フィールドタイプは String です。TEXT 形式のバッチ構成。例:
// 例: 1,Id,int(10),Long, 2,Data,nvarchar(100),String, 3,RowVersion,timestamp,Bytes,行区切り文字は、各フィールドの情報を区切るために使用されます。 デフォルトは改行 (\n) です。 サポートされている区切り文字には、改行 (\n)、セミコロン (;)、およびピリオド (.) が含まれます。
列区切り文字は、フィールド名とフィールドタイプを区切るために使用されます。デフォルトはカンマ( , )です。サポートされている区切り文字は
','です。フィールドタイプは省略できます。デフォルトは','です。
DDL 形式のバッチ構成。例:
CREATE TABLE tablename ( user_id serial, username VARCHAR(50), password VARCHAR(50), email VARCHAR (255), created_on TIMESTAMP, );
出力フィールドの作成: [+ 出力フィールドの作成] をクリックし、[列]、[タイプ]、[コメント] に入力し、プロンプトに従って [マッピングタイプ] を選択します。 現在の行の構成が完了したら、
アイコンをクリックして保存します。
[OK] をクリックして、Microsoft SQL Server 入力コンポーネントのプロパティ構成を完了します。