📹

Cloud Dataprepを使ってみたらおもしろかった件

2023/04/23に公開

はじめに・・

前回は、BigQuery にデータをインポートするために Google スプレッドシートでデータの整形を行いました。

https://zenn.dev/maijun/articles/d0a0f3f1578de9

そこで気づいた事。

データが多すぎるとGoogleスプレッドシートでは出来ないだろう。

大容量のデータだとそもそもGoogleスプレッドシートでもファイルオープンすることさえ出来ないだろうと予想。

「じゃぁ Google Cloud で BigQuery にインポートする際にそういう整形するツールってあるのだろうか?」と思い、今回は ETL ツールについて調べて、実際に触ることにしてみました。

どういう ETL ツールがあるのか検索してみる

まずはツール類にどういうのがあるのかを調べるために、サクッと Google で検索してみると以下の技術ブログ記事を発見しました。

https://qiita.com/tomoyanamekawa/items/e45317bada702159add0

ちょっと2年前と古い記事ではありますが、いくつかのツール名が掲載されており判りやすかったので助かりました。いちおうざっと見てみると・・・

すでにこの時点でいろんなツールがあることが判明。

そもそも ETL ツールとは?

毎回 ETL ツールを考えると、歌手グループのELTが脳内で自動再生されちゃうのですが、それではありません。

ETL ツールとは。

  • Extract(抽出)
  • Transform(変換)
  • Load(書き出し)

データをデータウェアハウスに持っていく際に、上記手順で行う。そういった作業を行うツールが ETL ツールと呼びます。

大量のデータを効率よく変換や不要なデータの削除、2つのデータを合体したりすることも出来るので本当に便利だと思います> ETL ツール

なぜ ETL ツールについて知っていたのか?

Google Cloud にてデータ分析の勉強を初めたばかりなのに、なぜ私が ETL について知っていたのか?

実は、 AWS だと Data Analytics - Specialty 試験の勉強範囲に ETL が出てくるんです。特に AWS Glue が頻出するので ETL 自体を知っていたんですね。

https://aws.amazon.com/jp/certification/certified-data-analytics-specialty/

上記の勉強をする際に、 ETL について理解したので今回もスムーズに頭に入れることが出来ました。

じゃぁどのツールを使えばいいのか?

今回の Google Cloud においての ETL ツールも多数ありましたが、どれを使えばいいのか?

個人的には以下がポイントだと思います。

  • ツールによって機能差がある。
  • 要件によって選択する必要性。
  • でも個人勉強で触るので、わかりやすそうなのがよい

\\ わかりやすいそうなのがよい //

という事で、最初なので勉強目的ってことで一番わかりやすそうな、DataPrep を触る事にしました。

説明ページの図から既にわかりやすいんですよねー
https://cloud.google.com/dataprep?hl=ja

実際に DataPrepを使ってみた

Google Cloud コンソールメニューの遥か下位に存在する Data Prep 。実際に呼び出してみると利用規約の確認を求められます。

非常に長い英文の規約が準備されており、読み込んでいくとどうやら提供元って Google じゃないんですね。Trifacta 社から提供されているようです

でも買収もあったりするので、一体どこが提供元なんだろう?と未だに疑問です。

Alteryx、Trifacta 社の買収を完了

使ってみると、ところどころでネタ画像があって面白い

長い規約を読む旅が終わった後に、実際にチュートリアル的にいろいろ触っていくと、途中でよくネタ画像が説明の際に出てきます。

スポンジ・ボブっぽいのだったり・・・

データ変換する際には、トランスフォーマーっぽい動画が出てきたりします。

遊び心がある感じで面白いですね。

ノーコード、 GUI でサクサク操作が出来る。

アニメーションっぽい画像や動画が出てきて面白いのですが、肝心なのは機能面です。

その部分についても DataPrep は問題なしに面白かったです。

通常こういったデータ変換作業したりする場合、コード書いたりするケースが多々あるのですが、今回の DataPrep まったくコードを書かずに、 GUI 操作でインポート処理がサクサク出来ました。

型変換や書式変更も GUI で操作が可能でした。

なかでも楽しかったのが列操作ですね。

いらん列はバシバシ簡単に削除できるし、型変換も一発。2つ以上の列を同時選択した後にメニューから簡単にマージも出来たのが楽しかったです。

何より途中で男の子が好きそうなフロー状況が見れたりもします。

Dataflow job の様子ですね。

変換結果は、 BigQuery や GCS に簡単に吐き出しも出来ました

こういう触って楽しいのって大事ですよね。
簡単に操作が出来てデータ変換が出来たのでホントよく出来たツールだと思います> DataPrep

しかし料金にビビる。

実際に使って見て良いなと感じたのですが、あくまでもトライアル期間です。

じゃぁトライアル終わった後の料金っていくらなんだろう?と調べてみると・・

結構いいお値段でした。
勉強目的で触るにしては高すぎたので、とりあえず本番利用はせずにトライアルだけに留めました。

まとめ

今回の学習内容のまとめです。

  • やはり様々な ETL ツールがあり利用できる
  • 要件用途に応じて ETL ツールの選択が必要
  • Dataprep はノーコード、 GUI で操作が出来た
    • ところどころでネタ画像が出てくる
  • 何より使っていて面白い。簡単に列操作できる
  • しかし金額にはビビる。個人では普段使いしづらい価格

以上になります。

次回も、データ整形やインポートを行う際のツール等について調べてみて、アウトプットしてみます!

Twitter Liveでのアウトプット内容

https://twitter.com/maijun2/status/1646815562532786177

Discussion