Analytics CloudとEmbulkを使った社会的データの分析

Preview:

Citation preview

Analytics Cloud とEmbulk を使った社会的

データの分析株式会社ウフル 田実 誠

Who Am I?名前:田実 誠

所属:ウフルの人

Salesforce Summer Tokyo に申し込まずにコミュニティハッピーアワーにだけ飛び入り参加する不心得者は私の事です。

Blog: http://freedom-man.com/blog/ Github: tzmfreedomTwitter: @tzm_freedomSlideShare: tzm_freedom

Analytics Cloud ?• BI ツール付きデータストアな、大量データ分析プラット

フォーム• 億レベルのレコード数のデータを格納/解析可能• レンズ、ダッシュボードによるクリックベースの設定• SAQL ( Apache Pig Latin ライクなクエリ言語)

• フロントエンドは React/EclairNG• 転置インデックス• カラムナー DB

概要資料http://www.salesforce.com/jp/analytics-cloud/overview/

アーキテクチャhttp://www.slideshare.net/mokamoto/biweb

“Analytics Cloud 用”の Developer 環境で試せる!https://developer.salesforce.com/promotions/orgs/wave-de

AnalyticsCloud の UI から取り込めるデータ種別

AnalyticsCloud の UI から取り込めるデータ種別

び、微妙…

AnalyticsCloud の UI から取り込めるデータ種別

S3 とか TreasureData とか BigQuery とか RedShift とか HDFS とか、そういうところからロードしたいはず。

え、 CSV だけ…?それ以外はファイル変換しなきゃダメなの

…?

普通の RDB からも入力したいな…

んーエンジニアっぽくテキストベースでスマートに

バルクロードできるやつないかなー

ということで Embulk に目を付けた• バルクデータローダな OSS

• 並列処理をすることで高速なアップロードを実現

• Fluentd のバッチ版

• Fluentd 同様プラガブルなアーキテクチャ

• リトライ/エラーハンドリング→利用するプラグインに依存するけど…

• 設定ファイルをある程度自動的に作成してくれる仕組み(guess)

• TreasureData が担っている OSS$ embulk run config.yml

embulk-output-analytics_cloud をリリース

こんな感じで設定すればおk

out: type: analytics_cloud username: hoge@example.com password: xxxxxx edgemart_alias: foobar auto_metadata_settings: {}

INPUT から算出したスキーマ情報から、自動的にメタデータ JSON を作ってく

れる。明示的に指定することも可能

全体こんな感じin: type: s3 bucket: tzmfreedom-tweet-stock path_prefix: sakamichi/2016/05/01 endpoint: s3-ap-northeast-1.amazonaws.com access_key_id: AKI****** secret_access_key: ******* decoders: - {type: gzip} parser: type: jsonl charset: UTF-8 newline: CRLF columns: - {name: id_str, type: string} - {name: text, type: string} - {name: timestamp_ms, type: string}filters: - type: typecast columns: - {name: created_at, type: timestamp, format: "%a %b %d %H:%M:%S %z %Y"}out: type: analytics_cloud username: hoge@example.com password: ******* edgemart_alias: foobar auto_metadata_settings: {}

S3 から

jsonl 形式のデータを

gzip で圧縮されたファイルで

AnalyticsCloud にロードする

嫌な予感しかしない DEMO今回は乃木坂 46, 欅坂 46 に関するツイートを集めてAnalytics Cloud で分析。

Twitter Streaming API で各メンバーの名前及びグループ名が入っているツイートをリアルタイムに取得

embulk-output-analytics_cloud

jsonl ファイルとして格納

Embulk の起動

ジョブはこんな感じ

ツイート分析ダッシュボード

Recommended