Data Platform Python SDK で PySpark を接続する
一般的なユースケースのサンプルコードを確認することをお忘れなく。Data Platform でカスタム PySpark アクションを作成すると、2つのことが行われます
目的
Custom Action PySpark では、Connector オブジェクトの Spark 互換メソッドを使用できます。これらのメソッドは カスタム PySpark アクションでのみ利用可能 であり、接続するソースの種類によって異なります。
一般的なユースケースの サンプルコード を確認することをお忘れなく。
PySpark の connect モジュール
Custom PySpark action を作成すると、Data Platform によって以下の2つのことが行われます:
- スクリプトを呼び出す前に SparkContext が作成されます。
- スクリプトの後に SparkContext.stop() が呼び出されます。
したがって、Spark の機能に簡単にアクセスできます:
Data Platform 内に保存されたデータにアクセスするには、まず connect 関数で Connector オブジェクトをインスタンス化 する必要があります。その後、Connector オブジェクトの Spark 互換メソッド を使用して接続されたデータとやり取りできます。
例えば、Spark Dataframe オブジェクトを取得するメソッドは connnector.extract_dataframe() です。以下のサンプルコードは、ソースに直接接続し、そのメソッドを使用して Spark オブジェクトを取得します:
Data Platform のすべてのコネクタが PySpark と互換性があるわけではありません。互換性のあるコネクタの例は、Snowflake、PostgreSQL、MySQL、Amazon S31、File-Upload、Data Platform Bucket ですが、このリストは常に進化しています。
Spark 互換 Connector メソッド
get_spark_options()
データベースに接続するための Spark オプションを返します。
プロトコルソース(バケット、ファイルアップロード、Amazon S3 など)では利用できません。
出力
get_spark_context()
現在の SparkContext を返します。
出力
get_spark_session()
Data Platform バケット / ファイルアップロードを使用する際に異なる設定で構成された現在の Spark セッションを返します。
プロトコルソース(バケット、ファイルアップロード、Amazon S3 など)でのみ利用可能です。
出力
get_spark_url(path, filename, bucket=None)
オブジェクトストア内のオブジェクトの指定されたパスのファイル URL を返します。パスはオブジェクトストア内の絶対パスである必要があり、バケットが設定されていない場合はユーザー設定から使用します。
プロトコルソース(バケット、ファイルアップロード、Amazon S3 など)でのみ利用可能です。
入力パラメータ
出力
insert_dataframe(table, dataframe)
Spark DataFrame を接続されたソースに挿入します。
データベースおよび一部のプロトコルソース(バケット、Amazon S3、Azure Blob Storage)で利用可能です。 詳細は ユースケース 4 と 5 をご確認ください。
入力パラメータ
extract_dataframe(params={})
ファイルから SparkDataframe を抽出します。ファイル抽出オプションは params または table.parameters で設定できます。
入力パラメータ
詳細な例:
出力
さらに詳しく知る
当社のソリューションを実装するためのトレーニングや技術サポートが必要な場合は、営業担当者にお問い合わせください、または このリンク をクリックして、プロフェッショナルサービスの専門家にプロジェクトのカスタム分析を依頼するための見積もりを取得してください。
Data Platform を構築するチームと直接やり取りし、質問をしたり、フィードバックを送信したり、Discord の専用 チャネル に参加してください。
OVHcloud サービスについてサポートが必要な場合は、ヘルプセンター でリクエストを作成してください。
ユーザーコミュニティ に参加してください。
1: S3 は Amazon Technologies, Inc. の商標です。OVHcloud のサービスは Amazon Technologies, Inc. によってスポンサーされ、承認され、またはその他の方法で提携していません。

