[2024年7月17日号]個人的に気になったModern Data Stack情報まとめ

[2024年7月17日号]個人的に気になったModern Data Stack情報まとめ

Clock Icon2024.07.17

さがらです。

Modern Data Stack関連のコンサルタントをしている私ですが、Modern Data Stack界隈は日々多くの情報が発信されております。

そんな多くの情報が発信されている中、この2週間ほどの間で私が気になったModern Data Stack関連の情報を本記事でまとめてみます。

※注意事項:記述している製品のすべての最新情報を網羅しているわけではありません。私の独断と偏見で気になった情報のみ記載しております。

Modern Data Stack全般

DataOps Night #4 データプロダクト/分析基盤開発の舞台裏

ナウキャスト社の主催で、「DataOps Night #4 データプロダクト/分析基盤開発の舞台裏」というイベントが2024年7月10日に行われました。

https://finatext.connpass.com/event/320643/

各登壇者の資料も公開されています。Snowflakeのリソース管理方法、dbtのリポジトリ構成、仮名加工情報、Data Ingestion/ETLの技術選定、とそれぞれに踏み込んだ内容がまとめられているため、参考になる方も多いと思います。

https://speakerdeck.com/kevinrobot34/multi-data-product-platform-with-snowflake-dbt-terraform

https://speakerdeck.com/tenajima/jia-ming-jia-gong-hua-noshi-jian-detafen-xi-ji-pan-niokerutiao-zhan-toxue-bi

https://speakerdeck.com/irotoris/data-ingestion-etl-adrs-at-dataops-night-number-4

Notionのデータ基盤のアーキテクチャについて

Notion社より、FivetranとSnowflakeのアーキテクチャでスケールすることが難しかったNotionのブロックデータを処理する基盤について、Debezium CDC・Apache Kafka・Apache Hudi・Sparkを軸としたデータレイクのアーキテクチャに移行したという、その変遷をまとめた記事が出ていました。

記事中ではより詳細な技術選定の理由が述べられていますが、「FivetranとSnowflakeを完全に置き換えたわけではなく別のワークロードに活用している」ということも言及がありました。各ワークロードに併せて最適な製品を使うのが大事ですね。

https://notion.notion.site/Notion-cacbc757d9ff4255bb4fae4b884e005c

Data Extract/Load

Omnata

外部データソースとのデータ連携を容易に実現するNative Apps「Omnata」

OmnataはSnowflake Native Appsとして提供されており、StreamlitやSnowflakeのUDFやストアドプロシージャを中心に構成された、外部データソースのデータロードとReverse ETLを実現する製品となっています。

私の記事で恐縮ですが、Snowflake Marketplaceを介してインストールができるNative Appsである「Omnata」を試してみました。こちらの記事ではGoogleスプレッドシートのデータロード及びReverse ETLを行っています。

https://dev.classmethod.jp/articles/snowflake-try-omnata-google-sheets/

Data Warehouse/Data Lakehouse

Snowflake

Snowflake Connector for PostgreSQLとSnowflake Connector for MySQLがプレビュー

Snowflakeに対してPostgreSQLとMySQLのデータを直接ロードできる新しいコネクタとして、Snowflake Connector for PostgreSQLとSnowflake Connector for MySQLがプレビューとなりました。

https://docs.snowflake.com/en/release-notes/2024/other/2024-07-11

手早く試すための、チュートリアルも公開されています。

https://other-docs.snowflake.com/en/connectors/tutorials/dbtutorial#introduction

より実運用を考慮した設定手順はこちらのドキュメントを見ることをおすすめします。

https://other-docs.snowflake.com/en/connectors/postgres6/tasks
https://other-docs.snowflake.com/en/connectors/mysql6/tasks

Snowflakeの公式アカウントでMFAを強制する機能がリリース

