9 EDQにおける制限

この章では、データの読書きの際にEDQで適用される様々な制限に関するガイドラインについて説明します。

  • スナップショットの文字数制限 - 異なるリポジトリ・データベース・テクノロジとの互換性を保証するため、ソースからSTRING属性にデータのスナップショットを作成する際に、EDQではデフォルトで2700バイトに制限されます。これは、所定の属性でこれより長いソース値がすべて、スナップショットでは2700バイトに切り捨てられることを意味します。localhome/director.propertiesファイルの次のエントリを使用して、この制限を最大4000バイトまで拡張できます。

    snapshot.max.string.size = 4000

    注:

    この制限を拡張し、ソース・ファイル内で長い文字列を処理している場合は、属性を書き込むときにEDQで使用される4000バイトの制限を簡単に超えることがあります。たとえば、文字列が4000バイトに連結された場合に、この値を書き込もうとするとエラーが発生します。
  • データ属性を書き込む際の文字列の長さの制限 - EDQのリポジトリとしてOracleデータベースが使用される場合、4000バイトの制限がデータベースに書き込まれるすべてのSTRING属性値に適用されます。

    そのため、一般的には、EDQプロセス中には、4000バイトを超える値を生成しないようにすることをお薦めします。処理中にこのような値を生成することはできますが、書き込まれたステージング済データ、照合プロセッサなどで使用される内部的に書き込まれたデータ、または結果のドリルダウン・サンプルの一部として、このような値が書き込まれた場合、Oracleデータベース・エラーORA -01461 (「LONG値はLONG列にのみバインドできます」)が生成され、EDQジョブはエラーになります。

  • Microsoft Excelのxls形式を使用する場合の行制限 - .xls拡張子を使用するMicrosoft Excelデータ・ストアを構成する場合、エクスポートは65536行に制限されます。このファイル・タイプでは、指定された制限までしかサポートされないためです。データの量が多い場合は、常に.csvエクスポート形式を使用する必要があります。ただし、メモリーが十分にある場合は、.xlsx形式を使用することも可能です。

    理解を深めるために、次に示すベスト・プラクティス・ガイドラインを参照してください。

  • Microsoft Excelを使用するときの現実的な行制限 - EDQでは、クライアント側とサーバー側の両方のデータ・ストアを使用したExcelファイルの直接の読取りおよび書込みがサポートされます。サーバー側データ・ストアの場合、メモリーを節約するために、Excelデータはスナップショット中にEDQにストリームされます。データをExcelにエクスポートする場合は、ストリーミングがサポートされないため、ドライバにより大量のメモリーが使用されます。クライアント側のデータ・ストアの場合、データの読取りまたはデータの書込みのいずれに対してもストリーミングは有効になりません。

    このため、次のベスト・プラクティス・ガイドラインに従う必要があります:

    • 結果をExcelと容易に共有するための結果ブラウザのボタンは、結果サマリー(データではなく統計を表示する結果ビュー)とデータの小さなサンプル(最大1000件のレコード)を共有するために設計されています。これはクライアント側のメモリー制限に違反する可能性が高いため、大量のデータのエクスポートには使用しないでください。

    • 大量のデータを書き込む場合は、必ずCSVファイル形式を使用してください。CSVファイルは、データを表示するために簡単にExcelにインポートできます。

    • EDQがデータをストリームし、使用可能なメモリーを増やすことができるように、数千を超えるレコードを含むExcelファイルを読み取る際には、必ず、サーバー側データ・ストアを使用してください。