离线数仓导入数据时,kafka如何保证数据有序性?
发布时间:2022-08-29 16:23:15
发布人:qyf
确定是离线数仓吗(如果是离线数仓,就算离线数仓数据从kafka接入,那这对kafka中数据顺序的关系我就不太明白面试人想要啥)?
如果是离线数仓的数据从Kafka接入,接入到离线数据仓库的数据需要保障顺序吗?这个保障不必要。我总觉得这个问题的核心是让你保证Kakfa中数据的顺序?我们就针对这个问题说明
1、kafka本身就是保障分区内的数据有序,但是主题有多个分区,这个主题的多有数据不敢保证有顺序,所以我们需要为进入topic的数据做好key的分配(相同key只能进同一分区),保障相同的key的数据是有顺序,这样后续的实时数仓才方便计算,至于离线数仓要保障全局数据的顺序很简单,从新排序一下即可。
2、如果能设置kafka的上游数据仅为一个生产者,设置kafka只有一个分区,设置消费者只有一个,那这样也能保障其kakfa数据有序的,但是这种几乎就是极端场景,生产中很少见,除非数据很少可以尝试。
更多关于大数据培训的问题,欢迎咨询千锋教育在线名师。千锋教育拥有多年IT培训服务经验,采用全程面授高品质、高体验培养模式,拥有国内一体化教学管理及学员服务,助力更多学员实现高薪梦想。