❄️

Frosty Friday Live Challenge Vol.3

がく@ちゅらデータエンジニアです!
久々の投稿です・・・さぼりにさぼってた・・・汗

先日より、以前からやってみたかったFrosty Fridayをやる深夜RADIO的な番組を始めました。
一緒にメインMCをやってるのが、Tableau DataSaber時代からの友達の @tomowk1 さん♪

【JTUGスピンオフイベント】Tableau ぴよぴよユーザーに贈る 「データに聞いてみよう」

を一緒にやった仲間・戦友・ママ?友なtomoさんですw

Frosty Fridayとは

https://frostyfriday.org/

2022年07年に最初のお題が投稿されたSnowflakeのスキルアップを目的とした学習コンテンツです。
1週間〜2週間に一度、Snowflakeに関するお題が出題されます。
レベル的には、初級、中級、上級があります。
Frosty Fridayへの参加方法は、

  • 作ったコードをご自身のGithubなどで公開
  • そのURLをお題(Week1など)にコメントを記載

回答は”公式”にはありません!
ただ、世界中でSnowflakeを使っている人のチャレンジの結果が閲覧でき、すごく参考になり面白いです。

Snowflake実務者の方々のノウハウが知れるコンテンツとなっています
現時点(2024年5月現在)で、Week94 まで出題されています。
後発ではありますが、Week1から順番にお題を進めています。

Frosty Friday Live Challenge Vol.3

今回のゲストは、sakatokuさん♪

  • Data Superhero 2024
  • User Group Leader : Streamlit

今回は、Week8 Basic Streamlit を解説していただけました! 
なんと3種類の解法で!!!!!!

https://www.youtube.com/watch?v=KkcqTTWmol8

今週のリリースノートからピックアップ

https://docs.snowflake.com/en/release-notes/2024/8_20

このリリースでは、Trust Center のプレビューを発表します。Trust Center を使用すると、Snowsight のアカウントのセキュリティ リスクを評価および監視できます。Trust Center では、アカウントで見つかったセキュリティ リスクを修正する方法に関する推奨事項も提供されます。

https://docs.snowflake.com/en/release-notes/2024/other/2024-05-17-document-ai

https://docs.snowflake.com/en/release-notes/2024/8_19

INCLUDE_METADATA コピー オプションの既知の問題を解決しました

今週のTopics

  • dbt-core v1.8 がリリース!(Bugfixで、1.8.1がリリースされてます)

https://zenn.dev/indigo13love/articles/ab5be19cd3a020

https://www.youtube.com/watch?v=BHjcy4_KIyQ
by Felipe Hoffaさん

Frosty Friday Live Challenge

今回は

  • Week7 – Intermediate Tags,Account Usage
  • Week8 – Basic Streamlit

です。

解説は動画を見てください!

Week7 Intermediate Tags, Account Usage @gak_t12

問題

Week7 - 中級 - Tags, Account_Usage

悪役になるのはそれだけで十分難しいことです。しかしデータの問題は善人だけの問題ではありません。
悪役は多くの俯瞰的な情報を持っている。EVIL INC.はSnowflakeの使用を開始した。

開発している、超兵器(スーパーウェポン)の最も重要な部分、キャッチフレーズの情報が漏洩していることが発覚しました。
幸いなことに、誰がどの情報にアクセスしたかが追跡できるようにタグを設定していました。

今回の課題は、「Level Super Secret A+++++++」とタグ付けされたデータに誰がアクセスしたかを突き止めることです。
データにアクセスするユーザーを作るのはちょっと難しすぎるかもしれないので、ユーザーの代わりにロールを使っています。

以下は、チャレンジの前に実行していただきたい予備コードです。account_usageの更新には2時間かかるので、以下のコードを実行し、少なくとも数時間後にチャレンジに戻ってくることをお勧めする。

1)データベースを新規に作っていい場合のSQLはこちら
2)データベースを新規に作りたくない場合のSQLはこちら

求める結果はこちら
TAG_NAME, TAG_VALUE, MIN(QUERY_ID), TABLE_NAME, ROLE_NAME
SECURITY_CLASS, Level Super Secret A++++++, 0125ded8-0000-223e-0000-914900053246,  FROSTY_FRYDAY.CHALLENGES.WEEK7_VILLAN_INFORMATION, USER1
SECURITY_CLASS, Level Super Secret A++++++, 0125ded8-0000-223e-0000-914900053246,  FROSTY_FRYDAY.CHALLENGES.WEEK7_WEAPON_STORAGE_LOCATION, USER3

https://github.com/gakut12/Frosty-Friday/tree/main/week7_intermediate_Tags_and_Account_Usage

解説の中で、うまく使えませんでしたが、FILTERを使っているので、そのドキュメントへのリンクがこちらです。

※FILTERとは、半構造化データのarray型を操作する句で、Lambda式で操作ができる

Week8 Basic Streamlit by @AKsakatoku

https://github.com/Sakatoku/Frosty-Friday/blob/main/week8_basic_streamlit/

3つの解法で解説なさっています

  1. VSCodeを使い、ローカルからSnowflakeへアクセスして、ローカルでStreamlitを動かす
  2. Streamlit in Snowflakeをつかい、SnowflakeUI(Snowsight)のStreamlitタグで動かす
  3. お楽しみ♪

関連情報

また、収録の後に別途動画を作られたので、共有します!

https://www.youtube.com/watch?v=RSFGDDmaIQw

ちゅらデータ株式会社

Discussion