¸üÐÂʱ¼ä:2021Äê01ÔÂ14ÈÕ11ʱ08·Ö À´Ô´:ÀÖÓãµç¾º ä¯ÀÀ´ÎÊý:

¡¡¡¡Spark SQLÊÇApache Spark´¦Àí½á¹¹»¯Êý¾ÝµÄÄ£¿é£¬ÓÅ»¯Spark SQLÐÔÄÜ¿ÉÒÔʵÏÖ¸ú¶àµÄSpark²Ù×÷¡£±¾ÎľÍÀ´×ÅÖØ½éÉÜSpark SQLÐÔÄܵ÷Óŵķ½·¨¡£
¡¡¡¡Spark.HadoopRDD.ignoreEmptySplits
¡¡¡¡²ÎÊýĬÈÏÊÇfalse£¬Èç¹ûÊÇtrue£¬Ôò»áºöÂÔÄÇЩ¿ÕµÄsplits£¬¼õСtaskµÄÊýÁ¿¡£
¡¡¡¡Spark.Hadoop.mapreduce.input.fileinputformat.split.minsize
¡¡¡¡²ÎÊýÓÃÓÚ¾ÛºÏinputµÄСÎļþ£¬¿ØÖÆÃ¿¸ömapTaskµÄÊäÈëÎļþ£¬·ÀֹСÎļþ¹ý¶àʱºò£¬²úÉúÌ«¶àµÄtask.
¡¡¡¡Spark.sql.autoBroadcastJoinThreshold && Spark.sql.broadcastTimeout
¡¡¡¡²ÎÊýÓÃÓÚ¿ØÖÆÔÚSpark SQLÖÐʹÓÃBroadcastJoinʱºò±íµÄ´óСãÐÖµ£¬Êʵ±Ôö´ó¿ÉÒÔÈÃһЩ±í×ßBroadcastJoin£¬ÌáÉýÐÔÄÜ£¬µ«ÊÇÈç¹ûÉèÖÃÌ«´óÓÖ»áÔì³ÉdriverÄÚ´æÑ¹Á¦£¬¶øbroadcastTimeoutÊÇÓÃÓÚ¿ØÖÆBroadcastµÄFutureµÄ³¬Ê±Ê±¼ä£¬Ä¬ÈÏÊÇ300s£¬¿É¸ù¾ÝÐèÇó½øÐе÷Õû¡£
¡¡¡¡Spark.sql.adaptive.enabled && Spark.sql.adaptive.shuffle.targetPostShuffleInputSize
¡¡¡¡²ÎÊýÊÇÓÃÓÚ¿ªÆôSparkµÄ×ÔÊÊÓ¦Ö´ÐУ¬ÕâÊÇSpark±È½ÏÀϰ汾µÄ×ÔÊÊÓ¦Ö´ÐУ¬ºóÃæµÄtargetPostShuffleInputSizeÊÇÓÃÓÚ¿ØÖÆÖ®ºóµÄshuffle ½×¶ÎµÄƽ¾ùÊäÈëÊý¾Ý´óС£¬·ÀÖ¹²úÉú¹ý¶àµÄtask¡£
¡¡¡¡Spark.sql.parquet.mergeSchema
¡¡¡¡²ÎÊýĬÈÏfalse¡£µ±ÉèΪtrue£¬parquet»á¾ÛºÏËùÓÐparquetÎļþµÄschema£¬·ñÔòÊÇÖ±½Ó¶ÁÈ¡parquet summaryÎļþ£¬»òÕßÔÚûÓÐparquet summaryÎļþʱºòËæ»úÑ¡ÔñÒ»¸öÎļþµÄschema×÷Ϊ×îÖÕµÄschema¡£
¡¡¡¡Spark.sql.files.opencostInBytes
¡¡¡¡²ÎÊýĬÈÏ4M£¬±íʾСÓÚ4MµÄСÎļþ»áºÏ²¢µ½Ò»¸ö·ÖÇøÖУ¬ÓÃÓÚ¼õССÎļþ£¬·Àֹ̫¶àµ¥¸öСÎļþÕ¼Ò»¸ö·ÖÇøÇé¿ö¡£
¡¡¡¡Spark.Hadoop.mapreduce.fileoutputcommitter.algorithm.version
¡¡¡¡²ÎÊýµÄֵΪ1»òÕß2£¬Ä¬ÈÏÊÇ1. MapReduce-4815 Ïêϸ½éÉÜÁË fileoutputcommitter µÄÔÀí£¬Êµ¼ùÖÐÉèÖÃÁË version=2 µÄ±ÈĬÈÏ version=1 µÄ¼õÉÙÁË70%ÒÔÉ쵀 commit ʱ¼ä£¬µ«ÊÇ1¸ü½¡×³£¬ÄÜ´¦ÀíһЩÇé¿öÏÂ
²ÂÄãϲ»¶£º
Spark SQLÊÇʲô£¿ÓÐʲôÓã¿
Spark SQLµ×²ã¼Ü¹¹Ïê½â
ÀÖÓãµç¾º´óÊý¾ÝÅàѵ¿Î³Ì
±±¾©Ð£Çø