サーバレス バンドルコネクタの書き込みオプション
サーバレスコンピュート上のバンドルされたSparkコネクタを使用した外部データソースへの書き込みは、パブリックプレビューで利用可能です。
サーバレスコンピュートでバンドルされたコネクタを使用して外部データソースに書き込む際、コネクタオプションのサブセットのみがサポートされています。次の表に、コネクタごとのサポートされているオプションが記載されています。
セットアップ手順と例については、 「Sparkデータソース」を参照してください。
PostgreSQL
次のオプションは、サーバレス コンピュートで PostgreSQL に書き込む際にサポートされています。
オプション | 説明 |
|---|---|
| PostgreSQLサーバーのホスト名。 |
| ポート番号。デフォルト: |
| 接続先データベース名 |
| 接続を待機する最大時間(秒)。 |
| データベースユーザー名。 |
| データベースのパスワード。 |
| ターゲットテーブル名。スキーマ修飾名に対応しています(例えば、 |
| バッチごとに挿入する行数。デフォルト: |
| 並列書き込み操作に使用するSparkパーティションの数。 |
| クエリー完了までの最大待機時間 (秒) |
| トランザクション分離レベル: |
|
|
|
|
SQL Server
サーバーレスコンピュート環境でSQL Serverに書き込む場合、以下のオプションがサポートされます。
オプション | 説明 |
|---|---|
| SQL Serverインスタンスのホスト名。 |
| ポート番号。デフォルト: |
| 接続先データベース名 |
| 接続を待機する最大時間(秒)。 |
|
|
|
|
|
|
| データベースユーザー名。 |
| データベースのパスワード。 |
| 認証タイプ。サポートされている値: |
| ターゲットテーブル名。スキーマ修飾名に対応しています(例えば、 |
| バッチごとに挿入する行数。デフォルト: |
| 並列書き込み操作に使用するSparkパーティションの数。 |
| クエリー完了までの最大待機時間 (秒) |
| トランザクション分離レベル: |
|
|
MySQL
サーバレスコンピュート上のMySQLに書き込む場合、以下のオプションがサポートされています。
オプション | 説明 |
|---|---|
| MySQLサーバーのホスト名。 |
| ポート番号。デフォルト: |
| 接続先データベース名 |
| 接続を待機する最大時間(秒)。 |
|
|
|
|
| データベースユーザー名。 |
| データベースのパスワード。 |
| ターゲットテーブル名。スキーマ修飾名に対応しています(例えば、 |
| バッチごとに挿入する行数。デフォルト: |
| 並列書き込み操作に使用するSparkパーティションの数。 |
| クエリー完了までの最大待機時間 (秒) |
| トランザクション分離レベル: |
|
|
|
|
Snowflake
以下のセクションでは、Snowflakeコネクタのサポートされているオプションを機能別に整理して記載しています。
接続
以下のオプションは、Snowflakeへの接続を構成し、セッションの動作を制御します。
オプション | 説明 |
|---|---|
| Snowflake アカウント ホスト名(例えば、 |
| ポート番号。デフォルト: |
| Snowflake アカウント識別子。 |
| 認証方法: |
| ネットワーク操作のタイムアウト(秒)。 |
| タイムスタンプ操作のタイムゾーン(たとえば、 |
| もし |
|
|
認証
以下のオプションでは、sfauthenticatorで設定されている認証方法の資格情報を提供します。Snowflakeステージがクラウドストレージ経由でデータを書き込む際には、ステージング認証情報(temporary_aws_*、awsaccesskey、temporary_azure_sas_token)が必要です。
オプション | 説明 |
|---|---|
| Snowflake のユーザー名です。 |
| Snowflake パスワード。 |
| OAuthアクセストークン。 |
| キーペア認証用のPEM形式のプライベートキー。 |
| 一時的なS3ステージング用AWSアクセスキーID。有効期間の短い資格情報を使用する場合、 |
| S3ステージング用の一時的なAWSシークレットアクセスキー。 |
| S3ステージング用の一時的なAWSセッショントークン |
| Azure Blob Storageのステージング用の一時的なAzure SASトークン |
| S3ステージング用のAWSアクセスキー。 |
| AWS S3ステージングのシークレットキー。 |
ターゲット
以下のオプションでは、書き込み先のSnowflakeデータベース、スキーマ、ウェアハウス、およびテーブルを指定します。
オプション | 説明 |
|---|---|
| Snowflake データベース名。 |
| Snowflake スキーマ名。 |
| Snowflakeの仮想データウェアハウスがクエリ実行に使用されます。 |
| セッションのSnowflakeロール |
| ターゲットテーブル名。 |
書き込み動作
以下のオプションは、ターゲットのSnowflakeテーブルにデータが書き込まれる方法を制御します。
オプション | 説明 |
|---|---|
| DataFrame の列が Snowflake テーブルの列と一致する方法: |
| DataFrameとテーブルの列が一致しない場合の挙動: |
|
|
|
|
|
|
|
|
Redshift
以下のセクションでは、機能別に整理された Redshift コネクタのサポートされているオプションをご紹介します。
接続
以下のオプションはRedshiftクラスターへの接続を構成します。
オプション | 説明 |
|---|---|
| Redshift クラスターエンドポイントホスト名 |
| ポート番号。デフォルト: |
| Redshift データベース名。 |
| 接続を待機する最大時間(秒)。 |
認証
以下のオプションは、Redshift および Redshift が書き込み操作中に使用する S3 ステージング場所の認証情報を設定します。
オプション | 説明 |
|---|---|
| Redshiftのユーザー名。 |
| Redshift のパスワードです。 |
| RedshiftがステージングデータのためにS3にアクセスするために使用するIAMロールのARN |
| 一時的なS3ステージング用AWSアクセスキーID。有効期間の長い資格情報よりも推奨されます。 |
| S3ステージング用の一時的なAWSシークレットアクセスキー。 |
| S3ステージング用の一時的なAWSセッショントークン |
|
|
書き込み動作
以下のオプションにより、ディストリビューション、ソートキー、およびステージング形式など、ターゲットのRedshiftテーブルへのデータの書き込み方法が制御されます。
オプション | 説明 |
|---|---|
| ターゲットテーブル名。スキーマ修飾名に対応しています(例えば、 |
| バッチあたりの挿入行数。デフォルト: |
| 並列書き込み操作に使用するSparkパーティションの数。 |
| クエリー完了までの最大待機時間 (秒) |
| トランザクション分離レベル: |
| Redshift ディストリビューションスタイル: |
| 分布キーとして使用する列。 |
| Redshift テーブルのソートキーの指定(例: |
| ステージングCSVファイルに書き込まれる文字列で、 |
| ステージングファイルの形式: |
|
|
サーバレス コンピュートで PostgreSQL に書き込む
この例ではappendモードを使用し、Databricksのシークレットスコープから認証情報を取得します。
df.write \
.format("postgresql") \
.option("host", dbutils.secrets.get(scope="<scope>", key="<host>")) \
.option("port", "<port>") \
.option("database", "<database-name>") \
.option("dbtable", "<table-name>") \
.option("user", dbutils.secrets.get(scope="<scope>", key="<user>")) \
.option("password", dbutils.secrets.get(scope="<scope>", key="<password>")) \
.mode("append") \
.save()
次のステップ
- Spark データソース: 設定手順、コード例、およびSpark 統合戦略の比較。
- JDBC connection:サーバレス環境でバンドルされているコネクタでサポートされていないオプション、またはバンドルされているコネクタがないデータソースの場合は、JDBCドライバを使用したUnity Catalog接続を使用します。
- Spark API オプションリファレンス:データフレームReader、データフレームWriter、ファイル形式およびストリーミングソースのストリーミングオプションに関するリファレンス