Druid part2 pivotでtwitterデータを可視化してみる

2015-12-31
 

Druid part2はpivotを使ってデータを可視化していきます。

 

pivotのインストール


npm i -g imply-pivot

 

pivotにはサンプルが入ってるので、それを動かしてみます。


pivot --example wiki

次にDruid serverを動かします。

前回はDruidのチュートリアルでwikipediaからデータを取ってきたのですが、今回はtwitterのstream apiからデータを取ってくるようにします。


./run_example_server.sh

twitterを選ぶと、consumer keyなどを聞かれるので、入力します。

 

Druidがtwitterのデータを取り始めたら、pivotでdruidにつなげます。


pivot --druid localhost:8084

pivotのgitのreadmeには8082とサンプルが書いてありましたが、8084で動いているので、変更します。

ただ、上記のコマンドを打っても Bad status code と言われてしまうので、configファイルを作ってそれを読み込ませます。


pivot --druid localhost:8084 --print-config --with-comments > config.yaml

 

config.yamlの雛形が作られるので、中身を変更します。

pivotのリポジトリにも config.yaml.sample が入っているのでそれを参考に、こんな感じにしてみました。


# generated by Pivot version 0.7.10

# The port on which the Pivot server will listen on
port: 9090

# A Druid broker node that can serve data (only used if you have Druid based data source)
druidHost: localhost:8084

useSegmentMetadata: true

# A timeout for the Druid queries in ms (default: 30000 = 30 seconds)
#timeout: 30000

# Should new datasources automatically be added
sourceListScan: disable

dataSources:

  - name: twitter
    title: twitter
    engine: druid
    source: twitterstream

    timeAttribute: time

    refreshRule:
      rule: realtime

# Could not find any data sources please verify network connectivity

engineにdruid、dataSourcesのsourceに twitterstream とするのがポイント

 

config.yamlを作ったらこれを元にpivotを起動します。


pivot --config config.yaml

9090ポートでpivotが立ち上がるので、ブラウザで確認します。