Druid翻訳4:バッチ・データ・チュートリアルのロード
6428 ワード
はじめに
このチュートリアルでは、データファイルをDruidにロードする方法について説明します.
このチュートリアルでは、クイックスタートの説明に従ってDruidをダウンロードし、ホスト上で実行したとします.事前にデータをロードする必要はありません.
上記の手順が完了すると、カスタム抽出仕様を作成することで、独自のデータセットをロードできます.
抽出仕様の作成
Druidバッチ・ロード・プロセスを使用して、ファイル・データをDruidにロードできます.quickstart/wikiticker-index.jsonには、必要に応じて自分で修正できるバッチ抽出仕様の例があります.最も重要な問題は次のとおりです.
データに時間が記録されていない場合は、現在の時間で各ローのデータをマークするか、「2000-01-01 T 00:00:00.000 Z」などのすべてのローを固定タイムスタンプでマークすることもできます.ウェブブラウズデータセットを例にとると、DruidはTSV、CSV、JSONをサポートし、開梱して使用します.DruidではネストされたJSONオブジェクトはサポートされていませんので、JSONを使用する場合は、平面オブジェクトを含むファイルを指定する必要があります.
ファイルの最後に改行がないことを確認します.このファイルをpageviews.jsonという名前のファイルに保存すると、このデータセットについて次のようになります.データセットは「pageviews」 と呼ばれています.データは「pageviews.json」の にあります.タイムスタンプは「time」フィールド です.「url」および「user」フィールドは、データ次元 として適している.ページのアクセス量(count統計)と総消費時間(sum(latencyMs))は良い指標であり、データをロードするときにこれらの統計値を収集すると、クエリー時に平均値を簡単に計算することができます. データの範囲は、2015-09-01(含む)から2015-09-02(含まない)までです.
既存のインデックスファイルquickstart/wikiticker-indexを使用できます.json、copyから新しいファイルへ.
次に、これらのセクションを変更して変更します.
タスクの実行
このタスクを実行するには、インデックスタスクがpageviewsを読み取ることができることを確認します.json:もしあなたが本機で実行している場合(hadoopへの接続が構成されていない場合、これもDruidのデフォルト値です)、pageviews.jsonはDruidのルートディレクトリの下に置かれます.Druidがhadoopクラスタ接続を構成する場合、pageviews.jsonはHDFSにアップロードします.上の抽出仕様の構成パスを調整します.Druid Overlordにあなたのインデックスタスクを提出すると、インデックスを開始することができます.標準Druidインストールでは、URLはhttp://OVERLORD_IP:8090/druid/indexer/v1/task .
すべてのものが本機で稼働している場合はlocalhostを使用できます
このタスクでエラー(ステータスがFAILEDなど)が発生した場合は、overlordコンソールのTask logでトラブルシューティングできます(http://www.localhost/console.html).
データ照会
データはCoordinatorコンソールで1~2分で完全に使用できるはずです.http://localhost:8081/#/進捗を監視できます.データが完全に使用可能になると、サポートされているクエリー・メソッドを使用してデータをクエリーできます.
深く読む
バッチ・ロード・データの詳細については、バッチ・データ抽出の章を参照してください.
テキストリンク:http://druid.io/docs/0.9.2/tutorials/tutorial-batch.html
このチュートリアルでは、データファイルをDruidにロードする方法について説明します.
このチュートリアルでは、クイックスタートの説明に従ってDruidをダウンロードし、ホスト上で実行したとします.事前にデータをロードする必要はありません.
上記の手順が完了すると、カスタム抽出仕様を作成することで、独自のデータセットをロードできます.
抽出仕様の作成
Druidバッチ・ロード・プロセスを使用して、ファイル・データをDruidにロードできます.quickstart/wikiticker-index.jsonには、必要に応じて自分で修正できるバッチ抽出仕様の例があります.最も重要な問題は次のとおりです.
{
"type" : "index_hadoop",
"spec" : {
"ioConfig" : {
"type" : "hadoop",
"inputSpec" : {
"type" : "static",
//2. ,
"paths" : "quickstart/wikiticker-2015-09-12-sampled.json"
}
},
"dataSchema" : {
//1.
"dataSource" : "wikiticker",
"granularitySpec" : {
"type" : "uniform",
"segmentGranularity" : "day",
"queryGranularity" : "none",
//6.
"intervals" : ["2015-09-12/2015-09-13"]
},
"parser" : {
"type" : "hadoopyString",
"parseSpec" : {
"format" : "json",
"dimensionsSpec" : {
//4.
"dimensions" : [
"channel",
"cityName",
"comment",
"countryIsoCode",
"countryName",
"isAnonymous",
"isMinor",
"isNew",
"isRobot",
"isUnpatrolled",
"metroCode",
"namespace",
"page",
"regionIsoCode",
"regionName",
"user"
]
},
"timestampSpec" : {
"format" : "auto",
//3.
"column" : "time"
}
}
},
//5.
"metricsSpec" : [
{
"name" : "count",
"type" : "count"
},
{
"name" : "added",
"type" : "longSum",
"fieldName" : "added"
},
{
"name" : "deleted",
"type" : "longSum",
"fieldName" : "deleted"
},
{
"name" : "delta",
"type" : "longSum",
"fieldName" : "delta"
},
{
"name" : "user_unique",
"type" : "hyperUnique",
"fieldName" : "user"
}
]
},
"tuningConfig" : {
"type" : "hadoop",
"partitionsSpec" : {
"type" : "hashed",
"targetPartitionSize" : 5000000
},
"jobProperties" : {}
}
}
}
データに時間が記録されていない場合は、現在の時間で各ローのデータをマークするか、「2000-01-01 T 00:00:00.000 Z」などのすべてのローを固定タイムスタンプでマークすることもできます.ウェブブラウズデータセットを例にとると、DruidはTSV、CSV、JSONをサポートし、開梱して使用します.DruidではネストされたJSONオブジェクトはサポートされていませんので、JSONを使用する場合は、平面オブジェクトを含むファイルを指定する必要があります.
{"time": "2015-09-01T00:00:00Z", "url": "/foo/bar", "user": "alice", "latencyMs": 32}
{"time": "2015-09-01T01:00:00Z", "url": "/", "user": "bob", "latencyMs": 11}
{"time": "2015-09-01T01:30:00Z", "url": "/foo/bar", "user": "bob", "latencyMs": 45}
ファイルの最後に改行がないことを確認します.このファイルをpageviews.jsonという名前のファイルに保存すると、このデータセットについて次のようになります.
既存のインデックスファイルquickstart/wikiticker-indexを使用できます.json、copyから新しいファイルへ.
cp quickstart/wikiticker-index.json my-index-task.json
次に、これらのセクションを変更して変更します.
"dataSource": "pageviews"
"inputSpec": {
"type": "static",
"paths": "pageviews.json"
}
"timestampSpec": {
"format": "auto",
"column": "time"
}
"dimensionsSpec": {
"dimensions": ["url", "user"]
}
"metricsSpec": [
{"name": "views", "type": "count"},
{"name": "latencyMs", "type": "doubleSum", "fieldName": "latencyMs"}
]
"granularitySpec": {
"type": "uniform",
"segmentGranularity": "day",
"queryGranularity": "none",
"intervals": ["2015-09-01/2015-09-02"]
}
タスクの実行
このタスクを実行するには、インデックスタスクがpageviewsを読み取ることができることを確認します.json:もしあなたが本機で実行している場合(hadoopへの接続が構成されていない場合、これもDruidのデフォルト値です)、pageviews.jsonはDruidのルートディレクトリの下に置かれます.Druidがhadoopクラスタ接続を構成する場合、pageviews.jsonはHDFSにアップロードします.上の抽出仕様の構成パスを調整します.Druid Overlordにあなたのインデックスタスクを提出すると、インデックスを開始することができます.標準Druidインストールでは、URLはhttp://OVERLORD_IP:8090/druid/indexer/v1/task .
curl -X 'POST' -H 'Content-Type:application/json' -d @my-index-task.json OVERLORD_IP:8090/druid/indexer/v1/task
すべてのものが本機で稼働している場合はlocalhostを使用できます
curl -X 'POST' -H 'Content-Type:application/json' -d @my-index-task.json localhost:8090/druid/indexer/v1/task
このタスクでエラー(ステータスがFAILEDなど)が発生した場合は、overlordコンソールのTask logでトラブルシューティングできます(http://www.localhost/console.html).
データ照会
データはCoordinatorコンソールで1~2分で完全に使用できるはずです.http://localhost:8081/#/進捗を監視できます.データが完全に使用可能になると、サポートされているクエリー・メソッドを使用してデータをクエリーできます.
深く読む
バッチ・ロード・データの詳細については、バッチ・データ抽出の章を参照してください.
テキストリンク:http://druid.io/docs/0.9.2/tutorials/tutorial-batch.html