ハイブリッドテーブルでサポートされていない機能と制限事項¶
サポートされていない機能と制限に関する次のガイダンスは、ハイブリッドテーブルに適用され、変更される可能性があります。
サポートされていない機能¶
ハイブリッドテーブルは次をサポートしません。
制限事項¶
- クラウドとリージョン
ハイブリッドテーブルは、パブリックプレビューの一部のパブリックAmazon Web Services(AWS)リージョンでのみ使用できます。
クラウドリージョン
クラウドリージョン ID
US 西部(オレゴン)
us-west-2
US 東部(オハイオ)
us-east-2
US 東部(バージニア北部)
us-east-1
EU (アイルランド)
eu-west-1
EU (フランクフルト)
eu-central-1
アジア太平洋(東京)
ap-northeast-1
アジア太平洋(シドニー)
ap-southeast-2
AzureまたはGoogle Cloud Platform(GCP)では、ハイブリッドテーブルは使用できません。
SnowGov リージョンでは、ハイブリッドテーブルは使用できません。
トライアルアカウントでは、ハイブリッドテーブルは使用できません。
Virtual Private Snowflake(VPS)をご利用の場合は、 Snowflake サポート に連絡して、アカウントのハイブリッドテーブルの有効化についてお問い合わせください。
- クラスタリングキー
ハイブリッドテーブルでは、クラスタリングキーはサポートされていません。詳細については、 クラスタリングキーとクラスタ化されたテーブル をご参照ください。ハイブリッドテーブルのデータは主キーによって並べられます。
- 一貫性
デフォルトでは、ハイブリッドテーブルはセッションベースの一貫性モデルを使用し、セッション内の読み取り操作が同じセッション内の書き込み操作からの最新データを返します。セッション外で行われた変更については、一部の停滞(100ミリ秒未満)が発生する可能性があります。停滞を回避するためには、ステートメントレベルまたはセッションレベルで
READ_LATEST_WRITES = true
を設定します。これにより、数ミリ秒の遅延オーバーヘッドが発生する可能性があることに注意してください。
- 制約
ハイブリッドテーブルでは、主キー制約、一意制約、外部キー制約が強制され、次の制限が適用されます。
制約はテーブルの作成時にのみ定義できます。
制約は行レベルで強制されます。
制約は、ステートメントまたはトランザクションレベルでは強制されません(つまり、遅延制約)。
列を一意に変更することはできません。
外部キーには、次の追加制限が適用されます。
外部キー制約は、同じデータベースに属するハイブリッドテーブル間でのみサポートされます。
外部キー制約から参照されるテーブルは、外部キー関係が存在する限り切り捨てることはできません。
外部キー制約は部分一致をサポートしていません。
外部キー制約は遅延動作をサポートしていません。
外部キー制約は、 DELETE と UPDATE の操作に対する RESTRICT と NO ACTION の動作のみをサポートします。
外部キー制約はステートメントレベルで強制されます。
- COPY
ハイブリッドテーブルで COPY INTO を使用する場合、 ABORT_STATEMENT では ON_ERROR オプションのみがサポートされます。ON_ERROR = SKIP_FILE と設定するとエラーが返されます。詳細については、 データのロード をご参照ください。
- データサイズ
アカウント内のハイブリッドテーブルに保存できるデータは、 100GB に制限されています。詳細については、 クォータとスロットリング をご参照ください。
- DML コマンド
DML コマンドを使用して少数の行を変更する場合は、 MERGE の代わりに INSERT、 UPDATE、 DELETE ステートメントを使用して、パフォーマンスを最適化します。
- インデックス
セカンダリインデックスはサポートされていますが、次のインデックス機能は 現在サポートされていません。
インデックスの一部となる列を追加する。
半構造化データ型(ARRAY、 OBJECT、 VARIANT)の列にインデックスを作成する。
既存のハイブリッドテーブルのインデックスは変更できません。
ハイブリッドテーブルでセカンダリインデックスを使用するには、テーブルに SELECT 権限を付与されたロールを使用する必要があります。ハイブリッドテーブル自体以外のオブジェクトにしかアクセスできない場合は、セカンダリインデックスは使用できません。
TIMESTAMP 列はサポートされています。ただし、ベーステーブルやインデックスの複合キーの一部である TIMESTAMP 列に対する比較(例: WHERE 述語)は、現在サポートされておらず、エラーを引き起こします。
- データのロード
ハイブリッドテーブルにデータを一括ロードするには、 CREATETABLE ... ASSELECT を使用することをお勧めします。このオプションはパフォーマンスが最適化されており、数百万の記録をロードする場合、 COPY または INSERT INTO ... SELECT などの他のオプションと比較して約10倍高速になります。
詳細については、 データのロード をご参照ください。
- ネイティブアプリケーション
Snowflake Native Appにハイブリッドテーブルを含めることができます。ただし、プロバイダーからコンシューマーにハイブリッドテーブルを共有することはできません。Native Appは、コンシューマーアカウントにハイブリッドテーブルを作成でき、それらのハイブリッドテーブルに対して読み書きを実行できます。ハイブリッドテーブルをアプリケーションロールに公開して、コンシューマーユーザ-が直接クエリできるようにすることもできます。
プロバイダーアカウントにハイブリッドテーブルを作成することはできません。また、Native Appを通じて共有されるビューにハイブリッドテーブルを含めることもできません。
- 定期的なキー更新
Snowflakeアカウントで 定期的なキー更新 の使用が有効になっている場合は、 ハイブリッドテーブル は使用できません。アカウントで定期的なキー更新が有効になっており、ハイブリッドテーブルを使用する場合は、 ALTER ACCOUNT コマンドを使用して PERIODIC_DATA_REKEYING パラメーターを
FALSE
に設定する必要があります。
- クォータとスロットリング
共有リソースの公平な可用性を確保し、一貫したサービス品質を保証し、使用量の急増を抑えるために、ハイブリッドテーブルの使用はクォータによって制限されます。デフォルトでは、これらのクォータはアカウントレベルでSnowflakeアカウントに適用され、このクォータはアカウント内のすべてのデータベースで共有されます。
クォータ
デフォルト
メモ
ハイブリッドストレージ
100GB
ハイブリッドストレージのクォータは、ハイブリッドテーブルに保存できるデータ量を制御します。ストレージクォータを超過した場合、ハイブリッドストレージの使用量をデータ削除によってクォータ以下に戻すまで、ハイブリッドテーブルにデータを追加する WRITE 操作は一時的にブロックされます。
ハイブリッドテーブルのリクエスト
毎秒約1,000回の操作
ハイブリッドテーブルリクエストクォータは、ハイブリッドテーブルからの読み取りとハイブリッドテーブルへの書き込みの速度を制御します。80%のポイント読み込みと20%のポイント書き込みで構成されるバランスの取れたワークロードで、ハイブリッドテーブルに対して最高1,000回の操作/秒を達成できるはずです。 AGGREGATE_QUERY_HISTORY ビュー の例を使用してスロットリングを識別できます。
エラーが表示された場合、またはクォータ制限に達したためにスロットルされた場合は、クォータ制限内に収まるようにワークロードを変更してください。より高いストレージクォータまたはスループットクォータを必要とするワークロードがある場合は、 Snowflakeサポート に連絡して、クォータ上限の増加について相談してください。一貫した容量要件がわかっているワークロードについては、個々のデータベースを分離して、Snowflakeアカウントの他の部分とは別に個別のクォータ割り当てを実行できます。
- 複製
ハイブリッドテーブルの 複製 は現在サポートされていません。プライマリデータベースにハイブリッドテーブルが含まれている場合、リフレッシュ操作は失敗します。
- SQL API
ハイブリッドテーブルでは、 SQL API はサポートされていません。SQL API を使用すると、ハイブリッドテーブルに格納されたデータに対するクエリでエラーや予期しない結果が発生する場合があります。
- スループット
アカウント内のハイブリッド・テーブルに対して、80%/20%のバランスの取れた読み取り/書き込みワークロードで、毎秒約1,000回の操作を実行できます。この制限を超えると、Snowflakeはスループットを低下させる可能性があります。詳細については、 クォータとスロットリング をご参照ください。
- トランザクション
ハイブリッドテーブルの場合、トランザクションスコープはハイブリッドテーブルが存在するデータベースです。トランザクション内のすべてのハイブリッドテーブルは同じデータベースに存在する必要があります。同じトランザクション内の標準的なSnowflakeテーブルはこの制限の影響を受けず、異なるデータベースに存在してもかまいません。
- Tri-Secret Secure
Snowflakeアカウントで Tri-Secret Secure の使用が有効になっている場合、 ハイブリッドテーブル は使用できません。ハイブリッドテーブルを使用する前に Snowflake Support に連絡して、SnowflakeアカウントでTri-Secret Secureが有効になっているかどうかを確認してください。
- UNDROP
ハイブリッドテーブルでは、 UNDROP はサポートされていません。その他の情報は次のとおりです。
UNDROP SCHEMA および UNDROP DATABASE はハイブリッドテーブルを含むエンティティでは成功しますが、それらのハイブリッドテーブルと関連する制約とインデックスは復元できません。
TABLES ビュー の DELETED 列には、削除時刻が親エンティティの UNDROP 時刻として表示されます。
ACCESS_HISTORY ビュー にはハイブリッドテーブルではなく、親エンティティの DROP/UNDROP のエントリが含まれます。