我目前在Nifi的流程是这样的
ListHDFS->FetchHDFS->SplitText->JoltransformJSon->PUTHBaseJSON. 每小时输入的JSON文件最多为10 of。单个文件大小为80 -100MB。
Splittext & JoltTransform ->转换文本并将其作为4KB文件发送。因此,每小时的作业最多需要50到1.20分钟来完成流程。我怎么才能让它更快。处理用例的最佳流程是什么?
我尝试过使用Mergecontent,但效果并不好。
感谢所有人
发布于 2018-09-22 03:39:42
您可以在MergeRecord Processor和之后使用JoltTransfromJson Processor
使用最大仓位年龄属性作为通配符,强制将符合条件的仓位合并为。
然后使用面向记录的处理器,即PutHBaseRecord处理器,并配置您的记录读取器控制器服务(JsonTree读取器)来读取传入的流文件,并调优Batch size属性值以获得最佳性能。
通过使用此过程,我们正在处理记录块,这最终会提高将数据存储到HBase中的性能。
流程:
ListHDFS->FetchHDFS->SplitText->JoltransformJSon->MergeRecord ->PUTHBaseRecord有关Merge Record configs和Record Reader configs,请参阅以下链接
https://stackoverflow.com/questions/52449925
复制相似问题