こんにちは。最近Databricksを勉強しているのですが、GUIを触っていて??となったタイトルの件について調べてみたので、分かったことをまとめておきたいと思います。
なお、私はAzure上のAzure Databricksを使っているので、Azure Databricksに即して記載していますが、他のDatabricks環境だと微妙に状況が異なるかもしれませんが、ご容赦ください。
それではまいります。
背景
Azure DatabricksのGUIを触っていて、SQLがSQL Warehouseなるものの上と、Databricks Cluster上で実行できることに気付きました。
ペルソナ”SQL”上では、SQL Warehouse(Starter Warehouse Proと表示されているもの)上でSQLを実行するようなしくみになっている。
一方で、ペルソナ”Data Science & Engineering”では、以下のようにCluster(右上の、ADB Clusterの部分)を指定してSQLを実行できるようになっている。
何が違うのか?
結論
やっぱり既にいくつか議論があった。
What is the difference between Databricks SQL vs Databricks cluster with Photon runtime?
Databricks Cluster vs SQL Warehouses | by Ganesh Chandrasekaran | Medium
- それぞれは独立した別々の環境。
- ただ、双方ともDatabricks Runtimeが利用可能で、Photonエンジンも使える。
- SQL WarehouseはSQLの実行のみがサポートされているのに対し、Databricks ClusterはSQL以外にPythonやScala, Java等のAPIもサポートされている。
- Databricksはクラスターの構成を検討する必要があったり、Databricks Runtimeのバージョンも管理する必要があるが、SQL Warehouseはこれらの構成は最小限 & バージョンアップは自動的に管理される。
といったことが書いていた。クエリパフォーマンスを最大限に引き上げるPhotonエンジンも使えて両者の機能的な違いはそこまでなさそうなので、SQLを使う目的 & 管理を最小限にしたければ、素直にSQL Warehouseを使う、で問題ないのかなと思いました。
(実際に使い込んで見たわけではないので、また気になる差異があればアップデートしていきたいと思います)
勉強になりました。
おしまい
コメントを残す