見出し画像

【第11話】Databricks_別ノートブックからの実行方法

Databricks Certified Data Engineer Associate合格へ向けて取り組んでいる方に向けて、架空のキャラクターの会話形式でトピックごとに学べます。それではどうぞ!


のびデータ: 「ねえねえ、みんな。Databricksでノートブックを実行する方法、知ってる?」


スキーマオ: 「 別のノートブックから実行する方法なんて簡単だぞ。ぼくが教えてやろう」


のびデータ: 「ほんと!?ぜひ聞かせてスキーマオ!」


スキーマオ: 「悪いなのびデータ、この説明は3人までしか聞かせてあげないんだよ。だから俺様とジョブアンとシズクエリだけだぞ」 


のびデータ: 「えええ!?なんでそんなことするんだよ!世の中で、ぼくほど不幸な人があるだろうか......。」


ジョブアン: 「おい、のびデータ! 俺の説明を聞き逃すなよ。お前のためだぜ」


のびデータ: 「ありがとう、ジョブアン! ぜひ教えてよ!」


ジョブアン: 「そうだな、Databricksで別のノートブックを実行するには2つの方法があるんだ。1つはJDBC接続を使う方法、もう1つはJobを使う方法だぜ」


のびデータ: 「JDBCってなんだろう?初耳だなあ」


シズクエリ: 「JDBCは、Java Database Connectivityの略よ。データベースに接続するためのJavaのAPIなの」 


のびデータ: 「なるほど!ジョブアン、JDBCを使う方法をもっと詳しく教えてくれる?」


ジョブアン: 「いいぜ。JDBCを使えば、プログラムからデータベースにアクセスできる。DatabricksもJDBCドライバーを提供しているので、別ノートブックを呼び出せるんだ。コードはシンプルで、Class.forNameメソッドでドライバーをロードした後、DriverManagerクラスのgetConnectionメソッドで接続して、StatementオブジェクトのexecuteメソッドでSQL発行する感じだぜ」


のびデータ: 「(ちょっと難しいけど先に進もう、いつかわかるさ!)なるほど、それで別ノートブックのコマンドを実行できるんだね。すごい!」 


シズクエリ: 「でも、JDBCではノートブック全体を実行するのは難しいかしら。SQLで個々のコマンドを指定しないと」


ジョブアン: 「さすがシズちゃん。だからこそJobを使う方法がある。Jobを定義しておけば、簡単に別ノートブックを実行できるぞ」


のびデータ: 「じょぶ?なにそれ?」


ジョブアン: 「JobはDatabricksの機能の1つで、ノートブックやPythonスクリプトを定期的に実行するためのものだ。ワークフローを自動化できるんだぜ。」


のびデータ:「へぇー、すごいね。ジョブを使えば、簡単に別のノートブックを呼び出して実行できるんだね。自動化できるなんて便利だなあ!」


スキーマオ: 「このくらいのことが分からないと、俺様にはついていけないぞ、のびデータ」 


のびデータ: 「嫌なこと言うなあ! でも、なるほど、JDBCかジョブを使えば別ノートブックの実行ができるんだね。Databricksの機能を上手に使えば、ワークフローを効率化できるんだ。わかったことを生かして、学習をがんばろう!」


<補足>

Databricksで別のノートブックを実行する方法は大きく2つあります。

1つはJDBC接続を使う方法です。DatabricksのJDBC/ODBCドライバーを使用して、プログラムからDatabricksに接続し、SQL文でコマンドを直接発行することができます。

もう1つはJob機能を使う方法です。JobとはノートブックやPythonスクリプトを定期的に実行するための機能です。Jobにノートブックを指定しておけば、簡単に別ノートブックを呼び出して実行できます。ワークフローの自動化に役立ちます。

詳細は公式ドキュメントなどを参照してください。

いいなと思ったら応援しよう!