連載 [第1回] :
  SODA Data Vision 2023レポート

SODA Data Vision 2023より、Gitの使い勝手をデータレイクに応用したlakeFSを紹介

2023年12月6日(水)
松下 康之 - Yasuyuki Matsushita
Open Source Summit Europe 2023の併設イベント、SODA Data Vision 2023から、lakeFSを紹介する。

The Linux Foundation配下のSODA FoundationがOpen Source Summit EU 2023併設カンファレンスとして2023年9月18日にスペインのビルバオで開催したSODA Data Vision 2023から、Gitのコンセプトをデータレイクに応用したlakeFSを解説するセッションを紹介する。約15分のセッションの中でデータレイクの中でデータを扱う際の問題点を、ソースコードの管理に利用されるGitの仕組みを使って解決するlakeFSというオープンソースソフトウェアを紹介している。

セッションを担当したのはTreeverseのCTO&Co-founderであるOz Katz氏だ。

●セッションの動画:Level Up Your Data Lake to ML and Beyond

自身のデスクトップを見せて「どんなに整理してもこうなってしまう」問題点を解説

自身のデスクトップを見せて「どんなに整理してもこうなってしまう」問題点を解説

Katz氏は自身の利用するデスクトップを見せて「私自身はオーガナイズドされた人間だと思うけど、どうしてもこうなってしまう」として、人間は基本的にこうなってしまう存在なのかもしれないと語った。

そしてデータの複雑さは、それに関わるエンジニア、データサイエンティストなどの乗数としてさらに複雑になってしまうと説明。

S3のバケットのUIを見せてデータについても同じことが起こっていると説明

S3のバケットのUIを見せてデータについても同じことが起こっていると説明

ここではAWSのS3のバケットを表示するインターフェースを見せながら、さまざまな名称やバージョンが存在し、どれが本番で使われるデータなのかが理解できないというアイコンだらけのデスクトップの問題点に通じる状況を紹介した。

データレイクに関する問題点を整理

データレイクに関する問題点を整理

問題点としてデータが常に変化するような現代の使われ方では再現性(Reproducibility)が不可能になること、開発~テストという環境において必要なデータセットを用意するのが難しいこと、結果として本番環境でのデータ保護が困難になることを紹介した。

この問題を解決するために開発されたのが、lakeFSだ。

lakeFSを紹介

lakeFSを紹介

lakeFSはデータマネージメントツールではあるが、データストレージ自体はS3などの既存のオブジェクトストレージを利用する。またオブジェクトストレージを使う側のツール、KafkaやSpark、Hadoopなどはそのまま利用することが可能であると説明。オブジェクトストレージに対してメタデータを追加することで、デベロッパーがGitを使うようにデータを使うことを可能にするというのがコンセプトだ。

この例ではS3のバケットに対してmainというブランチ名を追加しているが、このmainに対してブランチをForkしたりMergeしたりすることが可能になるという。

lakeFSのGitHubページを紹介

lakeFSのGitHubページを紹介

GitHubの公式ページでは「Data version Control (Git for Data)」というのがキャッチコピー。

GitHubのページにGit for Dataという説明

GitHubのページにGit for Dataという説明

このreadmeファイルには「Transform your object storage into a Git-like repository」という説明があり、ソースコードに変更を加える仕組みとして、すでに開発者には当たり前のGitのコンセプトをオブジェクトストレージに応用したということがわかる。

単にデータをバージョンコントロールするだけではなく、そのデータに利用されるライブラリーなどについてもメタデータとしてスナップショットをとることが可能だという。つまりどの時点のPythonのソースコードといつの時点のデータが組み合わされて実行されたのかを確認することが可能になるということだろう。

データ処理の再現性をGitの仕組みを応用して実装

データ処理の再現性をGitの仕組みを応用して実装

lakeFSのユーザーインターフェースを見せながら開発用、テスト用などのタグを使うことで単に名称だけではなくソースコードの管理と同様の手法でデータの管理ができることを説明した。ドキュメントではCI/CD for Dataというコピーが使われており、開発者にとって理解しやすいメタファーをつかっていることがわかる。

ユーザーインターフェースにタグを使ってバージョンをコントロール

ユーザーインターフェースにタグを使ってバージョンをコントロール

結果としてこれまでのデータに新しい要素を追加してテストする際に間違ってデータを追加してしまった場合でもマージする前の状態に戻すことができると語り、本番データを壊すことなどがないこと、Production Safetyが実現されると解説した。なお実際のデータ自体は複数のバージョンにコピーされているという。

データを追加した後に前の状態に戻るRevertボタンが用意されていると紹介

データを追加した後に前の状態に戻るRevertボタンが用意されていると紹介

結果としてデータに再現性をもたせられることになり、開発やテスト環境のためのデータセットの準備が容易になると説明。特にRevertボタンの持つ価値を強調した。

データの再現性、それぞれの環境用のデータを作ることが可能に

データの再現性、それぞれの環境用のデータを作ることが可能に

●公式ページ:https://lakefs.io/

●公式GitHubページ:https://github.com/treeverse/lakeFS

Gitの使い勝手をデータレイクに応用したlakeFSには、サーバーや開発用PCにインストールする形式以外にlakeFS Cloudというクラウドサービスも提供されており、公式のサイトでは実際にその使い方を体験できるようになっている。

●lakeFS Cloud:https://lakefs.cloud/

ちなみにlakeFSのロゴに使用されているのは通称ウーパールーパー、メキシコサラマンダーのLottieというキャラクターであると説明されている。データレイクがさまざまなモノで混乱した状態であることから、何がいるのかわからない湖(Lake)をキレイにしたいという意図から「lakeFS」と命名されたと質問に答えていたが、その湖にいる動物ということでウーパールーパーが選ばれたのであろう。

著者
松下 康之 - Yasuyuki Matsushita
フリーランスライター&マーケティングスペシャリスト。DEC、マイクロソフト、アドビ、レノボなどでのマーケティング、ビジネス誌の編集委員などを経てICT関連のトピックを追うライターに。オープンソースとセキュリティが最近の興味の中心。

連載バックナンバー

開発ツールイベント
第2回

SODA Data Vision 2023からKubernetes上のアプリケーションデータを保護するKanisterを紹介

2023/12/14
Open Source Summit Europe 2023の併設イベントであるSODA Data Vision 2023から、Kanisterを解説したセッションを紹介する。
開発ツールイベント
第1回

SODA Data Vision 2023より、Gitの使い勝手をデータレイクに応用したlakeFSを紹介

2023/12/6
Open Source Summit Europe 2023の併設イベント、SODA Data Vision 2023から、lakeFSを紹介する。

Think ITメルマガ会員登録受付中

Think ITでは、技術情報が詰まったメールマガジン「Think IT Weekly」の配信サービスを提供しています。メルマガ会員登録を済ませれば、メルマガだけでなく、さまざまな限定特典を入手できるようになります。

Think ITメルマガ会員のサービス内容を見る

他にもこの記事が読まれています