我有以下代码,它获取不同的电话号码,并创建所有呼叫的联合。
//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)
spark-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
问题是,Spark能否使用256G机器处理50G数据,并在同一台机器上运行Hadoop服务(namenode,datanode,secondaryname node),yarn和HBase。
Hbase(HMaster,HQuorumPeer和HRegionServers)每个大约需要20G。
此外,是否有比使用" Union"更快的方式?在Spark。
答案 0 :(得分:0)
每个RDD有多少个分区? Serde如何查找记录?
对于关系代数,可以先执行联合,然后再执行联接。