Oracle CloudへのApache Sparkアプリケーションのインポート

Sparkアプリケーションを実行するには、そのアプリケーションをOracle Cloud Infrastructure Object Storageにホストする必要があります。

アプリケーションは任意のバケットにアップロードできます。アプリケーションを実行しているユーザーは、アプリケーションが正常に起動するために、すべてのアセット(関連するすべてのコンパートメント、バケットおよびファイルなど)への読取りアクセス権を持っている必要があります。

データ・フロー互換性のあるSparkアプリケーションの開発

データ・フローは、通常のSparkアプリケーションの実行をサポートし、特別な設計時の要件はありません。

ラップトップまたは類似の環境でSparkローカル・モードを使用してSparkアプリケーションを開発することをお薦めします。開発が完了したら、アプリケーションをOracle Cloud Infrastructure オブジェクト・ストレージにアップロードし、データ・フローを使用して大規模に実行します。

アプリケーションのバンドルのベスト・プラクティス

アプリケーションのバンドルのベスト・プラクティス
テクノロジノート
JavaまたはScalaアプリケーション最良の信頼性を得るには、オブジェクト・ストアに含まれるすべての依存性とともに、Uber JARまたはアセンブリJARとしてアプリケーションをアップロードします。Maven Assemblyプラグイン(Java)やsbt-assembly (Scala)などのツールを使用して、適切なJARを構築してください。
SQLアプリケーションすべてのSQLファイル(.sql)をオブジェクト・ストアにアップロードします。
Pythonアプリケーションデフォルト・ライブラリでアプリケーションを構築し、Pythonファイルをオブジェクト・ストアにアップロードします。サードパーティのライブラリまたはパッケージを使用するには、「データ・フローでのSpark-Submit機能」を参照してください。

.zip.gzipなどのzipフォーマットのアプリケーション・パッケージは指定しないでください。

アプリケーションがOracle Cloud Infrastructureオブジェクト・ストアにインポートされると、特別なURIを使用して後で参照できます:
oci://<bucket>@<tenancy>/<applicationfile>

たとえば、JavaまたはScalaアプリケーションを使用して、examplecorpの開発者がlogcrunch.jarというSparkアプリケーションを開発し、production_codeというバケットにアップロードしたとします。コンソールUIの右上にあるユーザー・プロファイル・アイコンをクリックして、いつでも正しいテナンシを確認できます。

正しいURIは次のようになります:
oci://production_code@examplecorp/logcrunch.jar

Oracle Cloudへのデータのロード

データ・フローは、Oracle Cloud Infrastructureオブジェクト・ストレージ内のデータを管理するために最適化されています。オブジェクト・ストレージ内のデータを管理することで、パフォーマンスを最大化し、アプリケーションが、そのアプリケーションを実行しているユーザーにかわってデータにアクセスできるようにします。ただし、データ・フローは、SparkでサポートされているRDBMS、ADW、NoSQLストアなど、他のデータ・ソースからデータを読み取ることができます。データ・フロー は、既存のFastConnect構成とともにプライベート・エンドポイント機能を使用して、オンプレミス・システムと通信できます。

データのロード中
方法ツール
ネイティブWeb UIOracle Cloud Infrastructureコンソールでは、ストレージ・バケットを管理し、ディレクトリ・ツリーを含むファイルをアップロードできます。
サード・パーティ・ツール

REST APIおよびコマンドライン・インフラストラクチャの使用を検討してください。

大量のデータの転送については、次のサードパーティ・ツールを検討してください: