Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.
サクっと業務でつくった
ログ/データ調査環境
(re:dash ☓ AWS Athena ☓ embulk)
自己紹介
2
茂木 高宏(もてき たかひろ)
株式会社 CyberZ
F.O.X事業 SRE engineer
twitter: @tkmoteki
facebook: takahiro.moteki.31
最近の業務
● ログ/データ調査環境...
はじめに: 対象のログ/データ
3
● サービスログ
○ 例:) 広告系(クリック,コンバージョン), KPIログ...
● システムログ
○ 例:) アクセスログ, パフォーマンスログ, セキュリティログ...
● サービスデータ
○ 例:)...
はじめに: 話すところ
データ収集 ETL/集計/保存 分析/調査/可視化
今回対象
(赤字)
今回対象外
(既存環境)
Agenda
背景/課題1
方針2
選定/設計(システム/運用)3
構想(今後)5
re:dash紹介4
背景: チーム/ユーザの用途
6
チーム
A
チーム
B
チーム
C
チーム
SRE
チーム
SDK
CS
PO
CSE
セールス
開発チーム(ベーシックユーザ): 開
発/運用/調査用途
CSチーム(ライトユーザ):
調査用途, 顧客依頼の特...
背景: チーム/ユーザの調査利用
7
チーム
A
チーム
B
チーム
C
チーム
SRE
チーム
SDK CS
PO
CSE
セールス
データベース
エンジニア
CS
ETL/集計/保存
ビッグデータ
クエリ
クエリ
エンジニア/CSで
同じユ...
課題:
8
集計環境に影響し
クエリ ゲロ遅い
● 1週間に2回 影響受けるETL/集計環境
● Hive利用のため
データ活用性低下
画面開発工数問題 ● ○○データの一覧取得&一括ダウンロード等で
画面開発工数かかる
● 大量データストアの...
ログ/データ調査環境をサクっとつくる
(分析環境ではない)
Agenda
背景/課題1
方針2
設計(システム/運用)3
構想(今後)5
re:dash紹介4
方針: 解決方針
11
集計環境に影響,
クエリ ゲロ遅い 実行エンジンの見直し
~課題~
データ活用性低下
画面開発工数問題
~解決方針~
ユーザインタフェース見直
し
データの一元アクセス ,
結果の結合が可能
方針: システム要件
12
集計環境に影響,
クエリ ゲロ遅い 実行エンジンの見直し
~課題~
データ活用性低下
画面開発工数問題
~解決方針~
ユーザインタフェース見直
し
データの一元アクセス ,
結果の結合が可能
~システム要件~
Sca...
サクッとつくる極意
13
● プログラムレス(なるべくコーディングしない)
● 構築レス(なるべくサーバつくらない)
● 設定レス(なるべくチューニングしない)
Agenda
背景/課題1
方針2
設計(システム/運用)3
構想(今後)5
re:dash紹介4
設計: 導入
15
集計環境に影響,
クエリ ゲロ遅い 実行エンジンの見直し
~課題~
データ活用性低下
画面開発工数問題
~解決方針~
ユーザインタフェース見直
し
データの一元アクセス ,
結果の結合が可能
~システム要件~~導入~
Sca...
設計: 全体システムアーキ
S3
S3
エンジニア
CS
フロントエンド
Athena
S3
バックエンド
ログ/データ調査環境既存環境
他データストア/ストレージ
設計: カンタンに説明
17
● AWS Athena
○ クラスタ不要/サーバ不要 インタラクティブなクエリサービス(マネージドpresto環境)
○ S3上データにpresto queryでアクセス
○ Big Queryとは異なる(DWH...
規模
18
まだやり始めたばかりなので小規模
● AWS Athena
○ 12 データベース
○ 106 テーブル
○ 課金 約40$/月(※ これホントです! partition設計、ストレージフォーマット、スモールファイル撤廃等もろもろや...
Agenda
背景/課題1
方針2
設計(システム/運用)3
構想(今後)5
re:dash紹介4
re:dash?
オープンソースの軽量BI/可視化、
コラボレーションツール
(エンジニア向けツール)
何が出来るのか?
画面(ここからdemo)
UI/機能 超シンプル
基本3つ(dashborad, query, aleart)
re:dash メリット
対応データストアが多い
(パブリッククラウドと親和性が高い)
メリット
低コスト
(金額面、システム面、運用面)
メリット
便利機能 他
● SQLスイスアーミーナイフ
● スケジュールクエリ
● アラート
● クエリ/BIリンク
● クエリフォーク
● 異なるデータストア間での結合(join)
● REST API
どう使ってるか?(例)
頻出クエリを登録&任意パラメータ実行
@AWS Athenaデータストア
簡単な可視化
どう使ってるか?(例)
どう使ってるか? :他
● 大量データストアの調査クエリ等
● データ仕様書確認 @スプレッドシートデータソース
● 利用統計 @postgresql データソース
● 複数クエリの結合 @pythonデータソース
Agenda
背景/課題1
方針2
設計(システム/運用)3
構想(今後)5
re:dash紹介4
構想(今後)
● 分析環境(既存Tableau) ☓ バックエンド連携
30
Liquid
Athena
S3
バックエンド
Upcoming SlideShare
Loading in …5
×

[社内勉強会]サクっと業務でつくったログ/データ調査環境(re:dash ☓ AWS Athena ☓ embulk)

766 views

Published on

CyberZ社内勉強会資料@201711

Published in: Technology
  • Be the first to comment

[社内勉強会]サクっと業務でつくったログ/データ調査環境(re:dash ☓ AWS Athena ☓ embulk)

  1. 1. サクっと業務でつくった ログ/データ調査環境 (re:dash ☓ AWS Athena ☓ embulk)
  2. 2. 自己紹介 2 茂木 高宏(もてき たかひろ) 株式会社 CyberZ F.O.X事業 SRE engineer twitter: @tkmoteki facebook: takahiro.moteki.31 最近の業務 ● ログ/データ調査環境 ● AWS内の移行
  3. 3. はじめに: 対象のログ/データ 3 ● サービスログ ○ 例:) 広告系(クリック,コンバージョン), KPIログ... ● システムログ ○ 例:) アクセスログ, パフォーマンスログ, セキュリティログ... ● サービスデータ ○ 例:) マスタデータ, 中間データ, アカウントデータ... ● システムデータ ○ 例:) サービスディスカバリデータ, 監視/モニタリングデータ...
  4. 4. はじめに: 話すところ データ収集 ETL/集計/保存 分析/調査/可視化 今回対象 (赤字) 今回対象外 (既存環境)
  5. 5. Agenda 背景/課題1 方針2 選定/設計(システム/運用)3 構想(今後)5 re:dash紹介4
  6. 6. 背景: チーム/ユーザの用途 6 チーム A チーム B チーム C チーム SRE チーム SDK CS PO CSE セールス 開発チーム(ベーシックユーザ): 開 発/運用/調査用途 CSチーム(ライトユーザ): 調査用途, 顧客依頼の特殊対応 分析用途 エンジニア 非エンジニア
  7. 7. 背景: チーム/ユーザの調査利用 7 チーム A チーム B チーム C チーム SRE チーム SDK CS PO CSE セールス データベース エンジニア CS ETL/集計/保存 ビッグデータ クエリ クエリ エンジニア/CSで 同じユーザイン ターフェース エンジニア/CSで 同じ計算機リソー ス エンジニア 非エンジニア
  8. 8. 課題: 8 集計環境に影響し クエリ ゲロ遅い ● 1週間に2回 影響受けるETL/集計環境 ● Hive利用のため データ活用性低下 画面開発工数問題 ● ○○データの一覧取得&一括ダウンロード等で 画面開発工数かかる ● 大量データストアの調査クエリ発行の煩瑣 ● 全データ/結果を組み合わせにくい
  9. 9. ログ/データ調査環境をサクっとつくる (分析環境ではない)
  10. 10. Agenda 背景/課題1 方針2 設計(システム/運用)3 構想(今後)5 re:dash紹介4
  11. 11. 方針: 解決方針 11 集計環境に影響, クエリ ゲロ遅い 実行エンジンの見直し ~課題~ データ活用性低下 画面開発工数問題 ~解決方針~ ユーザインタフェース見直 し データの一元アクセス , 結果の結合が可能
  12. 12. 方針: システム要件 12 集計環境に影響, クエリ ゲロ遅い 実行エンジンの見直し ~課題~ データ活用性低下 画面開発工数問題 ~解決方針~ ユーザインタフェース見直 し データの一元アクセス , 結果の結合が可能 ~システム要件~ Scalability Simply Maintenability
  13. 13. サクッとつくる極意 13 ● プログラムレス(なるべくコーディングしない) ● 構築レス(なるべくサーバつくらない) ● 設定レス(なるべくチューニングしない)
  14. 14. Agenda 背景/課題1 方針2 設計(システム/運用)3 構想(今後)5 re:dash紹介4
  15. 15. 設計: 導入 15 集計環境に影響, クエリ ゲロ遅い 実行エンジンの見直し ~課題~ データ活用性低下 画面開発工数問題 ~解決方針~ ユーザインタフェース見直 し データの一元アクセス , 結果の結合が可能 ~システム要件~~導入~ Scalability Simply Maintenability AWS Athena re:dash embulk
  16. 16. 設計: 全体システムアーキ S3 S3 エンジニア CS フロントエンド Athena S3 バックエンド ログ/データ調査環境既存環境 他データストア/ストレージ
  17. 17. 設計: カンタンに説明 17 ● AWS Athena ○ クラスタ不要/サーバ不要 インタラクティブなクエリサービス(マネージドpresto環境) ○ S3上データにpresto queryでアクセス ○ Big Queryとは異なる(DWH的に使えない) ● embulk ○ データロード, ETLを補完するツール(スキーマ推定型) ○ データストア、ストレージ/ファイルシステムへ対応 ○ プラグインアーキテクチャ(世の中の既存実装を取り込める) ● re:dash ○ 後ほど紹介
  18. 18. 規模 18 まだやり始めたばかりなので小規模 ● AWS Athena ○ 12 データベース ○ 106 テーブル ○ 課金 約40$/月(※ これホントです! partition設計、ストレージフォーマット、スモールファイル撤廃等もろもろやってる) ● AWS S3 (Athenaスキャン対象 既存データ) ○ 総データ量 375TB ● embulk ○ データロード数(バッチ数) 32 ● re:dash ○ 約50~100 クエリ/日 ○ 登録query数 62 ○ dash boards数 8 工数: 約2~3週間でサクっとつくった
  19. 19. Agenda 背景/課題1 方針2 設計(システム/運用)3 構想(今後)5 re:dash紹介4
  20. 20. re:dash? オープンソースの軽量BI/可視化、 コラボレーションツール (エンジニア向けツール)
  21. 21. 何が出来るのか? 画面(ここからdemo)
  22. 22. UI/機能 超シンプル 基本3つ(dashborad, query, aleart) re:dash メリット
  23. 23. 対応データストアが多い (パブリッククラウドと親和性が高い) メリット
  24. 24. 低コスト (金額面、システム面、運用面) メリット
  25. 25. 便利機能 他 ● SQLスイスアーミーナイフ ● スケジュールクエリ ● アラート ● クエリ/BIリンク ● クエリフォーク ● 異なるデータストア間での結合(join) ● REST API
  26. 26. どう使ってるか?(例) 頻出クエリを登録&任意パラメータ実行 @AWS Athenaデータストア
  27. 27. 簡単な可視化 どう使ってるか?(例)
  28. 28. どう使ってるか? :他 ● 大量データストアの調査クエリ等 ● データ仕様書確認 @スプレッドシートデータソース ● 利用統計 @postgresql データソース ● 複数クエリの結合 @pythonデータソース
  29. 29. Agenda 背景/課題1 方針2 設計(システム/運用)3 構想(今後)5 re:dash紹介4
  30. 30. 構想(今後) ● 分析環境(既存Tableau) ☓ バックエンド連携 30 Liquid Athena S3 バックエンド

×