druid之加载文件

转载:http://druid.io/docs/latest/tutorials/tutorial-batch.html

教程:加载文件

入门

本教程演示了如何使用Druid的本机批处理提取来执行批处理文件加载。

在本教程中,我们假设您已经按照单机快速入门中的说明下载了Druid,并让它在本地计算机上运行。您还不需要加载任何数据。

准备数据和摄取任务规范

通过向德鲁伊霸主提交摄取任务规范来启动数据加载。在本教程中,我们将加载示例Wikipedia页面编辑数据。

Druid包中包含以下示例本机批量摄取任务规范quickstart/tutorial/wikipedia-index.json,为方便起见,此处显示已配置为读取quickstart/tutorial/wikiticker-2015-09-12-sampled.json.gz输入文件:

{
  "type" : "index",
  "spec" : {
    "dataSchema" : {
      "dataSource" : "wikipedia",
      "parser" : {
        "type" : "string",
        "parseSpec" : {
          "format" : "json",
          "dimensionsSpec" : {
            "dimensions" : [
              "channel",
              "cityName",
              "comment",
              "countryIsoCode",
              "countryName",
              "isAnonymous",
              "isMinor",
              "isNew",
              "isRobot",
              "isUnpatrolled",
              "metroCode",
              "namespace",
              "page",
              "regionIsoCode",
              "regionName",
              "user",
              { "name": "added", "type": "long" },
              { "name": "deleted", "type": "long" },
              { "name": "delta", "type": "long" }
            ]
          },
          "timestampSpec": {
            "column": "time",
            "format": "iso"
          }
        }
      },
      "metricsSpec" : [],
      "granularitySpec" : {
        "type" : "uniform",
        "segmentGranularity" : "day",
        "queryGranularity" : "none",
        "intervals" : ["2015-09-12/2015-09-13"],
        "rollup" : false
      }
    },
    "ioConfig" : {
      "type" : "index",
      "firehose" : {
        "type" : "local",
        "baseDir" : "quickstart/tutorial/",
        "filter" : "wikiticker-2015-09-12-sampled.json.gz"
      },
      "appendToExisting" : false
    },
    "tuningConfig" : {
      "type" : "index",
      "targetPartitionSize" : 5000000,
      "maxRowsInMemory" : 25000,
      "forceExtendableShardSpecs" : true
    }
  }
}

此规范将创建一个名为“wikipedia”的数据源,

加载批次数据

我们从2015年9月12日开始包含维基百科编辑样本,以帮助您入门。

要将此数据加载到Druid中,您可以提交指向该文件的摄取任务。我们已经包含了一个加载wikiticker-2015-09-12-sampled.json.gz存档中包含的文件的任务。

为方便起见,Druid包中包含批量摄取助手脚本bin/post-index-task

此脚本会将摄取任务发布给德鲁伊霸主,并轮询德鲁伊,直到数据可用于查询。

从Druid包root运行以下命令:

bin/post-index-task --file quickstart/tutorial/wikipedia-index.json 

您应该看到如下输出:

Beginning indexing data for wikipedia
Task started: index_wikipedia_2018-07-27T06:37:44.323Z
Task log:     http://localhost:8090/druid/indexer/v1/task/index_wikipedia_2018-07-27T06:37:44.323Z/log
Task status:  http://localhost:8090/druid/indexer/v1/task/index_wikipedia_2018-07-27T06:37:44.323Z/status
Task index_wikipedia_2018-07-27T06:37:44.323Z still running...
Task index_wikipedia_2018-07-27T06:37:44.323Z still running...
Task finished with status: SUCCESS
Completed indexing data for wikipedia. Now loading indexed data onto the cluster...
wikipedia loading complete! You may now query your data

查询您的数据

加载数据后,请按照查询教程对新加载的数据运行一些示例查询。

清理

如果您希望浏览任何其他摄取教程,则需要关闭群集并通过删除vardruid包下目录的内容来重置群集状态,因为其他教程将写入相同的“维基百科”数据源。

额外:没有脚本加载数据

让我们简要讨论一下如何在不使用脚本的情况下提交摄取任务。您不需要运行这些命令。

要提交任务,请在apache-druid-0.13.0-incubating目录的新终端窗口中将其发布到Druid:

curl -X 'POST' -H 'Content-Type:application/json' -d @quickstart/tutorial/wikipedia-index.json http://localhost:8090/druid/indexer/v1/task

如果提交成功,将打印任务的ID:

{"task":"index_wikipedia_2018-06-09T21:30:32.802Z"}

要查看摄取任务的状态,请转至霸王控制台: http:// localhost:8090 / console.html。您可以定期刷新控制台,任务成功后,您应该看到任务的“成功”状态。

摄取任务完成后,数据将由历史节点加载,并可在一两分钟内进行查询。您可以通过检查是否存在带有蓝色圆圈的数据源“维基百科”来监控协调器控制台中加载数据的进度:http:// localhost:8081 /#/

协调员控制台

进一步阅读

有关加载批处理数据的更多信息,请参阅批处理提取文档

猜你喜欢

转载自blog.csdn.net/xqhys/article/details/89152668
今日推荐