本資料はコネクターを利用してデータベースからデータを取得する際にかけることができる、データ行数の制限について説明します。
「ファイルとデータ」フライアウト ⇒ 「接続先」よりコネクタを選択して各種データベースからデータをSpotfireへ取り込めます。
コネクターを利用する場合、「インポート」(すなわち「インメモリ」)または「外部」(すなわち「IN-DB」)方式でデータを取り込むことができますが、いずれの場合にもデータ行数に制限がかかっている可能性があります。
また、「オンデマンド」によるデータ取り込みは「インポート」または「外部」(IN-DB)のいずれも利用可能です。「オンデマンド」の場合のデータ行数制限は取り込み時に指定された「インポート」または「外部」(IN-DB)に対する制限に従います。さらに、「オンデマンド」の条件として渡すデータにも行数制限がかかっています。
動作確認環境
・Spotfire Analyst 14.0 LTS
※本資料記載の内容はSpotfire Analyst 10.10 LTS以降に適用できます。
データ行数の制限の一覧
コネクターを利用してデータベースからデータを取得する際に、以下の設定項目でデータ行数を制限することができます。
項目 | 影響対象 | 説明 | デフォルト値 | 範囲 |
---|---|---|---|---|
ConnectorImportRowLimit |
インポート |
コネクターを利用してデータベースからデータをインポートする場合のデータ行数制限 | 空白(無制限) |
0~2,147,483,647 ※空白や「0」の場合は無制限 |
ConnectorExternalRowLimit |
外部(IN-DB) |
コネクターを利用してデータベースからデータをIN-DBで取り込む場合のデータ行数制限 | 空白(無制限) |
1,000~2,147,483,647 ※空白や「0」の場合は無制限 |
TableVisualizationExternalRowLimit |
外部(IN-DB) |
外部データをテーブルプロットに表示させる場合のデータ行数制限 | 空白(10,000) |
1~2,147,483,647 ※空白の場合は「10,000」
|
TableVisualizationStreamingDataRowLimit |
外部(IN-DB) |
ストリーミングデータをテーブルプロットに表示させる場合のデータ行数制限 | 空白(100) |
1~2,147,483,647 ※空白の場合は「100」 |
MarkingWhereClauseLimit |
インポート、 外部(IN-DB) |
オンデマンドロードでの「カラムからの値」条件で渡されるデータの行数制限 ※複数条件の場合のみ |
空白(1,000) |
0~2,147,483,647 ※無制限にすることはできない |
上記の行数制限は、Spotfire管理者権限でAnalystへログインし、ツール ⇒ 管理マネージャーを開いて変更できます。
「設定」タブにて「Everyone」グループを選択し、「編集」ボタンを押して各設定項目に新しい値を指定してから、Analystを一旦閉じて再度ログインし設定変更を反映させてください。
・Application ⇒ DataImportPreferences
・ConnectorImportRowLimit
・ConnectorExternalRowLimit
・TableVisualizationExternalRowLimit
・TableVisualizationStreamingDataRowLimit
・DataOptimization ⇒ DataOptimizationPreferences
・MarkingWhereClauseLimit
ConnectorImportRowLimit(デフォルト:無制限)
コネクターを利用してデータベースからデータをインポートする場合のデータ行数制限です。
実際のデータの行数がこの制限を超えた場合は警告メッセージが表示され、データベース内のデータのうち先頭から制限数までの行しか取り込まれません。
例えば ConnectorImportRowLimit が 2,000 に設定されている場合、それよりも件数が多いデータをロードしようとする際に表示される警告メッセージの例は下記の通りです。
ConnectorExternalRowLimit(デフォルト:無制限)
コネクターを利用してデータベースからデータを外部(IN-DB)で取り込む場合のデータ行数制限です。
外部(IN-DB)として取り込んだデータの場合、グラフを描画する際にはグラフの軸設定に従ってデータベース内のデータを集計して結果データのみをSpotfireへ取り込みますが、集計結果データの件数がこの制限を超えた場合はエラーメッセージが表示され、グラフが正しく描画されません。
元データの件数の制限ではなく、グラフ描画に必要な集計データの件数(例えば散布図内の丸の個数)の制限となります。
この設定はテーブルプロット、棒グラフなどすべてのビジュアライゼーションの場合に適用されます。
例えばConnectorExternalRowLimit が 1,000 に設定されている場合、それよりも件数が多い集計データをクロステーブルに表示しようとする際に表示されるエラーメッセージの例は下記の通りです。
TableVisualizationExternalRowLimit(デフォルト:10,000)
外部(IN-DB)として取り込むデータをテーブルプロットに表示させる場合のデータ行数制限です。
テーブルプロットには以下のメッセージが常に表示され、実際のデータの行数がこの制限を超えた場合はデータベース内のデータのうち先頭から制限数までの行しか表示されません。
この設定はテーブルプロットの場合にのみ適用されます。
この設定と ConnectorExternalRowLimit の両方とも指定されている場合、数値の小さいほうが優先されます。
TableVisualizationStreamingDataRowLimit(デフォルト:100)
ストリーミングデータ(Spotfire Data Streamsから外部(IN-DB)として取り込んだデータ)をテーブルプロットに表示させる場合のデータ行数制限です。
テーブルプロットには以下のメッセージが常に表示され、実際のデータの行数がこの制限を超えた場合はデータベース内のデータのうち最新のデータから制限数までの行しか表示されません。
この設定はテーブルプロットの場合にのみ適用されます。
この設定と ConnectorExternalRowLimit の両方とも指定されている場合、数値の小さいほうが優先されます。
MarkingWhereClauseLimit(デフォルト:1,000)
インポート、または外部(IN-DB)で取り込むデータに対してオンデマンドロードを構成した場合、かつオンデマンドの条件に「カラムからの値」が2つ以上に指定されている場合、条件として渡すデータの行数は、MarkingWhereClauseLimit / 「カラムからの値」条件の数 の算出結果(小数点以下は切り捨て)によって制限されています。
・オンデマンド設定
・「カラムからの値」条件
例えば MarkingWhereClauseLimit がデフォルト(空白、1000)のままの場合、かつ上記の画面通りに「カラムからの値」条件が2個指定されている場合、条件として渡すデータは最大 500 行までとなります。501行のデータを条件として渡そうとすると以下のエラーが発生してしまい、オンデマンドロードは正しく実行できません。
補足
・インフォメーションリンクを利用してデータベースからデータを取り込む場合は、製品機能によるデータ行数制限を設定することはできません。