Alibaba CloudのダッシュボードサービスDataV 超入門

こんにちはソリューションアーキテクト 森(@mosuke5)です。
ちまたで話題?のAlibaba Cloudのダッシュボードサービス DataVの超入門ということで、簡単にできることや使い方を説明します。

DataVってなんだ?

DataVはAlibaba Cloudのビッグデータサービスの中の1つで、ビジュアライゼーションツールです。世の中にはデータのビジュアライゼーションツールはたくさんありますが、このDataVは「ダッシュボード」に特化した機能を備えるサービスです。
このDataVは、たとえばオフィスの誰もが見えるところのモニターに設置しておくなど、名前の通りのダッシュボードに特化したサービスになっているのです。
以下サンプルですが、まあド派手というやつです。

https://gyazo.com/b181539afe8324d3bcb61029659d7d71

なにができるの?

DataVは大きく分けて3つの機能を備えます。
(1) データのビジュアライゼーション
(2) データソースマネジメント
(3) ダッシュボードシェアリング

データのビジュアル化にはたくさんのテンプレートやウィジェットが用意されているので、大抵のことはデフォルトで簡単に作ることができます。
データのビジュアル化で何が一番重要かといえば、「データ」そのもの、ですよね。DataVではたくさんのデータソースからデータを持ち込めるように設計されています。とくにエンタープライズ版では使いこなすのが難しいほどに多く対応しています。
さいごに、作ったダッシュボードを共有できる機能です。インターネット公開から、限定公開モードなどあります。

いまのところ対応しているデータソースを記載しておきます。下線引いてあるものがベーシック版での対応データソースです。

  • RDS for MySQL
  • MySQL Compatible DB
  • CSV
  • API
  • Static JSON
  • AnalyticDB
  • DataV Data Proxy Service
  • RDS for PostgreSQL
  • RDS for SQLServer
  • HybridDB for PostgreSQL
  • API Gateway
  • TableStore
  • Alibaba Cloud Intranet IP
  • OSS(Object Storage)
  • Alibaba Cloud LogService
  • Oracle

実際に使ってみる

今回は、超入門編ということで、一番良く使うであろうデータソースの「静的データ」「CSVファイル」「データベース接続」「API」の4つを紹介したいと思います。

1. 静的データ

まずは、もっともベーシックなデータソースである静的データ。名前の通り、DataV内に直接決められた値を書いて表示するものです。一番お手軽ではありますが、当たり前ですが、大量のデータの表示や動的にデータを変えたい場合にはおすすめできません。しかし、例えばダッシュボードの「タイトル」なんかは動的に変化するものでもないので静的データで全く問題ないです。

ウィジェットから「Title」を選択し、タイトルウィジェットを出します。

でてきた、ウィジェットを選択すると画面右側でウィジェットの設定を行うことをができます。「データ」タブをクリックすると表示するデータをどこから取得し表示するか設定できます。デフォルトでは「静的データ」になっています。

DataVでは表示するデータは基本的にすべてJSONとよばれるフォーマットで管理され、”value”の部分を任意の文字に置き換えるとタイトルの文字を変更できます。
これが「静的データ」の管理方法で一番簡易なものになりますが、冒頭にも説明したように、静的データなので手動で更新が必要です。大量のデータや動的に変更したい場合には、後述の方法を利用するといいです。

2. CSVファイル

続いてCSVファイルでのデータ表示をやっていきます。CSVファイルもある意味静的データではあるのですが、すでにExcelなどで管理している量のあるデータを表示したいときはこちらが便利です。
サンプルとして以下のようなCSVファイルがあるとして、これを表で表示するのをやってみます。

id,name,price
1,apple,200
2,orange,300
3,strawberry,100

ウィジェットは「Carousel List Ⅱ」というものをつかってみます。

「Carousel List Ⅱ」をクリックするとサンプルのリストウィジェットがでてきます。こちらクリックして右サイドバーから「データ」を選択します。データ・ソースタイプを「CSVファイル」を選択し、「ソースを選択」の部分を「新規」をクリックします。利用したいcsvファイルをアップロードします。そして、その後にデータソースをアップロードしたものにします。

