メインコンテンツまでスキップ

Databricks 上の Apache Spark

この記事では、Apache Spark が Databricks および Databricksデータインテリジェンスプラットフォームとどのように関連しているかについて説明します。

Apache Spark は Databricks プラットフォームの中心であり、コンピュート クラスターと SQLウェアハウスを支えるテクノロジーです。 Databricks は Apache Spark 用に最適化されたプラットフォームであり、Apache Spark ワークロードを実行するための効率的でシンプルなプラットフォームを提供します。

Spark の変換とアクション

Apache Spark では、すべての操作は変換またはアクションとして定義されます。

  • 変換 : プランに処理ロジックを追加します。例としては、データの読み取り、結合、集計、型のキャストなどがあります。
  • アクション : 結果を評価して出力するための処理ロジックをトリガーします。例としては、書き込み、結果の表示またはプレビュー、手動キャッシュ、行数の取得などがあります。

Apache Spark は 遅延実行 モデルを使用するため、アクションがトリガーされるまで、操作のコレクションによって定義されたロジックは評価されません。ロジックの不必要な評価を回避するには、アクションのみを使用して結果をターゲット テーブルに保存します。

アクションはロジックを最適化するための処理のボトルネックとなるため、Databricks では、Apache Spark にすでに存在する最適化に加えて、ロジックの実行を最適化するために多数の最適化を追加しています。これらの最適化では、特定のアクションによってトリガーされたすべての変換が一度に考慮され、データの物理的なレイアウトに基づいて最適なプランが見つかります。データを手動でキャッシュしたり、プレビュー結果を本番運用パイプラインに返したりすると、これらの最適化が中断され、コストとレイテンシが増加する可能性があります。

Apache Spark と Databricks の関係を教えてください。

Databricks 社は、Apache Spark の元の作成者によって設立されました。 オープンソースソフトウェアプロジェクトであるApache Sparkには、Databricksを含む 多くのトップ企業のコミッターがいます。

Databricks は、Apache Spark の機能の開発とリリースを続けています。 このDatabricks Runtimeには、C++ で書き直された Apache Spark の最適化バージョンである Photonなど、Apache Sparkに基づいて構築および拡張する追加の最適化と独自の機能が含まれています。

Apache Spark は Databricks でどのように機能しますか?

コンピュート クラスターまたはウェアハウス SQL Databricksにデプロイすると、 Apache Spark が構成され、仮想マシンにデプロイされます。 Spark コンテキストまたは Spark セッションは Databricks によって管理されるため、構成または初期化する必要はありません。

Apache Spark を使用せずに Databricks を使用できますか?

Databricks はさまざまなワークロードをサポートしており、Databricks Runtime にはオープンソースライブラリが含まれています。 Databricks SQL は内部で Apache Spark を使用しますが、エンド ユーザーは標準の SQL 構文を使用してデータベース オブジェクトを作成およびクエリします。

Databricks Runtimefor Machine Learning はML data scientistsワークロード向けに最適化されており、多くのTensorFlow の作業中にScikit-Learn Databricksや などの主要なオープンソース ライブラリを使用しています。ジョブを使用して、Databricksによってデプロイおよび管理されるコンピュート リソースに対して任意のワークロードをスケジュールできます。

Databricks で Apache Spark を使用する理由

Databricks プラットフォームは、ビジネスに合わせて拡張できるエンタープライズソリューションを開発およびデプロイするための、安全で協調的な環境を提供します。 Databricks の従業員には、世界で最も知識豊富な Apache Spark のメンテナーやユーザーの多くが含まれています。 同社は、ユーザーがApache Sparkを実行するための最速の環境にアクセスできるように、新しい最適化を継続的に開発およびリリースしています。

Databricks での Apache Spark の使用について詳しく知るにはどうすればよいですか?

Databricks で Apache Spark を使い始めるには、すぐに飛び込みましょう。 Apache Spark データフレーム チュートリアルでは、Python、R、または Scala でのデータの読み込みと変換について説明します。 「チュートリアル: Apache Spark データフレーム を使用したデータの読み込みと変換」を参照してください。

でのPython 、R、 言語サポートに関する追加情報については、Scala の 、Spark の概要 PySparkDatabricksSparkRDatabricks Scala開発者向けの、および のリファレンスApache SparkAPIs を参照してください。