現状ではSnowflakeアダプターをご利用する際には下記のような注意事項があります。
■共通
マルチセレクトオプション(旧CDataオプション)の利用上の共通的な注意事項については下記をご参照ください。
■動作環境
- ASTERIA Warp 2206以降
■アダプターの動作
- SnowflakeSQLCallコンポーネントでは、ストアドプロシージャからの戻り値を取得することはできません。
- SnowflakeのVARIANT型のフィールドへデータを追加・更新する場合は、SnowflakeSQLCallコンポーネントを使用し、to_variant関数を経由させて追加・更新する必要があります。SnowflakePutコンポーネントでは、VARIANT型のフィールドへデータを追加・更新することはできません。コンポーネント上では設定できたように見えますが、フロー実行時に「 SQLコンパイルエラー:式型が列データ型と一致しません」といったエラーが発生します。
- SnowflakeのOBJECT型のフィールドへデータを追加・更新する場合は、SnowflakeSQLCallコンポーネントを使用し、object_construct関数を経由させて追加・更新する必要があります。SnowflakePutコンポーネントでは、OBJECT型のフィールドへデータを追加・更新することはできません。コンポーネント上では設定できたように見えますが、フロー実行時に「 SQLコンパイルエラー:式型が列データ型と一致しません」といったエラーが発生します。
- SnowflakeのARRAY型のフィールドへデータを追加・更新する場合は、SnowflakeSQLCallコンポーネントを使用し、array_construct関数を経由させて追加・更新する必要があります。SnowflakePutコンポーネントでは、ARRAY型のフィールドへデータを追加・更新することはできません。コンポーネント上では設定できたように見えますが、フロー実行時に「 SQLコンパイルエラー:式型が列データ型と一致しません」といったエラーが発生します。
- SnowflakeのDATE型のフィールドは、フロー側ではDateTime型として取り扱われます。データを追加・更新する際には時刻情報は切り捨てられます。データを取得する際には時刻部分は00:00:00となります。
- SnowflakeのTIME型のフィールドは、フロー側ではDataTime形として取り扱われます。データを追加・更新する際には日付情報は切り捨てられます。データを取得する際には日付部分は1970-01-01となります。
- SnowflakeのFLOAT型には `NaN` `inf` `-inf` という特別な値がありますが、これらには対応しておりません。
- SnowflakeSQLCallコンポーネントを用いてDDLを実行する場合、使用するコネクションの詳細設定でQuery Passthroughプロパティをtrueに設定する必要があります。Query Passthroughプロパティを設定しないまたはfalseに設定したコネクションを用いてDDLを実行した場合、本来の仕様と異なるデータ型でフィールドが作成されるなど、意図しない動作をする可能性があります。ただし、Query Passthroughプロパティをtrueに設定した場合は、ドライバ独自のクエリ構文 *1 が使用できません。
- SnowflakeのGEOGRAPHY型のフィールドは、検索キーやソートキーとしては使用できません。SQLビルダーでの設定は可能ですが、フロー実行時にエラーとなります。
- SnowflakePutコンポーネントでデータの追加を実施するとき、バッチ件数プロパティが2以上に設定されている場合、データが追加される順番は保証されません。順番が入れ替わる場合があります。
- SnowflakePutコンポーネントでデータの追加を実施するとき、バッチの繰り返し回数が多くなった場合に「Your session expired.」 のようなエラーが発生する場合があります。明確な再現条件はありませんが、「1バッチあたりの処理件数100件・データ総件数10,000件」「1バッチあたりの処理件数1件・データ総件数100件」など、バッチ回数がおよそ100回を超える場合に発生しやすくなる傾向があります。
*1 ドライバ独自のクエリ構文についての詳細は、CData社の情報をご参照ください。
INSERT INTO SELECT構文 https://cdn.cdata.com/help/OWH/jp/jdbc/pg_insertselect.htm
SQL関数 https://cdn.cdata.com/help/OWH/jp/jdbc/pg_sqlfunctions.htm
データのキャッシュ https://cdn.cdata.com/help/OWH/jp/jdbc/pg_caching.htm
上記は現在、弊社で確認した内容について記載しています。
今後、不具合対応やバージョンアップなどで改善される場合は確認出来次第、反映します。
他にマルチセレクトオプション固有の制限事項について詳しくは以下のヘルプをご参考ください。
ASTERIA Warpバージョン | ヘルプページ |
2212 | |
2206 |