Slide 1

Slide 1 text

データアナリストが行う Databricksを活用したETLの自動化事例 2024.4.5

Slide 2

Slide 2 text

西川 史乃亜 2 所属:株式会社BuySell Technologies    テクノロジー戦略本部データサイエンス部 略歴:2022年6月に株式会社Buysell Technologiesに入社。 データアナリストとして、データ分析・効果検証・データの可視化、    アナリティクスエンジニアリング( Databricks)を担当。    前職もBuySell Technologiesと同じリユース系の会社で、    デジタルマーケティング・事業企画・新規事業企画などを経験。 趣味:飼っている猫たちと遊ぶ、筋トレ、よさこい(旗士)

Slide 3

Slide 3 text

02 03 01 アジェンダ バイセルの事業紹介とデータ事情 3 Databricksの活用事例 まとめ

Slide 4

Slide 4 text

01 バイセルの事業紹介とデータ事情

Slide 5

Slide 5 text

5 バイセルグループのリユースビジネス グループ各社がそれぞれの強みを活かして、買取から販売まで、幅広い商材を取り扱う総合リユースビジネスを展開しています。 特に出張訪問買取事業は業界最大級の規模で全国展開する、バイセルの強みです。 着物・切手・貴金属・ ブランド品・時計 等 買取 店舗・催事 店舗 販売 一般 顧客 外部 業者 EC販売 催事 卸販売 オークション ・自社EC(バイセルオンライン 等) ・ECモール(ヤフオク!・楽天 等)  着物・ブランド品・時計・お酒 等 ・越境EC(ライブコマース 等)  ジュエリー、ブランド品等 ・百貨店  着物 ・他社市場、相対取引 等  貴金属・ジュエリー・切手 等 ・自社市場(タイムレスオークション)  時計・ジュエリー・ブランド品 等 一般 顧客 出張訪問・ 宅配・店舗 販売顧客 買取顧客 買取商品

Slide 6

Slide 6 text

6 プロダクト群「バイセルリユースプラットフォーム Cosmos」の開発が進行中 リユースに必要なすべての機能を提供する 「リユースプラットフォーム Cosmos」の開発が進行中です。 Cosmosを活用して、バイセルグループ全体での業務効率改善やデータドリブン経営の深化を目指しています。 リユースプラットフォーム Cosmos 自社開発のリユース特化業務基幹システムでありサービス群の集合体 買取申込 買取・査定 在庫管理 販売 多様なチャネルで収益最大化 CRM -顧客対応- 買取種別に応じた最適なシステム構築 Visit -訪問買取 - Store -店舗買取 - Promas -商材マスタ - Appraisal -専門査定 - Stock -在庫管理 - EXS -販売管理 - Core -会員管理- Portal -データ利用- Pocket -データ基盤- 買取 専門チームによる真贋・査定と連携 査定 申込 効率的な顧客対応 在庫 在庫管理の最適・効率化 販売 データ 各事業プロセスにある データを一元管理 :基幹システム

Slide 7

Slide 7 text

7 プロダクト群「バイセルリユースプラットフォーム Cosmos」の開発が進行中 リユースに必要なすべての機能を提供する 「リユースプラットフォーム Cosmos」の開発が進行中です。 Cosmosを活用して、バイセルグループ全体での業務効率改善やデータドリブン経営の深化を目指しています。 リユースプラットフォーム Cosmos 自社開発のリユース特化業務基幹システムでありサービス群の集合体 買取申込 買取・査定 在庫管理 販売 多様なチャネルで収益最大化 CRM -顧客対応- 買取種別に応じた最適なシステム構築 Visit -訪問買取 - Store -店舗買取 - Promas -商材マスタ - Appraisal -専門査定 - Stock -在庫管理 - EXS -販売管理 - Core -会員管理- Portal -データ利用- Pocket -データ基盤- 買取 専門チームによる真贋・査定と連携 査定 申込 効率的な顧客対応 在庫 在庫管理の最適・効率化 販売 データ 各事業プロセスにある データを一元管理 :基幹システム 全てのデータを集約 (BigQuery)

Slide 8

Slide 8 text

● 前提:各プロダクトのRDBはBigQueryに同期している ● 課題:ExcelやCSV、Googleスプレッドシートのデータや外部ツールのデータが RDB、 BigQueryに格納されていない ○ 手元で集計しているデータ / 独自で管理しているマスタ / 外部サービスのデータ( Google、Kintoneなど)/ パブリック データ(統計データ、気象データなど) ● 影響:事業部サイドでデータ分析が進めにくい 8 Databricks導入前の背景と課題

Slide 9

Slide 9 text

● 前提:各プロダクトのRDBはBigQueryに同期している ● 課題:ExcelやCSV、Googleスプレッドシートのデータや外部ツールのデータが RDB、 BigQueryに格納されていない ○ 手元で集計しているデータ / 独自で管理しているマスタ / 外部サービスのデータ( Google、Kintoneなど)/ パブリック データ(統計データ、気象データなど) ● 影響:事業部サイドでデータ分析が進めにくい 9 Databricks導入前の背景と課題 「RDBのデータと独自で集めたデータを組み合わせてデータ分析が行える環境」を 整備することが必要

Slide 10

Slide 10 text

02 Databricksの活用事例

Slide 11

Slide 11 text

11 Databricksを活用した 扱いやすいデータ基盤の構築 ● RDBに入っていないデータは、Databricksを用いてインポート。 ● メダリオンアーキテクチャに基づいて扱いやすいデータレイクを構築。 ● Bronze ○ 未加工データ。データの重複などを含む ● Silver ○ クレンジング済みデータ。データの重複を 除去し、使いやすいようにデータの分割や 結合を施したデータ。 ● Gold ○ ビジネスレベルに特化されたデータ。 BI ツールから参照されるデータ。