選択できたら、「データ応答を参照」をクリックし、csvデータがどのようにとりこまれたか確認しましょう。下記のように取り込まれていれば成功です。

[
  {
    "id": "1",
    "name": "apple",
    "price": "200"
  },
  {
    "id": "2",
    "name": "orange",
    "price": "300"
  },
  {
    "id": "3",
    "name": "strawberry",
    "price": "100"
  }
]

実はまだこれだけでは、データは表示されません。取り込まれたデータのなかで、どの値を表示するか設定する必要があります。今度は右サイドバーから「スタイル」を選択し、「Columns」の部分で表示したいデータの名前を設定する必要があります。

これで、ウィジェットをみてみるといい感じにテーブルで表示されています。

日本語文字コードについて

日本語の文字コードについてですが、Shift-JISのCSVを読み込むと文字化けが発生します。UTF-8に変換してから利用するようにしましょう。

3. データベース

続いてデータベースです。正直、DataVをしっかり活用するためにはこのデータベース接続は必須といっても過言じゃないでしょう。データソースをデータベースにしておけば動的にデータを更新する事が可能です。データの変更にしたいして自動的にグラフ等の描画が可能です。

2. CSVファイルと同じウィジェットを使って今度はデータベースからデータをひいてみます。データソースの部分を「CSVファイル」から「データベース」に変更します。「新規」をクリックし、データベース接続の設定を行います。(この記事では前提として、Alibaba Cloud内のApsaraDB for RDSを購入していることとします。)
ApsaraDB for RDSに接続するためには下記のデータが必要です。

  • インターネット/イントラネット:今回はAlibaba Cloud内なのでイントラネット接続します
  • VPC:VPC内にRDSを構築している場合にはONにします
  • 名前:任意でいいです
  • ホスト:RDSのホスト名です。ホワイトリストを設定すると取得できます
  • VPC ID:なぜこの情報が必要か?ホスト名だけだとプライベートアドレスが返されるのでどのVPCのアドレスかわからないためです。
  • インスタンスID:こちらも調べて貼りましょう。
  • ユーザ名/パスワード:RDS内で作成するDBのユーザ
  • ポート:MySQLならば3306ですね
  • データベース:利用するデータベース名

ここで注意が必要なのが、RDS側にホワイトリストの設定でDataVからのアクセスを許可しておかないと通信できないことです。VPCの場合にはこのアドレスを許可しておきましょう「100.104.175.0/24」。
現在、このアドレスについてはドキュメントに記載がないので、テクニカルサポートに問い合わせると教えてくれます。

あとは自由にSQL文をかいてデータをとりだして表示することができます。
「自動更新リクエスト」にチェックをつけておけば定期的にデータの更新が実行されます。

SQL実行画面
実際の表示例

https://gyazo.com/b466b0c82b807dab2bd259d3ffc2c360

DataVから接続する際のIPアドレスについて

DataVからRDS等にアクセスする際に接続元のIPアドレスについては下記のとおりです。(2018年6月15日現在)

接続モード IPアドレス一覧
VPC 100.104.175.0/24
インターネット 47.91.9.73
47.91.13.92
47.91.9.1
47.91.12.13
クラシックネットワーク 11.192.149.66
11.192.147.75
11.192.149.118
11.192.148.79

4. API

さいごにAPIについて少しだけ説明します。
データベースと直接接続することが難しい場合もあると思います。その場合にはAPIを使いましょう。DataVで利用するフォーマットのJSONをWebサーバで返せるようにしておけば簡単に利用できます。

まとめ

DataVの一番初めの印象として、なんかめちゃくちゃかっこいい!けど作るの難しそう…と思っていました。しかし、実際に触ってみるとおもったよりシンプルな作りであるのと同時に、ウィジェットがたくさん用意されているので、だれでもかっこいいダッシュボードを作ることができてしまいました。
ウィジェットは、実はデータぼ表示に必要なグラフや表だけでなくて、本当にかっこよく見せるだけの画像ウィジェットのようなものもあり使っていてとても楽しいものでした。
みなさんもDataVでのダッシュボードライフ楽しみましょう。

この記事をシェアする