场景:ES是用来存业务数据,把ES作为数据存储的平台,提供查询服务
数据写入方式包括,应用调用HTTP接口写入,通过Hive的外表导入到ES
问题:上述两种方式由于都存在请求流程不可控的情况,希望能在ES前面加一层MQ,比如kafka,来缓解写入的压力
根据这个需求,就需要选择一款可以将 ES和kafka结合起来,并且还能处理现有的 hive等场景的数据写入,要选择什么样的中间件产品能满足上述需求呢?
还请有经验的大神指教。
数据写入方式包括,应用调用HTTP接口写入,通过Hive的外表导入到ES
问题:上述两种方式由于都存在请求流程不可控的情况,希望能在ES前面加一层MQ,比如kafka,来缓解写入的压力
根据这个需求,就需要选择一款可以将 ES和kafka结合起来,并且还能处理现有的 hive等场景的数据写入,要选择什么样的中间件产品能满足上述需求呢?
还请有经验的大神指教。
2 个回复
rochy - rochy_he
赞同来自:
不过推荐你试试 waterdrop:https://interestinglab.github. ... h-cn/
God_lockin
赞同来自:
1. 做个平台给各个有读写需求的部门自己设置自己的mapping,比如字段类型、是否按天、月、年建索引…
2. 开一个(如果有特殊需求可能是好几个)Kafka的topic
3. 约定好交互格式,(比如,用 index|type|_id|timestamp|randomkey 作为kfk的key),然后(用docker技术)动态增减consumer做数据的导入
由于公司技术栈主要是Java,所以几个组件,包括数据预处理的插件都是Java实现的,也可以选择包括golang、python、ruby…等各种不同的实现。不知道能不能解决你的问题?