Snowflakeの新機能として、MFAを強制する機能がリリースされました。具体的には以下の機能がリリースされています。

  1. SnowflakeアカウントのすべてのユーザーにMFAを要求する新しいauthentication policy
  2. ユーザーレベルのMFA設定を求めるSnowsight
  3. MFAポリシーの遵守を監視するための Snowflake Trust Centerの一般提供

また、下記の記事からの引用ですが、セキュリティに関するベストプラクティスについても言及がありました。

  1. 外部サービスと連携用のユーザーには、パスワードではなくキーペア認証または外部 OAuthで認証させること
  2. アカウントレベルでauthentication policyを設定し、MFAを要求させること。外部サービスとの連携用のユーザーを除外するには、必ずユーザーレベルのポリシーを設定すること
  3. password policyを有効にし、PASSWORD_MIN_LENGTH14に、PASSWORD_MAX_AGE_DAYS を1年未満に設定すること
  4. network rulesを使用してnetwork policyを有効にすること
  5. Trust Centerを活用してMFAの使用状況を監視し、network policyの構成を確認すること

https://www.snowflake.com/blog/snowflake-admins-enforce-mandatory-mfa/

Snowflake Copilotが一般提供

Snowflake Copilotが一般提供となりました。デモ動画も載った公式ブログも投稿されています。

https://docs.snowflake.com/en/release-notes/2024/other/2024-07-15-snowflake-copilot-ga

https://www.snowflake.com/blog/copilot-ai-powered-sql-assistant/

ただ、2024年7月17日時点で使用できるのは下記のリージョンだけですので、注意が必要です…

  • AWS us-east-1
  • AWS us-west-2
  • AWS eu-central-1

terraform-provider-snowflakeのver0.93.0のリリース

SnowflakeのリソースをTerraformで管理する際に必要となるterraform-provider-snowflakeについて、ver0.93.0がリリースされました。

https://github.com/Snowflake-Labs/terraform-provider-snowflake/releases/tag/v0.93.0

移行ガイドも併せて更新されています。今回は多くのリソースが追加されているため、移行ガイドもボリュームがあります…

https://github.com/Snowflake-Labs/terraform-provider-snowflake/blob/main/MIGRATION_GUIDE.md#v0920--v0930

SnowflakeにCOPY INTOでバルクロードする際のポイント

@irotorisさんにより、SnowflakeのCOPY INTOコマンドを使ってロードする際に押さえておくべきポイントをまとめた記事が出ていました。

ファイル形式、ウェアハウスのサイズ、過去データの一括ロード時の課金に関する注意、Snowflakeの3種類のクラスタリング、VARIANT型としてロードするときはプルーニングが効くように対象のデータを別のカラムにしておく、といったことがまとめられています。COPY INTOはSnowflakeを使う全ユーザーが使用する機能といっても過言ではないため、ぜひご覧ください。

https://tech.layerx.co.jp/entry/2024/07/16/184829

BigQuery

GA4のエクスポートデータのスキーマが変更

私も@S4RngeNhBvAlC9fさんの投稿で知ったのですが、GA4のエクスポートデータのスキーマが変更となったようです。(まだ2024年7月17日時点では情報の公開もないようです…)

https://x.com/S4RngeNhBvAlC9f/status/1811614971966668896

またこちらの内容に関連する記事として、syou6162さんがシャーディングテーブルに対するクエリ発行時のハマりどころをまとめた記事を出していました。events_YYYYMMDDevents_intraday_YYYYMMDDという2種類のシャーディングが存在する方は多いと思いますので、ぜひご覧ください。

https://www.yasuhisay.info/entry/2024/07/17/022511

MotherDuck/DuckDB

DuckDBのメモリ管理に関する記事

DuckDBのブログにおいて、DuckDBでクエリを処理する際にどのようにメモリを管理しているかをまとめた記事が出ていました。

