256bitの殺人メニュー

インフラエンジニアだったソリューションアーキテクトなくわののブログ。こちらのBlogは個人の意見となっていて会社とは全く関係ありません。お約束です。[twitter:@kuwa_tw]めんどくさがりが重い腰を上げて何かをアウトプットすることにどれほどの意味があるのかを試してみたいブログでもある。

僕の理解するデータレイクハウスとはなにか?

こちらの記事はDatabricks Advent Calendar 2023の23日目の記事です!

何年ぶりにかくねん、、、8年ぶり!!!!!????
嘘やろ、、、、😨

という衝撃はおいておいて、8年ぶりともなると色々変わっているわけで、一番大きいのは僕は会社をAmazon Web Services JapanからDatabricks Japanに変わりました。
転職の理由というのはポジティブな理由もネガティブな理由もあると思いますが、そういう細かいことはおいておいて(おくんかい)決め手になったのはこれです。

「Databricksというサービスに技術的なアドバンテージを感じたから」

SAとしていえばこういえるかもしれません、

「SAとして働いてる自分を想像して、Databricksをお客さまにオススメするときのイメージが付いたから」

でもあります。 とにもかくにもDatabricksというサービスが気になった、というのが転職理由の大きな理由の一つなわけです。 そこでみなさんはこう思うと思うんですよね「Databricksの何がいいの?」と。

今日はそれを(僕の理解の中の)めちゃくちゃザックリな説明をしていくというDatabricksってなに?という人向けの記事にしていきたいと思います。

それでは、行ってみましょう! 絵が下手すぎて全くイメージ伝わらない、、、気がしてきた、、、けど考えるな感じろでお願いしますw

Databricksって何だ?

まずDatabricksってなんなんでしょう、、、?
よく言われるのはマネージドApache Sparkだとか、ですがそれはDatabricksの一つの側面にしか過ぎないと思うんですよね?
Databricksはこう言ってます、データレイクハウスと、、、何やそれ、という方に最初からお話していきましょう、、、。

データウェアハウスの誕生

データ分析をするにあたって、みんなは思いました

「メチャクチャなデータ量のデータに対してもちゃんと応答できるデータベースをつくればいいじゃない」

それをみんなはデータウェアハウス(DWH)と呼ぶことにしました。

DWHは非常に重宝されましたが、そのうち問題が出てきました。

「構造化データはデータベースに入れやすいけど、動画や、音声などの非構造化データはどうやって分析する?」
「データの管理場所がバラバラになって管理しづらいよ」
「データを入れたらめちゃくちゃお金かかるよ」

みんなは困ってしまいます。

データレイクへ

そこでみんなは考えました。

「そうだ!データを統一したいれる場所を作ってそこから使いたいときは引っぱり出してくればいいんだよ」
「データの泉、、、データレイクだ!」

みんなはデータレイクにいろんなデータをとにかくドンドン入れていくようになりました。 データレイクは非常に安く、データレイクに入ったデータをみんなは、データの分析や、機械学習に使っていきます。

あれあれ、、、でもそのうちにまた誰かが困っているようです。

「とにかく入れまくっていたからデータレイクがぐちゃぐちゃだよ」
「このデータって正しいデータなのかな、、、?」
「データレイクからデータとってくるのちょっと遅くない?」

これでは泉ではなくて沼です。やっぱり困ってしまいました。*1

そしてデータレイクハウスへ

そのうちまた誰かが言いました。

「データレイクの中でデータウェアハウスがうごかせれば全部解決するんじゃないの?」
「それだそれだ!」
「でもどうやって?」
「データレイクの上でトランザクションや、スキーマを設計することができればそのまま動かせるよ」
「いいね!やってみよう!」
「でも名前がないと分かりづらいな、、、データレイクとデータウェアハウスを合わせてデータレイクハウスって呼ぼう」

こうしてデータレイクハウスという概念が生まれました。 データレイクハウスは低コストなクラウドストレージの上にオープンファイルフォーマットと言われる特別なフォーマット*2で、トランザクションスキーマの強制、パフォーマンスの強化を実現しました。 それによってデータウェアハウスの課題であった、データの分断やコスト、データレイクでの課題であった課題(データ品質、パフォーマンスなど)も解決することとなりました。

要するに、 ”データレイクと、データウェアハウスのいいところどり、データの格納場所はデータレイクなので、安価かつオープン。構造化データも非構造化データも取り扱える。しかもデータガバナンスが効かせられ、処理も高速。データ分析にも、機械学習にもオールインワンで活用可能” というのがデータレイクハウスの良さになるわけです。

Databricksの何がいいの?の第一歩がレイクハウス!

これがDatabricksがよくお話するデータレイクハウスのザックリとしたお話でした。なんか夢があっていいですよね。でもこれは現実です😆

データレイクハウスを最初に始めたというだけではなく、それをドンドン進化させ続けているのがDatabricksというプロダクトというわけです。

閑話休題:Databricksってどんな会社?

ここでちょっとDatabricksという会社についてお話しようと思います。
まだ入って二ヶ月ですが、まず言えるのが非常にみなさんスキルフルという点、技術が好きな方が多くて、技術ディスカッションなどになると白熱していることもあって楽しいです。
なおかつ、非常に研修なども豊富ですごい大変ですが、ためになるコンテンツがたくさん揃っています。
アットホームで楽しく仕事をできる*3環境もあるので是非Databricksにもっと深く触ってみたい!という方はお声がけください!採用強化中です!w

Databricksのお気に入りのサービス

ほら、、、AWSでもよく好きなサービスっていってたから、、、😅
DatabricksでいうとUnity Catalogが大好きです!!!
データカタログのサービスではありますが、単なるデータカタログというだけではなく、統一した権限管理/アクセスコントロール、監査ログ、データの依存管理(データリネージュ)、機械学習のモデルレジストリなど様々な機能を持ったサービスとなっており、Unity CatalogがあることでDatabricksはより統一されたガバナンスを効かせることができます。
最近の新しい機能にもUnity Catalogは深く結びついていて、ただのマネージドhive metastoreでしょ?と思っているとぜんぜん違うのできっとビビります!

まとめ

そんなこんなでとりあえず最初に面白そうと思ってもらえる記事を目指して書いてみましたがいかがでしょうか? Databricks自体は聞いたことあるけどどんなものかよくわかってないという方はまだまだいる気がしているのでこういう記事もまた書いていきたいと思います!

*1:ちゃんと運用されてるまさにデータレイク、というものもあるので絶対にこうなる、というわけではないですが課題の一例としてお聞きください

*2:Databricks で使われているのはDelta Lakeといいます

*3:メタファーの奴じゃないですw