DataModel
XML/JSON ドキュメントをパースしてデータベースのメタデータを生成するときに使用するデータモデル設定を指定します。 ここで指定した値によって、ドライバーがネストされたオブジェクト配列をテーブルにモデル化する方法が制御されます。
Possible Values
Document, FlattenedDocuments, Relationalデータ型
string
デフォルト値
"Document"
解説
connector は、配列にネストされたオブジェクトに基づいてJSON ドキュメントを行に分割します。 次のサブセクションでは、3つのサポートされている設定それぞれでの動作を説明します。 それぞれの設定でデータをクエリする例については、階層データの解析 を参照してください。
Document
各トップレベルオブジェクトの行を表す単一テーブルを返します。 存在する可能性があるネストされたオブジェクト配列はフラット化されず、集計として返されます。XPath 値を明示的に指定した場合、connector はそのXPath を使用します。 指定しない場合、connector は見つかった一番上のオブジェクト配列を識別して、それをXPath として使用します。
FlattenedDocuments
ファイル内で利用可能なドキュメントのJOIN を表す単一テーブルを返します。 ネストされたXPath 値はSQL JOIN と同じ作法で動作し、ネストされた兄弟XPath 値(同じ高さの子パス)は、SQL CROSS JOIN として扱われます。使用するXPath 値を明示的に指定した場合、connector はそれらを使用します。 指定しない場合、connector はファイルを解析し、ネストされたドキュメントを含む利用可能なドキュメントを識別して、それらをXPath 値として使用します。
Relational
指定された各XPath 値に対して1つずつ、複数のテーブルを返します。 ネストされたドキュメント(オブジェクト配列)は、親テーブルにリンクする主キーと外部キーを含むリレーショナルテーブルとして返されます。 使用するXPath 値を明示的に指定した場合、connector はそれらを使用します。 指定しない場合、connector はファイルを解析し、ネストされたドキュメントを含む利用可能なドキュメントを識別して、それらをXPath 値として使用します。
関連項目
- XPath:含めるXML ドキュメントへのパスを明示的に設定します。
- FlattenArrays およびFlattenObjects:これらのデータモデルごとに識別されるカラムをカスタマイズします。例については、自動スキーマ検出 を参照してください。
- 階層データの解析:異なるDataModel 設定から得られたスキーマを、サンプルクエリで比較します。
- このconnector で利用可能なデータモデリングとフラット化のテクニックの詳細については、REST データのモデリング を参照してください。