DuckDBはローカル環境で実行することが多い関係上、メモリ管理が重要になってきます。この記事ではDuckDBで使用するメモリや一時的なディレクトリのサイズを制限する方法や使用したメモリのプロファイリングの方法について言及されているため、参考になる面も多いと思います。

https://duckdb.org/2024/07/09/memory-management.html

Data Transform

dbt

dbt Semantic Layerに関するユースケース・移行のステップをまとめた記事

dbt Labs社の公式ブログにおいて、dbt Semantic Layerに関するユースケースと移行のステップをまとめた記事が出ていました。

特に2つ目の移行のステップをまとめた記事は、元々dbtで開発を行っていたときにどういったモデルを対象にdbt Semantic Layerに移行していけばよいかなどが言及されており、参考になるところも多いと思います。

https://www.getdbt.com/blog/five-use-cases-for-the-dbt-semantic-layer

https://docs.getdbt.com/blog/semantic-layer-in-pieces

SDF

公式HPが刷新されPricingのページも更新

SDFは先日Public Beta版のリリースを発表していましたが、今回公式HPも刷新し、Pricingページも更新されていました。

具体的な価格も記載されているため、費用感を掴むのにはちょうどよいと思います。

https://www.sdf.com/pricing

Business Intelligence

Looker

24.12のリリースノートが公開

Lookerの最新バージョンである24.12のリリースノートが公開されました。

細かなUIや機能周りのアップデートが多い印象ですね。

https://cloud.google.com/looker/docs/release-notes

Steep

Steep上で自然言語でやり取りしながらグラフを構築できる「AI Chart Builder」を発表

Steepが新機能として、Steep上で自然言語でやり取りしながらグラフを構築できる「AI Chart Builder」という機能を発表しました。

https://steep.app/blog/july-2024

こちらの機能については私も試してみました。Steepは事前にMetricsを定義することやdbt Semantic Layerなどの製品と連携しておくことが必要の製品のため、「Semantic Layerで定義を行った内容に対して、生成AIを使ってグラフの作成」が出来ました。

https://dev.classmethod.jp/articles/steep-ai-chart-builder-with-dbt-semantic-layer/

Data Catalog

Secoda

dbtへのメタデータのPush機能を発表

Secodaの新機能として、Secodaで定義したメタデータをdbtにPushできる機能を発表しました。

Secodaで定義されたdescription、owner、tagをdbtに書き戻すことが出来るようです。私が知る限りでこの機能をリリースしているのは、CastorDoc、Select Starに次いで3社目だと思います。

https://feedback.secoda.co/changelog

Select Star

Lineage Explorer 2.0など新機能をリリース

Select Starが、Lineage Explorer 2.0、Slack AI、通知、に関するリリースを行いました。

Lineage Explorer 2.0によって、Select Starのリネージが更に見やすく操作性も向上していそうです!

https://docs.selectstar.com/changelog/july-9-2024-lineage-explorer-2.0-slack-ai-and-notifications

Data Orchestration

Orchestra

Version Control機能をリリース

Orchestraの新機能として、データパイプラインのバージョン管理を行う機能をリリースしました。
OrchestraはGUIベースの製品ですが、定義した情報は.ymlファイルで保持しているためバージョン管理が行うことが可能となっています。

https://orchestra-1.gitbook.io/orchestra-portal/core-concepts/version-control

本機能のリリースに併せて、OrchestraのCEOもブログを投稿しています。

https://www.getorchestra.io/blog/why-version-control-is-imperative-for-modern-data-engineering

誰でも使用できるデモ環境が公開

これはいつから公開されていたか私も厳密に把握していないのですが、自由にOrchestraの画面上で操作を行えるデモ環境が公開されていました。

OrchestraのUIの雰囲気を掴むにはちょうどよいと思います。より気になった方は無料版もありますので、そちらもぜひお試しください。

https://demo.getorchestra.io/pipelines

Share this article

facebook logohatena logotwitter logo

© Classmethod, Inc. All rights reserved.