SPICE へのデータのインポート - Amazon QuickSight

SPICE へのデータのインポート

ダイレクト SQL クエリを使用するのではなくデータをデータセットにインポートすると、その格納方法のためにデータは SPICE データ になります。SPICE とは、Amazon QuickSight のSuper-fast, Parallel, In-memory Calculation Engine (超高速で並列のインメモリ計算エンジン) のことです。SPICE は、高度な計算を迅速に実行し、データを提供するように設計されています。Enterprise Edition では、SPICE に格納されたデータは保管時に暗号化されます。

データセットを作成または編集するときは、アップロードされたファイルがデータセットに含まれていない限り、SPICE か直接クエリのいずれかを選択します。データを SPICE にインポートする (取り込むともいいます) と、時間とコストを節約できます。

  • 分析クエリの処理速度が速くなる。

  • 直接クエリが処理されるまで待つ必要がない。

  • SPICE に格納されたデータは、追加コストなしで複数回再利用できる。クエリごとに課金されるデータソースを使用すると、最初にデータセットを作成するときと、後でデータセットを更新するときに、データのクエリに対して課金されます。

SPICE の容量は、 AWS リージョン ごとに個別に割り当てられます。ホームの AWS リージョン には、SPICE のデフォルトの容量が自動的に割り当てられます。各 AWS アカウントでの SPICE の容量は、単一の AWS リージョン で QuickSight を使用しているすべてのユーザーによって共有されます。他の AWS リージョン では、別途購入しない限り SPICE 容量は割り当てられません。QuickSight の管理者は、各 AWS リージョン でユーザーが利用できる SPICE の容量と、そのうち現在使用されている容量を表示できます。QuickSight の管理者は、必要に応じて SPICE の 容量を追加購入したり、未使用の SPICE 容量を解放したりできます。詳細については、SPICE 容量の管理を参照してください。

SPICE データセットの容量計画

データセットが使用する SPICE の容量は、ソースファイルまたはテーブルのサイズと同じではありません。論理サイズの計算は、データの準備中に定義したすべてのデータ型変換および計算された列の後に行われます。これらのフィールドは、クエリのパフォーマンスを向上させる方法で SPICE にマテリアライズされます。分析で行った変更は、SPICE のデータの論理サイズには影響しません。データセットに保存された変更のみが SPICE 容量に適用されます。

SPICE の容量計画では、どのデータ型をデータセットで定義するかを検討します。例えば、インポートするファイルには、すべての文字列 (テキスト) が含まれている場合があります。しかし、これらを分析で有効に活用するには、データ型を適切な形式に変更してデータを準備します。例えば、料金を含むフィールドを文字列から小数に変更し、日付を含むフィールドを文字列から日付に変更します。変換を行うための計算を作成する場合は、元のフィールドをデータセットから削除し、フォーマットされた計算フィールドに置き換えます。その場合、容量計画に元のフィールドのサイズを含める必要はありません。含まれているフィールドのみが SPICE に保存されます。

注記

地理空間データ型は、メタデータを使用して物理データ型を解釈します。緯度と経度は数値です。その他のすべての地理空間カテゴリは文字列です。

データセットに必要な SPICE 容量を計算するには、行数に SPICE が行ごとに使用するバイト数を乗算します。現在、SPICE は 10 進数、int、および日付のフィールドごとに 8 バイトを必要とします。各文字列フィールド (テキスト) に対して、SPICE には 8 バイトに加えて UTF-8 でエンコードされた文字長が必要です。数式は次のようになります。

Total logical row size in bytes = (Number of Numeric Fields * 8 bytes per field) + (Number of Date Fields * 8 bytes per field) + (Number of Text Fields * (8 bytes + UTF-8 encoded character length per field) ) Total bytes of data = Number of rows * Total logical row size in bytes GB of SPICE Capacity Needed = Total bytes of data / 1,073,741,824

例えば、SPICE にインポートする行が 5,000,000 行あるテーブルがあるとします。これには、30 個の数値フィールドと、20 個の日付フィールドと、それぞれ 100 バイトの 10 個の文字列フィールドがあります。数式は次のようになります。

Total logical row size in bytes = 1480 bytes = (30 * 8) + (20 * 8) + (10 * (8 + 100) ) Total bytes of data = 5,000,000 rows * 1480 bytes = 7,400,000,000 bytes GB of SPICE Capacity Needed = 7,400,000,000 / 1,073,741,824 = 7 GB