Lock in $30 Savings on PRO—Offer Ends Soon! ⏳

アナリティクスエンジニアとその周辺の技術について

 アナリティクスエンジニアとその周辺の技術について

アナリティクスエンジニアとその周辺の技術について
川上 祐司

※この資料は以下イベントで発表した内容です。
https://lycorptech-jp.connpass.com/event/328480/
#PythonFukuoka

More Decks by LINEヤフーTech (LY Corporation Tech)

Other Decks in Technology

Transcript

  1. © LY Corporation データ分析のデータモデリングツールを開発しているdbtがAnalytics engineerを詳しく説明しているので、 以下を引用しました (以下引用 英語から日本語訳) アナリティクスエンジニアは、エンドユーザーに対してクリーンなデータセットを提供し、エンドユーザー が自分自身の質問に答えられるようにデータをモデリングする。

    データアナリストがデータの分析に時間を費やす一方で、アナリティクスエンジニアはデータの変換、テス ト、デプロイ、およびドキュメント化に時間を費やす。 アナリティクスエンジニアは、バージョン管理や継続的インテグレーションといったソフトウェアエンジニ アリングのベストプラクティスをアナリティクスコードベースに適用します。 5 アナリティクスエンジニアとは? 引用:https://www.getdbt.com/what-is-analytics-engineering
  2. © LY Corporation データ基盤周りの登場人物 6 アナリティクスエンジニアとは? データ利用者 データエンジニア データ基盤 データ分析

    データの加工 データ基盤の運用 データの取り込み処理 データの加工 データ基盤の安定運用が メインの仕事さ データを活用してビジネ スへの貢献するのさ
  3. © LY Corporation データ基盤というのは色々な商品を売っているお店の運用に似ています。 • データ品質管理(商品の品質管理) • データカタログ整備(商品の生産地や成分など) • データドキュメント整備(商品の取り扱い方法、調理方法)

    • データの利用状況管理(商品売れ行き確認) • ユーザーが利用しやすいデータを作る(素材の前処理、お惣菜など) • 欲しいデータへのアクセスしやすさ向上(商品陳列の工夫) こちらは例なので、組織の規模によっては業務範囲が広がります。 業務内容について 10 アナリティクスエンジニアとは? どこに商品がある かわからない 買った商品の賞味 期限切れてる 欲しい商品の在庫 がない 料理が嫌いだから お惣菜が欲しいん だけど… どこにデータがあ るの? 手に入れたデータ が古い 欲しいデータは連携 されていないみたい 生データの加工か らしないといけな いのか
  4. © LY Corporation 基本的なエンジニアスキルとビジネスへの関心 必要なスキルは? 11 アナリティクスエンジニアとは? • コミュニケーション •

    問題解決 • 根気強さ • 情報整理力 ソフトスキル • Python • SQL • Modern Data Stack(dbt, Airflow, Fivetran, Snowflakeなど) ハードスキル
  5. © LY Corporation 業務の流れ 16 現在の業務について JIRA BI担当者 依頼起票 ドキュメント作成

    コーディング デプロイ データ検証 依頼者にヒアリングしながら 内容を整理する 依頼者との修正内容に合意を 取れたら修正を行う 開発環境や本番環境にてデプロイ 開発環境や本番環境にて修正 後の結果検証 ドキュメント作成 リリース後の結果やデータ基 盤ポータルサイトの更新 割とドキュメント駆動開発
  6. © LY Corporation 現在の業務について 17 BI担当者 データ基盤ポータルサイト プロダクト一覧 データの内容一 覧

    お知らせ データ基盤全体のお知らせ 障害状況 現在起きている障害の情報一覧 Q&A よくある質問集 Tips一覧 運営のTips リリース情報 リリースに関する情報の一覧 JIRAチケット情報 依頼の状況や依頼以外で発生した改修のチケットの状況がわかる一覧 アナリティクスエンジニア データエンジニア データ基盤に関する情報からすぐアクセスしやすいように情報を一箇所に集めることで情報取得しやすく しています。
  7. © LY Corporation • AirflowのカスタムオペレータやAirflow用カスタムライブラリ • SQLからテーブルの依存関係を構築するライブラリ(jinja利用) 開発効率改善活動 20 Pythonの利用について

    DagName |___sqls | |___fact | |___fact__xx__sample.sql | |___dim | |___dim__xx__sample.sql | |___mart | |___mart__xx__sample.sql |___sample_dag.py |___dependencies.json fact__xx__sample dim__xx__sample mart__xx__sample Airflow jsonからDAGを生成
  8. © LY Corporation • Tableauの計算フィールドの情報整理するライブラリ • https://tableau.github.io/document-api-python/ 運営改善活動 23 Pythonの利用について

    Tableauワークブック 計算フィールド一覧.xlsx 未使用の計算フィールド一覧.xlsx ワークシート1.dot ワークシートN.dot 計算フィールドの依存関係図 計算フィールド 断捨離用
  9. © LY Corporation Tableau document api • https://tableau.github.io/document-api-python/ 24 Pythonの利用について

    ローカルのワークブックを読み込んで計算フィールドの内 容や利用しているワークブックのリストが手に入る 計算フィールドの計算式も手に入るので、ロジックの整理 にも役に立つ