0
次のコードを使用して、別の電話番号を取得し、すべての呼び出しを結合して作成します。単一マシンを使用するとRDDユニオンOOMエラーが発生する
//Get all the calls for the last 24 hours for each MSISDN in the hour
val sCallsPlaced = (grouped24HourCallsPlaS).join(distinctMSISDNs)
val oCallsPlaced = (grouped24HourCallsPlaO).join(distinctMSISDNs)
val sCallsReceived = grouped24HourCallsRecS.join(distinctMSISDNs)
val oCallsReceived = grouped24HourCallsRecO.join(distinctMSISDNs)
val callsToProcess = sCallsPlaced.union(oCallsPlaced)
.union(sCallsReceived)
.union(oCallsReceived)
火花defaults.confにファイルには、次があります、質問がある
spark.driver.memory=16g
spark.driver.cores=1
spark.driver.maxResultSize=2g
spark.executor.memory=24g
spark.executor.cores=10
spark.default.parallelism=256
Hadoopのサービス(名前ノードと、256G機で、データの50Gを処理することができるスパークますdatanode、secondarynameノード)、糸、およびHBaseを同じマシン上で実行します。
Hbase(HMaster、HQuorumPeer、およびHRegionServers)はそれぞれ約20Gを消費します。
また、Sparkで "Union"を使用するよりも速い方法があります。