這篇文章將為大家詳細(xì)講解有關(guān)Spark Streaming+Spark SQL的數(shù)據(jù)傾斜示例分析,文章內(nèi)容質(zhì)量較高,因此小編分享給大家做個(gè)參考,希望大家閱讀完這篇文章后對(duì)相關(guān)知識(shí)有一定的了解。
在深州等地區(qū),都構(gòu)建了全面的區(qū)域性戰(zhàn)略布局,加強(qiáng)發(fā)展的系統(tǒng)性、市場(chǎng)前瞻性、產(chǎn)品創(chuàng)新能力,以專注、極致的服務(wù)理念,為客戶提供成都網(wǎng)站設(shè)計(jì)、成都網(wǎng)站制作 網(wǎng)站設(shè)計(jì)制作定制網(wǎng)站建設(shè),公司網(wǎng)站建設(shè),企業(yè)網(wǎng)站建設(shè),高端網(wǎng)站設(shè)計(jì),全網(wǎng)營(yíng)銷推廣,成都外貿(mào)網(wǎng)站建設(shè)公司,深州網(wǎng)站建設(shè)費(fèi)用合理。
1.現(xiàn)象
三臺(tái)機(jī)器都有產(chǎn)生executor,每臺(tái)都會(huì)產(chǎn)生tasks,但是其中只有一臺(tái)的task有input數(shù)據(jù),其他機(jī)器的tasks都沒(méi)有數(shù)據(jù)。
2.猜想
2.1是不是數(shù)據(jù)傾斜?
是
2.2是數(shù)據(jù)量過(guò)大,group by時(shí),導(dǎo)致key分布不均?
比如key1 有98萬(wàn),key2有2萬(wàn),那么shuffle時(shí),肯定數(shù)據(jù)傾斜。但是我剛開(kāi)始數(shù)據(jù)量不是很大,所以pass (就算數(shù)據(jù)量大,也很簡(jiǎn)單處理,一般處理時(shí)key加上隨機(jī)前綴數(shù))
2.3是不是數(shù)據(jù)量太少 不夠分區(qū)的?
也懷疑過(guò),不過(guò)還沒(méi)去驗(yàn)證
2.4 flume流到kafka,是snappy壓縮格式,而spark作為kafka的消費(fèi)者,雖然能夠自動(dòng)識(shí)別壓縮格式,但是這種snappy格式不支持切分
也懷疑過(guò),不過(guò)還沒(méi)去修改支持spilt的壓縮格式,也還沒(méi)去驗(yàn)證
2.5 spark streaming分區(qū)數(shù)目是有誰(shuí)決定的?
使用direct這種模式是由kafka的分區(qū)數(shù)目決定,
使用receiver這種模式由流的數(shù)目決定也就是由receiver數(shù)目決定。
3.修改分區(qū)數(shù)
[root@sht-sgmhadoopdn-02 kafka]#bin/kafka-topics.sh --alter --zookeeper 172.16.101.58:2181,172.16.101.59:2181,172.16.101.60:2181/kafka --topic logtopic --partitions 3
[root@sht-sgmhadoopdn-02 kafka]# bin/kafka-topics.sh --describe --zookeeper 172.16.101.58:2181,172.16.101.59:2181,172.16.101.60:2181/kafka --topic logtopic
Topic:logtopic PartitionCount:3 ReplicationFactor:3 Configs:
Topic: test Partition: 0 Leader: 3 Replicas: 3,1,2 Isr: 3,1,2
Topic: test Partition: 1 Leader: 1 Replicas: 1,2,3 Isr: 1,2,3
Topic: test Partition: 2 Leader: 2 Replicas: 2,3,1 Isr: 2,3,1
[root@sht-sgmhadoopdn-02 kafka]#
4.驗(yàn)證(每個(gè)executor都有input數(shù)據(jù))
關(guān)于Spark Streaming+Spark SQL的數(shù)據(jù)傾斜示例分析就分享到這里了,希望以上內(nèi)容可以對(duì)大家有一定的幫助,可以學(xué)到更多知識(shí)。如果覺(jué)得文章不錯(cuò),可以把它分享出去讓更多的人看到。