Druid实时数据摄入参考

2018-12-07  本文已影响21人  liuzx32

1. 概述

Druid的数据摄入主要包括两大类:实时数据摄入和离线数据摄入

1.1. 实时输入摄入:包括Pull, Push两种

- Pull: 需要启动一个RealtimeNode节点,通过不同的Firehose摄取不同种类的数据源。
- Push: 需要启动Tranquility或是Kafka索引服务。通过HTTP调用的方式进行数据摄入。

1.2. 离线数据摄入:可以通过Realtime节点摄入,也可以通过索引节点启动任务摄取。


本文演示环节主要基于上一章部署的集群来进行

2. 实时数据摄入

2.1 Pull模式

由于Realtime Node 没有提供高可用,可伸缩等特性,对于比较重要的场景推荐使用 Tranquility Server  或是Tranquility Kafka索引服务。

2.2 Push模式

Indexing service在前文已经介绍过了,Tranquility 是一个Scala库,它通过索引服务实现数据实时的摄取。它之所以存在,是因为Indexing service API属于低层面的。Tranquility是对索引服务进行抽象封装, 对使用者屏蔽了 创建任务,处理分区、复制、服务发现和shema rollover等环节。

#通过Tranquility 的数据摄入,可以分为两种方式

- Tranquility Server:发送方可以通过Tranquility Server 提供的HTTP接口,向Druid发送数据。
- Tranquility Kafka:发送发可以先将数据发送到Kafka,Tranquility Kafka会根据配置从Kafka获取数据,并写到Druid中。

#启动Tranquility Server

- bin/tranquility server -configFile conf/tranquility/server.json

#启动Tranquility Kafka

- bin/tranquility kafa -configFile conf/tranquility/kafka.json

#

上一篇 下一篇

猜你喜欢

热点阅读