「トレジャーデータサービス by IDCF」 めちゃ楽ガイド(PDF:3297KB)

目次
1 サービス説明〄〄〄〄〄〄〄
P2
2 はじめに〄〄〄〄〄〄〄〄〄
P3
3 ゕカウント作成〄〄〄〄〄〄
P4
4 データ゗ンポート〄〄〄〄〄
P6
5 データ分析〄〄〄〄〄〄〄〄
P13
6 データ出力〄〄〄〄〄〄〄.
P19
7 よくある質問〄〄〄〄〄〄〄
P26
1
トレジャーデータサービス by IDCFとは?
大量データの「収集、保存、分析」をワンストップで利用できるクラウド型のビッグデー
タ分析基盤サービスです。
【特長1】゗ンフラ不要!
クラウド型のサービスなので、゗ンフラの構築、運用、監視は必要ありません。
データの増大を気にすることなくご利用いただけます。
【特長2】スキーマ設計不要!
分析したいデータを投入するだけですぐに始められます。
【特長3】安心のセキュリテゖ!
データは国内のデータセンターに保管してあるので、セキュリテゖも安心。
閉域網 (オプション)を利用すれば、よりセキュゕにデータを転送することも
可能です。
BIツール
外部ストレージ等
データソース
2
はじめに
◉このガ゗ドをご利用いただきたい方
●コマンドラ゗ンツールに慣れてない方
●データベースやSQLなどの用語がよく分からない方
●非エンジニゕ、データ分析に興味がある方
◉ 目標
●トレジャーデータサービス by IDCF(以降、TD)を使って
データ分析の流れを理解する
●Webコンソールで基本的な操作ができる
●簡単なクエリが書ける
◉進め方
●Webコンソールのみで操作
Step
Step
Step
Step
ゕカウント
作成
データ
゗ンポート
データ
分析
データ
出力
無料でお試し利用
ができる、スター
ターゕカウントを
作成します。
分析対象のデータ
をTDに取り込み
ます。
1
2
3
゗ンポートした
データの中から必
要なものを抽出す
る処理を実行しま
す。
*サンプルデータあり
3
4
抽出した結果の
データを外部シス
テムに出力します。
データ
゗ンポート
ゕカウント作成
Step
1
データ
分析
トレジャーデータサービス by IDCFの
アカウント作成
データ
出力
よくある質問
最短1分で
お申し込み
無料でお試し利用ができる「トレジャーデータサービス by IDCF」のスターターゕカウント
を作成して、ログ゗ンしましょう。
1
ゕカウント作成
下記URLにゕクセスし、ゕカウントを作成
しましょう。
ゕカウント作成画面
【URL】
https://console.ybi.idcfcloud.net/
users/sign_up
必要事項を入力して「Start free trial」を
クリックします。
●「Work email」
…ログ゗ン用メールゕドレス
●「Phone」
…国番号81+先頭の「0」を除いた電話番号
例)日本国内で03-9999-9999の場合
…81399999999を入力
2
メールの認証
入力したメールゕドレスにゕカウント作成
確認のメールが届きます。
メールを開いて、
「Confirm your account」をクリックすれ
ば、ゕカウント作成の完了です。
4
ゕカウント作成
3
データ
゗ンポート
データ
分析
基本的な操作の理解
チュートリゕルで基本操作を覚えましょう。
TDの簡単な使い方を知ることができます。
「Start」をクリックして、順番通りに操作
します。
4
ログ゗ン画面からのゕクセス
次回から、サービスご利用の際には、この
ログ゗ン画面からゕクセスします。
ログ゗ン画面
【URL】
https://console.ybi.idcfcloud.net
/users/sign_in
ブックマークがおすすめ!
5
データ
出力
よくある質問
ゕカウント作成
データ
゗ンポート
データ
分析
データ
出力
よくある質問
Step
2
データインポート (TSV アップロード)
データ゗ンポートとは、お客さまのデータをTD上にゕップロードすることを意味します。
データ゗ンポートの方法には、「File Upload」、「Client SDKs(*1) 」「 Streaming
Collector」、「Bulk Loader」があります。この章では、「File Upload」機能を使って、
TSV(*2)フゔ゗ルをゕップロードしましょう。
各゗ンポート方法の詳しい特徴については
https://docs.ybi.idcfcloud.net/articles/import-overview
データ゗ンポートを始める前に、よく使われる用語の意味から理解していきます。
カラム
データベース
「sample_datasets」
テーブル
「table2」
テーブル
「table1」
レコード
データベース〆データを入れる箱
テーブル
〆データベースに入っている表形式のデータの集まり
レコード
〆テーブルの一行。1件分のデータを意味する
カラム
〆テーブルの縦方向に、同じ意味を持ったデータが並ぶ
(*1)SDK:Software Development Kitの略語。ソフトウェゕを開発するために必要なツールなど一式。
(*2)TSV:文字や文字列の間にタブ記号を挿入して区切りを設けること、あるいはそのようにして各データ
を区切って管理するフゔ゗ル形式のこと。
6
ゕカウント作成
1
データ
゗ンポート
データ
分析
データ
出力
よくある質問
分析対象データ(フゔ゗ル)の用意
ローカル環境にあるフゔ゗ルをTDに゗ンポートしましょう。
まず、ローカル環境にCSV(*3)やTSVフゔ゗ルをご用意ください。
CSVやTSVフゔ゗ルがなければ、下記のURLからデータ゗ンポートのサンプル用TSVフゔ゗ル
をローカル環境にダウンロードしてご利用ください。
サンプルデータ
【URL】
https://www.idcf.jp/bigdata/sampledata/stock_record.tsv
2
フゔ゗ルゕップロード
データをゕップロードしましょう。
画面の左の一番上にある青色の
「Collect Data」をクリックします。
(*3)CSV:データベースの各レコードにおいて、フゖールドの区切りをカンマ「〃」のみで表現する形式のこと。
各レコードの区切りは改行で表現。 CSV形式で保存されたフゔ゗ルには拡張子として「.csv」が付く。
7
ゕカウント作成
データ
゗ンポート
データ
分析
3
「File Upload」の下にある「Import」を
クリックします。
4
画面の中央の「Browse File System」をク
リックして、ローカル環境に用意した゗ン
ポート対象のフゔ゗ルを指定します。
8
データ
出力
よくある質問
ゕカウント作成
5
データ
゗ンポート
データ
分析
データ
出力
データベースの作成
゗ンポートしたフゔ゗ルを保存するデータ
ベースを作成しましょう。
①
②
①ゕップロードしたフゔ゗ルが画面に表示
されます。
②「Databases」の右にある「+」をクリッ
クしましょう。
6
よくある質問
任意のデータベース名を入力して「Create」
をクリックします。
今回は、例として「stock_db」という名前の
データベースを作成してみます。
データベース名の制限
●文字数〆3~255文字
●文字種別〆
−ゕルフゔベット半角小文字
−数字
−記号は「_」(ゕンダーバー)のみ
9
ゕカウント作成
7
データ
゗ンポート
データ
分析
テーブルの作成
9ページで作成したデータベースの中に、
テーブルを作成しましょう。
「Tables」の右にある「+」をクリックし
ます。
8
テーブル名を入力して、「Create」をク
リックします。
今回は、例として「table1」という名前の
テーブルを作成します。
テーブル名の制限
●文字数〆3~255文字
●文字種別〆
−ゕルフゔベット半角小文字
−数字
−記号は「_」(ゕンダーバー)のみ
10
データ
出力
よくある質問
データ
゗ンポート
ゕカウント作成
9
データ
分析
データ
出力
よくある質問
データベースとテーブルの選択
①「stock_db」というデータベースと
「table1」というテーブルが表示されまし
た。
②「Use selected table」をクリックして、
データ゗ンポート先のテーブルを指定しま
しょう。
①
②
10
プレビュー
゗ンポートするテーブルの情報が表示され
ます。
「Submit」をクリックすると、データ゗ン
ポートが開始されます。
注意
【注意】
「Missing “time” column(*4)」と
いう警告が表示される場合、
“time”というカラム名が指定され
てないことを意味します。時刻を
表すカラム名を”time”として指定
してください。時刻を表すカラム
名がない場合は、任意のカラム名
を”time”として指定してください。
(*4)time column:時刻を表すカラムを意味します。TDでは、時刻のデータが集まっているカラムを「time」
として指定する必要があります。
11
ゕカウント作成
11
データ
゗ンポート
データ
分析
゗ンポートの完了
「Success」表示がされると、データの゗
ンポートが完了しました。
12
データ
出力
よくある質問
ゕカウント作成
データ
゗ンポート
データ
分析
データ
出力
よくある質問
Step
3
データ分析
Step2の手順でTD上にデータをゕップロードし、データが分析できるようになりました。
Step3では、゗ンポートしたデータに対してクエリ(*5)を作成し、データ分析をします。
Step3は、基本的なクエリを作成するStep3-1の【基本編】と「time」関数を使う
Step3-2の【応用編】に分かれます。
Step
3-1
データ分析
【基本編】
クエリを作成する前に、SQL(*6)でテーブルからデータを抽出するSelect文の簡単な構成について
理解しましょう。
SELECT (カラム名) FROM (テーブル名 ) WHERE (条件式) ORDER BY (カラム名)
˅ ˅
˅
˅
˅
˅
˅
˅
スペース
SELECT (カラム名)
FROM (テーブル名)
WHERE (条件式)
ORDER BY (カラム名)
: 抽出するカラム名を指定します
: テーブルを指定します
: テーブルに入っているレコード(行)の中から、抽出するレコード
の絞り込み条件を指定します
: 抽出結果の行の順番を入れ替えます
●SELECT 文は全て半角文字で入力します。
●SQLでは、命令中の句の順番を変えることはできません。
必ず、「SELECT→FROM→WHERE→ORDER BY」の順番通りに記述してください。
順番を間違えるとエラーになります。
●複数のカラム名を書く場合は、半角カンマ 「,」 で区切ってください。最後のカ
ラム名に対しては「,」は不要です。
(*5)クエリ〆クエリ(Query)とは、英語で「問い合わせ(る)」、「尋ねる」などの意味を持つ英語の単語。IT
では、データの問い合わせや要求などを一定の形式で文字に表現したもので、クエリを通じてデータの検索や更
新、削除、抽出などの要求をデータベース(DBMS)に送信することができます。
(*6)SQL〆リレーショナルデータベース管理システム (RDBMS) において、データの操作や定義を行うための
データベース言語。
13
ゕカウント作成
1
データ
゗ンポート
データ
分析
データ
出力
よくある質問
クエリの概要
先ほど、TD上にゕップロードしたサンプルデータを使って、クエリを作成しましょう。
①「table1」テーブルから「symbol」、「open」、「close」の3つのカラムを抽出する。
②「close」の値が「open」の値より大きいもののみに絞り込む。
③「close」の値で降順に並べ替える。
というクエリを作成します。
2
クエリ作成の画面
①画面の左の「New Query」をクリック
します。
②
②使用するデータベースを選択します。
「Select a database..」をクリックして、
[stock_db」を選択します。
③
①
③分析エンジンのタ゗プを選択します。
データの量や実行したい分析内容によって、
適した分析エンジンを選択しましょう。
今回は、「Type」で,「Presto(*7)」をク
リックします。「Presto」の選択ができな
い場合は(ゕカウント登録日から14日が過
ぎた場合)、「Hive(*8)」をクリックします。
*スタータープランでは、ゕカウント登録日
から14日間のみ「Presto」も利用できます。
【ドキュメントサ゗ト】
【URL】
https://docs.ybi.idcfcloud.net/articles/data-processing-overview
(*7)Presto〆゗ンメモリ処理により大規模データベースのクエリを゗ンタラクテゖブに実行できる。ゕドホッ
ク処理に適している。
(*8)Hive〆超大規模なデータに対するクエリを安定的に実行する。バッチ処理に適している。
14
ゕカウント作成
3
データ
゗ンポート
データ
分析
データ
出力
よくある質問
クエリを作成する際に必要なカラム名を
参照しましょう。
「table1」をクリックすると、テーブル
内のカラム名が表示されます。
4
SELECT文の記述とクエリ実行
①「table1」テーブルから抽出するカラム
名を参照します。
③
②SELECT文を書きます。
①
SELECT symbol, open, close FROM
table1
WHERE close > open
ORDER BY close DESC
③「Run」をクリックすると、クエリが実
行されます。
上記構文の意味を説明します。
●SELECT symbol, open, close
…symbol, open, closeというカラムを抽出する。
●FROM table1
…table1というテーブルから抽出する。
●WHERE close > open
…Closeの数値がOpenの数値より大きいものだけを抽出する。
●ORDER BY close DESC
…Closeのカラムを基準としてデータを降順で並べ変える。
(descはデータは降順で並べることを意味します。何も書かないときは、昇順で
データを並べます。)
15
②
ゕカウント作成
5
データ
゗ンポート
データ
分析
クエリ実行の完了
クエリの実行が成功すると、画面に
「Success」が表示されます。
6
クエリ結果の確認
画面を下にスクロールダウンすると、右の
ような分析結果が表示されます。
symbol, open, closeのカラムを抽出し、
closeの数値の降順で表示されたことが分か
ります。
16
データ
出力
よくある質問
ゕカウント作成
データ
゗ンポート
データ
分析
データ
出力
よくある質問
Step
3-2
データ分析
【応用編】
Step3-1で、基本的なクエリが作成できるようになりました。Step3-2では「time」関
数を使ってみましょう。「time」関数を使うと、必要な期間のデータだけを読み込むこ
とができるので、クエリの速度を向上させることができます。
1
「time」関数でできること
●時刻データの変換
TD_TIME_FORMAT(time,'日付フォーマット','タ゗ムゾーン')
•
•
TDにデータを゗ンポートすると、時刻情報はUNIXタ゗ムスタンプ(*9)として保存されま
す。
「TD_TIME_FORMAT」というUDF(*10)を使うことにより、UNIXタ゗ムスタンプを日付
と時刻の形式に変換することができます。
【記述例】
TD_TIME_FORMAT(time, 'yyyy-MM-dd HH:mm:ss','JST')
• 「time」カラムを「yyyy-MM-dd HH:mm:ss」形式に、日本標準時間で変換します。
●時間範囲の指定
TD_TIME_RANGE(time, '開始時間', '終了時間')
• Hiveの場合は、「'」(シングルクォーテーション)を「"」(ダブルクォーテーション)
で囲みます。
• TDでは、゗ンポートしたデータをtimeカラムを利用して、1時間単位で保存領域を分けて
保存しています。
• 抽出するデータの時間範囲を指定することにより、その時間範囲の保存領域のみにゕクセ
スするため、クエリ実行速度を向上させることができます。
【記述例】
TD_TIME_RANGE(time, '2014-01-30', '2014-01-31')
• 「time」カラムが2014年1月30日0時0分0秒から2014年01月31日0時0分0秒までのデー
タのみを抽出することを意味します。
• ‘yyyy-MM-dd’形式の後に何も指定しない場合は’yyyy-MM-dd 00:00:00’になります。
(*9)UNIXタ゗ムスタンプ〆1970年1月1日からの時間を秒単位で表したもの。
(*10)UDF(User Defined Function)〆日本語でユーザー定義関数を意味する。SQLに対してユーザー自身
の拡張機能を作成するときに使用できるメカニズム。
17
ゕカウント作成
2
データ
゗ンポート
データ
分析
データ
出力
SELECT文の記述
SELECT TD_TIME_FORMAT (time, 'yyyy-MM-dd HH:mm:ss' , 'JST') AS date, symbol,
open, close FROM table1 WHERE close > open
AND TD_TIME_RANGE(time, '2014-09-05', '2014-09-20') ORDER BY close DESC
必要な項目を選択して、Select文を記述し
て「Run」をクリックしましょう。
3
よくある質問
クエリ実行
「Step3-1」で実行したクエリと比べて、
実行時間が短縮されたはずです。
このように、「time」カラムを指定するこ
とにより、クエリの速度を向上させること
ができます。
今回のクエリは、約9000件のデータを対象にしました。同じ内容のデータが、
「sample_datasets」というDBの「nasdaq」というテーブルに約900万件入っ
ております。大量なデータに対して、クエリを作成されたい方は、このデータを
対象に、クエリをお試しください。
18
ゕカウント作成
データ
゗ンポート
データ
分析
データ
出力
よくある質問
Step
4
データ出力
TDでは、分析した結果をさまざまな外部システムと連携して活用することができます。
この章では、分析結果を「Google スプレッドシート」へ出力する方法を説明します。
1
Google ゕカウントの登録
「Google スプレッドシート」に出力する
ために、TDにGoogleのゕカウントを登録
しましょう。
画面の右の上に表示されている自分のユー
ザ名クリックして、「My profile」をク
リックします。
2
「Google Accounts」の項目で、
「Add Account」をクリックします。
19
ゕカウント作成
3
データ
゗ンポート
データ
分析
任意のGoogleゕカウントにログ゗ンし
ます。
*Googleのゕカウントを持っていない場合
は、新たにゕカウントを作成してください。
4
「許可」をクリックします。
これで、GoogleのゕカウントがTD上に追
加されました。
20
データ
出力
よくある質問
ゕカウント作成
5
データ
゗ンポート
データ
分析
Step3-2で実行したジョブを再度実行して、
Googleスプレッドシートへ出力しましょ
う。
①画面の左の上の「Jobs」をクリックし
ます。
1①
②
②Step3-2で実行したジョブの「Job ID」
をクリックします。
6
データ
出力
「Edit Query」をクリックします。
21
よくある質問
ゕカウント作成
7
データ
゗ンポート
データ
分析
出力先の選択
「Result Export」という項目の「Add」を
クリックします。
8
「Export to」という項目で
「Google Spreadsheet」を選択します。
22
データ
出力
よくある質問
ゕカウント作成
9
データ
゗ンポート
データ
分析
データ
出力
よくある質問
必要な項目を入力し、「Use」をクリック
します。
●メールゕドレス
●パスワード
●Spreadsheet名
●Worksheet名
10
出力の実行
②
①出力先として入力した項目に誤りがない
か確認します。
②誤りがなければ、「Run」をクリックし
ます。
画面に「Success」と表示されると、実行
した結果が出力先に送信されました。
23
①
ゕカウント作成
11
データ
゗ンポート
データ
分析
データ
出力
よくある質問
出力結果確認
Google スプレッドシートにゕクセスして、
クエリの出力結果を確認しましょう。
12
グラフ作成
①
Symbol毎の株のOpen数値とCloseの数値を
比較するために、グラフで可視化しましょう。
①「Insert chart…」をクリックします。
②「Insert」をクリックします。
②
24
ゕカウント作成
データ
゗ンポート
データ
分析
13
右のようなグラフが表示されます。
14
TDを使ったデータ分析のガ゗ドは以上です。
データ
出力
TDによるデータ分析の流れを理解いただけましたでしょうか?
さらに複雑な分析を試してみたい方は、下記ドキュメントをご参照ください。
【ドキュメントサ゗ト】
【URL]
https://docs.ybi.idcfcloud.net/
25
よくある質問
データ
゗ンポート
ゕカウント作成
データ
分析
データ
出力
トレジャーデータサービス by IDCF
ゕカウ
ント
Q
A
Q
クエリ
A
データ
Q
A
Q
A
よくある質問
よくある質問
ゕカウントのメンバーは何人まで追加できますか?
メンバー追加の制限数はありません。
HiveやPrestoの構文を教えてください。
下記のドキュメントをご参照ください。
URL: https://docs.ybi.idcfcloud.net/categories/hive
URL: https://docs.ybi.idcfcloud.net/categories/presto
Web管理画面からフゔ゗ルをゕップロードする際、レコード数やフゔ
゗ルサ゗ズに上限はありますか?
目安としては、数十MB程度が上限となります。
お使いのブラウザやネットワークによって上限値が変わります。
CSVフゔ゗ルをゕップロードする際、データ内に「,(カンマ)」が含ま
れているため、正常に゗ンポートできません。
2通りの対処方法があります。
1. データ内にカンマを含めないようにする。
2. データをTSV形式にしてデータをゕップロードする。
セキュリ
テゖ
Q
データの件数はどのように数えられますか?
A
1レコードをデータ1件としてカウントします。
カラム数はデータ件数と関係はありません。
Q
A
閉域網経由でデータを送信できますか?
プラ゗ベートコネクト(オプション)をお申込みいただくことで、閉域網からデー
タ送信が可能なエンドポ゗ントを利用することができます。
プラ゗ベートコネクトについて
【URL】
https://www.idcf.jp/cloud/connect/
26
データ
゗ンポート
ゕカウント作成
セキュリ
テゖ
Q
A
Q
A
Q
データ
分析
データ
出力
よくある質問
保存したデータはバックゕップされていますか?
データのバックゕップは実施していません。ただし、お客さまが保存したデータ
は自動的に異なるノードに3重コピーし保存します。
データ送信時は暗号化されますか?
td-agentやバルク゗ンポートで指定するエンドポ゗ントをhttpsで指定すると
データ送信時の通信がSSLで暗号化されます。
サービスの障害はどのように通知されますか?
障害
A
サービスステータスサ゗トに障害の情報を掲載します。お客さまはあらかじめWeb
サ゗トからメールゕドレスを登録いただくことで、障害情報の自動通知メールを受
信することができます。必ずご登録ください。
●メンテナンス々障害情報
http://status.ybi.idcfcloud.net
※上記サ゗トから障害情報受信用メールゕドレスをご登録ください。
●サービス可用性情報
http://uptime.ybi.idcfcloud.net
●よくある質問
https://www.idcf.jp/help/bigdata/
27
ドキュメントサ゗ト
https://docs.ybi.idcfcloud.net/
よくあるご質問
https://www.idcf.jp/help/bigdata/
用語集
https://www.idcf.jp/words/cate_bigdata.html
エンジニゕブログ
http://blog.idcf.jp/
Twitter
https://twitter.com/idcfrontier/
Facebook
https://www.facebook.com/fb.IDCFrontier
リンク集
株式会社IDCフロンテゖゕ
https://www.idcf.jp Email:[email protected]
0120-26-2725(通話料無料) 09:00-17:00 平日受付
*本ガ゗ドブック(2016年10月更新)の内容は、予告なく変更することがあります。
最新情報は左記URLをご覧ください。
*記載されている会社名、製品名は、各社の登録商標または商標です。
*表示金額はすべて税抜きです。