Slide 12

Slide 12 text

● 業務効率化 ● データガバナンス強化 12 Databricksを活用するメリット

Slide 13

Slide 13 text

● 背景・課題: ○ Search ConsoleのデータがRDBやBigQueryに未格納 ○ Search Consoleからデータを手動でエクスポートし、 ExcelやGoogleスプレッド シート上でBigQueryから取得したデータと突合する必要があった ○ 多くのサイトの分析を日々行なっているため、データ処理が煩雑化していた 13 例01:Google Search Console APIを    利用した各サイトデータの自動取得    (業務効率化)

Slide 14

Slide 14 text

14 例01:Google Search Console APIを    利用した各サイトデータの自動取得    (業務効率化)

Slide 15

Slide 15 text

● 解決方法: ○ Databricks上でGoogle Search Console APIを実行 ○ 分析に必要なデータを取得、整形 しBigQueryに格納 ○ 毎日指定時間にジョブが実行さ れ、取得可能な最新データが蓄積 されていく 15 例01:Google Search Console APIを    利用した各サイトデータの自動取得    (業務効率化)

Slide 16

Slide 16 text

16 例01:Google Search Console APIを    利用した各サイトデータの自動取得    (業務効率化)

Slide 17

Slide 17 text

● ポイント: ○ リクエスト時に渡すパラメータはデータ利用者と相談して決める ○ Google側のデータ遅延等によりデータが上手く取得できない場合もあるため、開 発者側でエラーを認知できるようにしておく 17 例01:Google Search Console APIを    利用した各サイトデータの自動取得    (業務効率化)

Slide 18

Slide 18 text

● 背景・課題: ○ 使用しているCTIツールとBigQueryが未連携 ○ ツールからCSVを手動でエクスポートし、Googleスプレッドシート上でデータを加 工し、データ集計や分析を行っていた 18 例02:RDBやBigQueryに連携できない    ツールからエクスポートしたCSVの    自動取込(業務効率化)

Slide 19

Slide 19 text

19 例02:RDBやBigQueryに連携できない    ツールからエクスポートしたCSVの    自動取込(業務効率化)

Slide 20

Slide 20 text

● 解決方法: ○ CTIツールからCSVをエクスポートする 部分は引続き手動で実施 ○ エクスポートしたCSVを指定のGoogleド ライブに格納 ○ Databricks上でGoogle Drive APIを利 用しCSVデータを取得 ○ データ加工後、BigQueryに格納 20 例02:RDBやBigQueryに連携できない    ツールからエクスポートしたCSVの    自動取込(業務効率化)

Slide 21

Slide 21 text

21 例02:RDBやBigQueryに連携できない    ツールからエクスポートしたCSVの    自動取込(業務効率化)

Slide 22

Slide 22 text

● ポイント: ○ BigQueryに格納されたCSVを処理中にアーカイブフォルダに移動させる ○ 未格納のCSVがあるかどうか検知する処理を定期実行し、 CSVデータの格納漏 れがあれば関係者に通知する 22 例02:RDBやBigQueryに連携できない    ツールからエクスポートしたCSVの    自動取込(業務効率化)

Slide 23

Slide 23 text

● 背景・課題: ○ データは取得するタイミングによって値が異なっている、且つ事業部ごとにデータ の粒度やSQLのロジックもバラバラ ○ 事業部間で「正しい数値」の認識にズレが生じていた ○ データ量の関係でプロダクトのRDBに確定データを蓄積していくのは難しい( 15万 ~900万件レコードが入っているCSVファイルが数ファイル分) 23 例03:確定データ自動取得   (ガバナンス強化)

Slide 24

Slide 24 text

24 例03:確定データ自動取得   (ガバナンス強化)

Slide 25

Slide 25 text

● 解決方法: ○ 正しいロジックを元に組まれた SQLをプロダクト側で実行 ○ 出力結果をCSV化し、外部スト レージに格納 ○ Databricksで外部ストレージに格 納されているCSVを取得した後、 データをBigQueryに格納 25 例03:確定データ自動取得   (ガバナンス強化)

Slide 26

Slide 26 text

26 例03:確定データ自動取得   (ガバナンス強化)

Slide 27

Slide 27 text

● ポイント: ○ 外部ストレージに格納されたCSVデータとBigQueryに格納されたデータに欠損が ないかチェック(レコード件数で比較) ○ BigQueryに格納されたデータをデータソースとして、 LookerStudio上でダッシュ ボードを作成(複雑なSQLを事業部側で構築する必要も無くなった) 27 例03:確定データ自動取得   (ガバナンス強化)

Slide 28

Slide 28 text

03 まとめ

Slide 29

Slide 29 text

● 事業部が独占していたデータが自由に取れるようになり、他部署の業務理解が進んだ ● 手動で行っていた集計の工数が削減され、分析業務に集中できるようになった ● 使用しているツールの仕様上、閲覧できる期間や表示件数に制限があったが、必要な データが全てBigQueryに取り込まれているため、データ分析作業が捗るようになった 29 データ利用者の反応

Slide 30

Slide 30 text

● Databricksは柔軟性が高く、エンジニアではないアナリストでも簡単にデータを集めるこ とができる ● データを集める中で業務効率化やデータガバナンス強化も実現可能 ● 事業部が独占していたデータが民主化され、全社でのデータ活用が促進された 30 まとめ

Slide 31

Slide 31 text

バイセルでは今後もDatabricksを活用し、グループ全体のデータ活用を 促進していきます 31 まとめ

Slide 32

Slide 32 text

THANK YOU 32