MAPREDUCE服务 MRS-在Beeline/JDBCServer模式下连续运行10T的TPCDS测试套会出现内存不足的现象:回答
回答
当前在默认配置下,在内存中保留的Job和Stage的UI数据个数为1000个。
当前大集群优化已增加将UI数据溢出到磁盘的优化,其溢出条件是每个Stage中的UI数据大小达到最小阈值5MB。如果每个Stage的task数较小,那么其UI数据大小可能达不到该阈值,从而导致该Stage的UI数据一直缓存在内存中,直到UI数据个数到达保留的上限值(当前默认值为1000个),旧的UI数据才会在内存中被清除。
因此,在将旧的UI数据从内存中清除之前,UI数据会占用大量内存,从而导致执行10T的TPCDS测试套时出现Driver内存不足的现象。
规避措施:
- 根据业务需要,配置合适的需要保留的Job和Stage的UI数据个数,即配置“spark.ui.retainedJobs”和“spark.ui.retainedStages”参数。详细信息请参考Spark常用配置参数中的表13。
- 如果需要保留的Job和Stage的UI数据个数较多,可通过配置“spark.driver.memory”参数,适当增大Driver的内存。详细信息请参考Spark常用配置参数中的表10。
- MapReduce服务_如何使用MapReduce服务_MRS集群客户端安装与使用
- MapReduce服务_什么是MapReduce服务_什么是HBase
- 什么是Spark_如何使用Spark_Spark的功能是什么
- 云数据库Gaussdb数据库索引_华为gaussdb__gaussdb 数据库
- GaussDB连接_华为Gaussdb_高斯数据库连接_华为云
- MapReduce服务_什么是存算分离_如何配置MRS集群存算分离
- MapReduce服务_什么是ZooKeeper_如何使用ZooKeeper
- 大数据分析是什么_使用MapReduce_创建MRS服务
- 分布式缓存Redis实战_Redis技术实战_分布式缓存-华为云
- MRS优势_什么是MRS_MRS功能