Äú¿ÉÒÔ¾èÖú£¬Ö§³ÖÎÒÃǵĹ«ÒæÊÂÒµ¡£

1Ôª 10Ôª 50Ôª





ÈÏÖ¤Â룺  ÑéÖ¤Âë,¿´²»Çå³þ?Çëµã»÷Ë¢ÐÂÑéÖ¤Âë ±ØÌî



  ÇóÖª ÎÄÕ ÎÄ¿â Lib ÊÓÆµ iPerson ¿Î³Ì ÈÏÖ¤ ×Éѯ ¹¤¾ß ½²×ù Modeler   Code  
»áÔ±   
 
   
 
 
     
   
 ¶©ÔÄ
  ¾èÖú
SparkÐÔÄܵ÷ÓÅ
 
×÷Õß ³ÌÐòÔ±µç×Ó¿¯ À´Ô´£º³ÌÐòÔ±µç×Ó¿¯ »ðÁú¹ûÈí¼þ  ·¢²¼ÓÚ 2015-7-13
  3157  次浏览      27
 

ÕªÒª£ºÍ¨³£ÎÒÃǶÔÒ»¸öϵͳ½øÐÐÐÔÄÜÓÅ»¯ÎÞ¹ÖºõÁ½¸ö²½Ö衪¡ªÐÔÄÜ¼à¿ØºÍ²ÎÊýµ÷Õû£¬±¾ÎÄÖ÷Òª·ÖÏíµÄÒ²ÊÇÕâÁ½·½ÃæÄÚÈÝ¡£

ͨ³£ÎÒÃǶÔÒ»¸öϵͳ½øÐÐÐÔÄÜÓÅ»¯ÎÞ¹ÖºõÁ½¸ö²½Ö衪¡ªÐÔÄÜ¼à¿ØºÍ²ÎÊýµ÷Õû£¬±¾ÎÄÖ÷Òª·ÖÏíµÄÒ²ÊÇÕâÁ½·½ÃæÄÚÈÝ¡£

ÐÔÄÜ¼à¿Ø¹¤¾ß

¡¾Spark¼à¿Ø¹¤¾ß¡¿

SparkÌṩÁËһЩ»ù±¾µÄWeb¼à¿ØÒ³Ã棬¶ÔÓÚÈÕ³£¼à¿ØÊ®·ÖÓÐÓá£

1. Application Web UI

http://master:4040£¨Ä¬È϶˿ÚÊÇ4040£¬¿ÉÒÔͨ¹ýspark.ui.portÐ޸ģ©¿É»ñµÃÕâЩÐÅÏ¢£º£¨1£©stagesºÍtasksµ÷¶ÈÇé¿ö£»£¨2£©RDD´óС¼°ÄÚ´æÊ¹Ó㻣¨3£©ÏµÍ³»·¾³ÐÅÏ¢£»£¨4£©ÕýÔÚÖ´ÐеÄexecutorÐÅÏ¢¡£

2. history server

µ±SparkÓ¦ÓÃÍ˳öºó£¬ÈÔ¿ÉÒÔ»ñµÃÀúÊ·SparkÓ¦ÓõÄstagesºÍtasksÖ´ÐÐÐÅÏ¢£¬±ãÓÚ·ÖÎö³ÌÐò²»Ã÷Ô­Òò¹ÒµôµÄÇé¿ö¡£ÅäÖ÷½·¨ÈçÏ£º

£¨1£©$SPARK_HOME/conf/spark-env.sh

export SPARK_HISTORY_OPTS="-Dspark.history.retainedApplications=50

Dspark.history.fs.logDirectory=hdfs://hadoop000:8020/directory"

˵Ã÷£ºspark.history.retainedApplica-tions½öÏÔʾ×î½ü50¸öÓ¦ÓÃspark.history.fs.logDirectory£ºSpark History ServerÒ³ÃæÖ»Õ¹Ê¾¸Ã·¾¶ÏµÄÐÅÏ¢¡£

£¨2£©$SPARK_HOME/conf/spark-defaults.conf

spark.eventLog.enabled true

spark.eventLog.dir hdfs://hadoop000:8020/directory #Ó¦ÓÃÔÚÔËÐйý³ÌÖÐËùÓеÄÐÅÏ¢¾ù¼Ç¼ÔÚ¸ÃÊôÐÔÖ¸¶¨µÄ·¾¶ÏÂ

3. spark.eventLog.compress true

£¨1£©HistoryServerÆô¶¯

$SPARK_HOMR/bin/start-histrory-server.sh

£¨2£©HistoryServerÍ£Ö¹

$SPARK_HOMR/bin/stop-histrory-server.sh

4. ganglia

ͨ¹ýÅäÖÃganglia£¬¿ÉÒÔ·ÖÎö¼¯ÈºµÄʹÓÃ×´¿öºÍ×ÊÔ´Æ¿¾±£¬µ«ÊÇĬÈÏÇé¿öÏÂgangliaÊÇδ±»´ò°üµÄ£¬ÐèÒªÔÚmvn±àÒëʱÌí¼Ó-Pspark-ganglia-lgpl£¬²¢ÐÞ¸ÄÅäÖÃÎļþ$SPARK_HOME/conf/metrics.properties¡£

5. Executor logs

Standaloneģʽ£º$SPARK_HOME/logs

YARNģʽ£ºÔÚyarn-site.xmlÎļþÖÐÅäÖÃÁËYARNÈÕÖ¾µÄ´æ·ÅλÖãºyarn.nodemanager.log-dirs£¬»òʹÓÃÃüÁî»ñÈ¡yarn logs -applicationId¡£

¡¾ÆäËû¼à¿Ø¹¤¾ß¡¿

1. Nmon£¨http://www.ibm.com/developerworks/aix/library/au-analyze_aix/£©

Nmon ÊäÈ룺c£ºCPU n£ºÍøÂç m£ºÄÚ´æ d£º´ÅÅÌ

2. Jmeter£¨http://jmeter. apache.org/£©

ͨ³£Ê¹ÓÃJmeter×öϵͳÐÔÄܲÎÊýµÄʵʱչʾ£¬JMeterµÄ°²×°·Ç³£¼òµ¥£¬´Ó¹Ù·½ÍøÕ¾ÉÏÏÂÔØ£¬½âѹ֮ºó¼´¿ÉʹÓá£ÔËÐÐÃüÁîÔÚ%JMETER_HOME%/binÏ£¬¶ÔÓÚ Windows Óû§£¬Ö±½ÓʹÓÃjmeter.bat¡£

Æô¶¯jmeter£º´´½¨²âÊԼƻ®£¬ÉèÖÃÏß³Ì×éÉèÖÃÑ­»·´ÎÊý¡£

Ìí¼Ó¼àÌýÆ÷£ºjp@gc - PerfMon Metrics Collector¡£

ÉèÖüàÌýÆ÷£º¼àÌýÖ÷»ú¶Ë¿Ú¼°¼àÌýÄÚÈÝ£¬ÀýÈçCPU¡£

Æô¶¯¼àÌý£º¿ÉÒÔʵʱ»ñµÃ½ÚµãµÄCPU״̬ÐÅÏ¢£¬´Óͼ4¿É¿´³öCPUÒѳöÏÖÆ¿¾±¡£

3. Jprofiler£¨http://www.ej-technologies.com/products/jprofiler/overview.html£©

JProfilerÊÇÒ»¸öÈ«¹¦ÄܵÄJavaÆÊÎö¹¤¾ß£¨profiler£©£¬×¨ÓÃÓÚ·ÖÎöJ2SEºÍJ2EEÓ¦ÓóÌʽ¡£Ëü°ÑCPU¡¢Ï̺߳ÍÄÚ´æµÄÆÊÎö×éºÏÔÚÒ»¸öÇ¿´óµÄÓ¦ÓÃÖС£JProfilerµÄGUI¿ÉÒÔ¸ü·½±ãµØÕÒµ½ÐÔÄÜÆ¿¾±¡¢×¥×¡ÄÚ´æÐ¹Â©£¨memory leaks£©£¬²¢½â¾ö¶àÏ̵߳ÄÎÊÌâ¡£ÀýÈç·ÖÎöÄĸö¶ÔÏóÕ¼ÓõÄÄÚ´æ±È½Ï¶à£»Äĸö·½·¨Õ¼ÓýϴóµÄCPU×ÊÔ´µÈ£»ÎÒÃÇͨ³£Ê¹ÓÃJprofilerÀ´¼à¿ØSparkÓ¦ÓÃÔÚlocalģʽÏÂÔËÐÐʱµÄÐÔÄÜÆ¿¾±ºÍÄÚ´æÐ¹Â©Çé¿ö¡£

ÉÏÊö¼¸¸ö¹¤¾ß¿ÉÒÔÖ±½Óͨ¹ýÌṩµÄÁ´½ÓÁ˽âÏêϸµÄʹÓ÷½·¨¡£

Sparkµ÷ÓÅ

¡¾Spark¼¯Èº²¢Ðжȡ¿

ÔÚSpark¼¯Èº»·¾³Ï£¬Ö»ÓÐ×ã¹»¸ßµÄ²¢ÐжȲÅÄÜʹϵͳ×ÊÔ´µÃµ½³ä·ÖµÄÀûÓ㬿ÉÒÔͨ¹ýÐÞ¸Äspark-env.shÀ´µ÷ÕûExecutorµÄÊýÁ¿ºÍʹÓÃ×ÊÔ´£¬StandaloneºÍYARN·½Ê½×ÊÔ´µÄµ÷¶È¹ÜÀíÊDz»Í¬µÄ¡£

ÔÚStandaloneģʽÏÂ:

1. ÿ¸ö½ÚµãʹÓõÄ×î´óÄÚ´æÊý£ºSPARK_WORKER_INSTANCES*SPARK_WORKER_MEMORY£»

2. ÿ¸ö½ÚµãµÄ×î´ó²¢·¢taskÊý£ºSPARK_WORKER_INSTANCES*SPARK_WORKER_CORES¡£

ÔÚYARNģʽÏ£º

1. ¼¯Èºtask²¢ÐжȣºSPARK_ EXECUTOR_INSTANCES* SPARK_EXECUTOR_CORES£»

2. ¼¯ÈºÄÚ´æ×ÜÁ¿£º(executor¸öÊý) * (SPARK_EXECUTOR_MEMORY+ spark.yarn.executor.memoryOverhead)
+(SPARK_DRIVER_MEMORY+spark.yarn.driver.memoryOverhead)¡£

ÖØµãÇ¿µ÷£ºSpark¶ÔExecutorºÍDriver¶îÍâÌí¼Ó¶ÑÄÚ´æ´óС£¬Executor¶Ë£ºÓÉspark.yarn.executor.memoryOverheadÉèÖã¬Ä¬ÈÏÖµexecutorMemory * 0.07Óë384µÄ×î´óÖµ¡£Driver¶Ë£ºÓÉspark.yarn.driver.memoryOverheadÉèÖã¬Ä¬ÈÏÖµdriverMemory * 0.07Óë384µÄ×î´óÖµ¡£

ͨ¹ýµ÷ÕûÉÏÊö²ÎÊý£¬¿ÉÒÔÌá¸ß¼¯Èº²¢Ðжȣ¬ÈÃϵͳͬʱִÐеÄÈÎÎñ¸ü¶à£¬ÄÇô¶ÔÓÚÏàͬµÄÈÎÎñ£¬²¢ÐжȸßÁË£¬¿ÉÒÔ¼õÉÙÂÖѯ´ÎÊý¡£¾ÙÀý˵Ã÷£ºÈç¹ûÒ»¸östageÓÐ100task£¬²¢ÐжÈΪ50£¬ÄÇôִÐÐÍêÕâ´ÎÈÎÎñ£¬ÐèÒªÂÖѯÁ½´Î²ÅÄÜÍê³É£¬Èç¹û²¢ÐжÈΪ100£¬ÄÇôһ´Î¾Í¿ÉÒÔÁË¡£

µ«ÊÇÔÚ×ÊÔ´ÏàͬµÄÇé¿ö£¬²¢ÐжȸßÁË£¬ÏàÓ¦µÄExecutorÄÚ´æ¾Í»á¼õÉÙ£¬ËùÒÔÐèÒª¸ù¾Ýʵ¼Êʵ¿öЭµ÷ÄÚ´æºÍcore¡£´ËÍ⣬SparkÄܹ»·Ç³£ÓÐЧµÄÖ§³Ö¶Ìʱ¼äÈÎÎñ£¨ÀýÈ磺200ms£©£¬ÒòΪ»á¶ÔËùÓеÄÈÎÎñ¸´ÓÃJVM£¬ÕâÑùÄܼõСÈÎÎñÆô¶¯µÄÏûºÄ£¬StandaloneģʽÏ£¬core¿ÉÒÔÔÊÐí1-2±¶ÓÚÎïÀícoreµÄÊýÁ¿½øÐг¬Åä¡£

¡¾SparkÈÎÎñÊýÁ¿µ÷Õû¡¿

SparkµÄÈÎÎñÊýÓÉstageÖÐµÄÆðʼµÄËùÓÐRDDµÄpartitionÖ®ºÍÊýÁ¿¾ö¶¨£¬ËùÒÔÐèÒªÁ˽âÿ¸öRDDµÄpartitionµÄ¼ÆËã·½·¨¡£ÒÔSparkÓ¦ÓôÓHDFS¶ÁÈ¡Êý¾ÝΪÀý£¬HadoopRDDµÄpartitionÇзַ½·¨ÍêÈ«¼Ì³ÐÓÚMapReduceÖеÄFileInputFormat£¬¾ßÌåµÄpartitionÊýÁ¿ÓÉHDFSµÄ¿é´óС¡¢mapred.min.split.sizeµÄ´óС¡¢ÎļþµÄѹËõ·½Ê½µÈ¶à¸öÒòËØ¾ö¶¨£¬ÏêÇéÐèÒª²Î¼ûFileInputFormatµÄ´úÂë¡£

¡¾SparkÄÚ´æµ÷ÓÅ¡¿

ÄÚ´æÓÅ»¯ÓÐÈý¸ö·½ÃæµÄ¿¼ÂÇ£º¶ÔÏóËùÕ¼ÓõÄÄڴ棬·ÃÎʶÔÏóµÄÏûºÄÒÔ¼°À¬»ø»ØÊÕËùÕ¼ÓõĿªÏú¡£

1. ¶ÔÏóËùÕ¼Äڴ棬ÓÅ»¯Êý¾Ý½á¹¹

Spark ĬÈÏʹÓÃJavaÐòÁл¯¶ÔÏó£¬ËäÈ»Java¶ÔÏóµÄ·ÃÎÊËٶȸü¿ì£¬µ«ÆäÕ¼ÓõĿռäͨ³£±ÈÆäÄÚ²¿µÄÊôÐÔÊý¾Ý´ó2-5±¶¡£ÎªÁ˼õÉÙÄÚ´æµÄʹÓ㬼õÉÙJavaÐòÁл¯ºóµÄ¶îÍ⿪Ïú£¬ÏÂÃæÁоÙһЩSpark¹ÙÍø£¨http://spark.apache.org/docs/latest/tuning.html#tuning-data-structures£©ÌṩµÄ·½·¨¡£

£¨1£©Ê¹ÓöÔÏóÊý×éÒÔ¼°Ô­Ê¼ÀàÐÍ£¨primitive type£©Êý×éÒÔÌæ´úJava»òÕßScala¼¯ºÏÀࣨcollection class)¡£fastutil ¿âΪԭʼÊý¾ÝÀàÐÍÌṩÁ˷dz£·½±ãµÄ¼¯ºÏÀ࣬ÇÒ¼æÈÝJava±ê×¼Àà¿â¡£

£¨2£©¾¡¿ÉÄܵرÜÃâ²ÉÓú¬ÓÐÖ¸ÕëµÄǶÌ×Êý¾Ý½á¹¹À´±£´æÐ¡¶ÔÏó¡£

£¨3£©¿¼ÂDzÉÓÃÊý×ÖID»òÕßö¾ÙÀàÐÍÒÔ±ãÌæ´úStringÀàÐ͵ÄÖ÷¼ü¡£

£¨4£©Èç¹ûÄÚ´æÉÙÓÚ32GB£¬ÉèÖÃJVM²ÎÊý-XX:+UseCom-pressedOopsÒԱ㽫8×Ö½ÚÖ¸ÕëÐ޸ijÉ4×Ö½Ú¡£Óë´Ëͬʱ£¬ÔÚJava 7»òÕ߸ü¸ß°æ±¾£¬ÉèÖÃJVM²ÎÊý-XX:+UseC-----ompressedStringsÒÔ±ã²ÉÓÃ8±ÈÌØÀ´±àÂëÿһ¸öASCII×Ö·û¡£

2. ÄÚ´æ»ØÊÕ

£¨1£©»ñÈ¡ÄÚ´æÍ³¼ÆÐÅÏ¢£ºÓÅ»¯ÄÚ´æÇ°ÐèÒªÁ˽⼯ȺµÄÄÚ´æ»ØÊÕÆµÂÊ¡¢ÄÚ´æ»ØÊպķÑʱ¼äµÈÐÅÏ¢£¬¿ÉÒÔÔÚspark-env.shÖÐÉèÖÃSPARK_JAVA_OPTS=¡°-verbose:gc -XX:+PrintGCDetails -XX:+PrintGCTimeStamps $ SPARK_JAVA_OPTS¡±À´»ñȡÿһ´ÎÄÚ´æ»ØÊÕµÄÐÅÏ¢¡£

£¨2£©ÓÅ»¯»º´æ´óС£ºÄ¬ÈÏÇé¿öSpark²ÉÓÃÔËÐÐÄڴ棨spark.executor.memory£©µÄ60%À´½øÐÐRDD»º´æ¡£Õâ±íÃ÷ÔÚÈÎÎñÖ´ÐÐÆÚ¼ä£¬ÓÐ40%µÄÄÚ´æ¿ÉÒÔÓÃÀ´½øÐжÔÏó´´½¨¡£Èç¹ûÈÎÎñÔËÐÐËٶȱäÂýÇÒJVMƵ·±½øÐÐÄÚ´æ»ØÊÕ£¬»òÕßÄÚ´æ¿Õ¼ä²»×㣬ÄÇô½µµÍ»º´æ´óСÉèÖÿÉÒÔ¼õÉÙÄÚ´æÏûºÄ£¬¿ÉÒÔ½µµÍspark.storage.memoryFractionµÄ´óС¡£

3. Ƶ·±GC»òÕßOOM

Õë¶ÔÕâÖÖÇé¿ö£¬Ê×ÏÈҪȷ¶¨ÏÖÏóÊÇ·¢ÉúÔÚDriver¶Ë»¹ÊÇÔÚExecutor¶Ë£¬È»ºóÔÚ·Ö±ð´¦Àí¡£

Driver¶Ë£ºÍ¨³£ÓÉÓÚ¼ÆËã¹ý´óµÄ½á¹û¼¯±»»ØÊÕµ½Driver¶Ëµ¼Ö£¬ÐèÒªµ÷´óDriver¶ËµÄÄÚ´æ½â¾ö£¬»òÕß½øÒ»²½¼õÉÙ½á¹û¼¯µÄÊýÁ¿¡£

Executor¶Ë£º

£¨1£©ÒÔÍⲿÊý¾Ý×÷ΪÊäÈëµÄStage£ºÕâÀàStageÖгöÏÖGCͨ³£ÊÇÒòΪÔÚMap²à½øÐÐmap-side-combineʱ£¬ÓÉÓÚgroup¹ý¶àÒýÆðµÄ¡£½â¾ö·½·¨¿ÉÒÔÔö¼ÓpartitionµÄÊýÁ¿£¨¼´taskµÄÊýÁ¿£©À´¼õÉÙÿ¸ötaskÒª´¦ÀíµÄÊý¾Ý£¬À´¼õÉÙGCµÄ¿ÉÄÜÐÔ¡£

£¨2£©ÒÔshuffle×÷ΪÊäÈëµÄStage£ºÕâÀàStageÖгöÏÖGCµÄͨ³£Ô­ÒòÒ²ÊǺÍshuffleÓйأ¬³£¼ûÔ­ÒòÊÇijһ¸ö»ò¶à¸ögroupµÄÊý¾Ý¹ý¶à£¬Ò²¾ÍÊÇËùνµÄÊý¾ÝÇãб£¬×î¼òµ¥µÄ°ì·¨¾ÍÊÇÔö¼ÓshuffleµÄtaskÊýÁ¿£¬±ÈÈçÔÚSparkSQLÖÐÉèÖÃSET spark.sql.shuffle.partitions=400£¬Èç¹ûµ÷´óshuffleµÄtaskÎÞ·¨½â¾öÎÊÌ⣬˵Ã÷ÄãµÄÊý¾ÝÇãбºÜÑÏÖØ£¬Ä³Ò»¸ögroupµÄÊý¾ÝÔ¶Ô¶´óÓÚÆäËûµÄgroup£¬ÐèÒªÄãÔÚÒµÎñÂß¼­ÉϽøÐе÷Õû£¬Ô¤ÏÈÕë¶Ô½Ï´óµÄgroup×öµ¥¶À´¦Àí¡£

¡¾ÐÞ¸ÄÐòÁл¯¡¿

ʹÓÃKryoÐòÁл¯£¬ÒòΪKryoÐòÁл¯½á¹û±ÈJava±ê×¼ÐòÁл¯¸üС£¬¸ü¿ìËÙ¡£¾ßÌå·½·¨£ºspark-default.conf ÀïÉèÖÃspark.serializerΪorg.apache.spark.serializer.KryoSerializer ¡£

²Î¿¼¹Ù·½Îĵµ£¨http://spark.apache.org/docs/latest/tuning.html#summary£©£º¶ÔÓÚ´ó¶àÊý³ÌÐò¶øÑÔ£¬²ÉÓÃKryo¿ò¼ÜÒÔ¼°ÐòÁл¯Äܹ»½â¾öÐÔÄÜÏà¹ØµÄ´ó²¿·ÖÎÊÌâ¡£

¡¾Spark ´ÅÅ̵÷ÓÅ¡¿

ÔÚ¼¯Èº»·¾³Ï£¬Èç¹ûÊý¾Ý·Ö²¼²»¾ùÔÈ£¬Ôì³É½Úµã¼äÈÎÎñ·Ö²¼²»¾ùÔÈ£¬Ò²»áµ¼Ö½ڵã¼äÔ´Êý¾Ý²»±ØÒªµÄÍøÂç´«Ê䣬´Ó¶ø´ó´óÓ°ÏìϵͳÐÔÄÜ£¬ÄÇô¶ÔÓÚ´ÅÅ̵÷ÓÅ×îºÃÏȽ«Êý¾Ý×ÊÔ´·Ö²¼¾ùÔÈ¡£³ý´ËÖ®Í⣬»¹¿ÉÒÔ¶ÔÔ´Êý¾Ý×öÒ»¶¨µÄ´¦Àí£º

1. ÔÚÄÚ´æÔÊÐí·¶Î§ÄÚ£¬½«Æµ·±·ÃÎʵÄÎļþ»òÊý¾ÝÖÃÓÚÄÚ´æÖУ»

2. Èç¹û´ÅÅ̳äÔ££¬¿ÉÒÔÊʵ±Ôö¼ÓÔ´Êý¾ÝÔÚHDFSÉϵı¸·ÝÊýÒÔ¼õÉÙÍøÂç´«Ê䣻

3. SparkÖ§³Ö¶àÖÖÎļþ¸ñʽ¼°Ñ¹Ëõ·½Ê½£¬¸ù¾Ý²»Í¬µÄÓ¦Óû·¾³½øÐкÏÀíµÄÑ¡Ôñ¡£Èç¹ûÿ´Î¼ÆËãÖ»ÐèÒªÆäÖеÄij¼¸ÁУ¬¿ÉÒÔʹÓÃÁÐʽÎļþ¸ñʽ£¬ÒÔ¼õÉÙ´ÅÅÌI/O£¬³£ÓõÄÁÐʽÓÐparquet¡¢rcfile¡£Èç¹ûÎļþ¹ý´ó£¬½«Ô­ÎļþѹËõ¿ÉÒÔ¼õÉÙ´ÅÅÌI/O£¬ÀýÈ磺gzip¡¢snappy¡¢lzo¡£

¡¾ÆäËû¡¿

¹ã²¥±äÁ¿£¨broadcast£©

µ±taskÖÐÐèÒª·ÃÎÊÒ»¸öDriver¶Ë½Ï´óµÄÊý¾Ýʱ£¬¿ÉÒÔͨ¹ýʹÓÃSparkContextµÄ¹ã²¥±äÁ¿À´¼õСÿһ¸öÈÎÎñµÄ´óСÒÔ¼°ÔÚ¼¯ÈºÖÐÆô¶¯×÷ÒµµÄÏûºÄ¡£²Î¿¼¹Ù·½Îĵµhttp://spark.apache.org/docs/latest/tuning.html#broadcasting-large-variables¡£

¿ªÆôÍÆ²â»úÖÆ

ÍÆ²â»úÖÆºó£¬Èç¹û¼¯ÈºÖУ¬Ä³Ò»Ì¨»úÆ÷µÄ¼¸¸ötaskÌØ±ðÂý£¬ÍƲâ»úÖÆ»á½«ÈÎÎñ·ÖÅäµ½ÆäËû»úÆ÷Ö´ÐУ¬×îºóSpark»áѡȡ×î¿ìµÄ×÷Ϊ×îÖÕ½á¹û¡£

ÔÚspark-default.conf ÖÐÌí¼Ó£ºspark.speculation true

ÍÆ²â»úÖÆÓëÒÔϼ¸¸ö²ÎÊýÓйأº

1. spark.speculation.interval 100£º¼ì²âÖÜÆÚ£¬µ¥Î»ºÁÃ룻

2. spark.speculation.quantile 0.75£ºÍê³ÉtaskµÄ°Ù·Ö±ÈʱÆô¶¯ÍƲ⣻

3. spark.speculation.multiplier 1.5£º±ÈÆäËûµÄÂý¶àÉÙ±¶Ê±Æô¶¯ÍƲ⡣

×ܽá

SparkϵͳµÄÐÔÄܵ÷ÓÅÊÇÒ»¸öºÜ¸´ÔӵĹý³Ì£¬ÐèÒª¶ÔSparkÒÔ¼°HadoopÓÐ×ã¹»µÄ֪ʶ´¢±¸¡£´ÓÒµÎñÓ¦ÓÃÆ½Ì¨£¨Spark£©¡¢´æ´¢£¨HDFS£©¡¢²Ù×÷ϵͳ¡¢Ó²¼þµÈ¶à¸ö²ãÃæ¶¼»á¶ÔÐÔÄܲúÉúºÜ´óµÄÓ°Ïì¡£½èÖúÓÚ¶àÖÖÐÔÄÜ¼à¿Ø¹¤¾ß£¬ÎÒÃÇ¿ÉÒԺܺõØÁ˽âϵͳµÄÐÔÄܱíÏÖ£¬²¢¸ù¾ÝÉÏÃæ½éÉܵľ­Ñé½øÐе÷Õû¡£

   
3157 ´Îä¯ÀÀ       27
 
Ïà¹ØÎÄÕÂ

ÔÆ¼ÆËãµÄ¼Ü¹¹
¶ÔÔÆ¼ÆËã·þÎñÄ£ÐÍ
ÔÆ¼ÆËãºËÐļ¼ÊõÆÊÎö
Á˽âÔÆ¼ÆËãµÄ©¶´
 
Ïà¹ØÎĵµ

ÔÆ¼ÆËã¼ò½é
ÔÆ¼ÆËã¼ò½éÓëÔÆ°²È«
ÏÂÒ»´úÍøÂç¼ÆËã--ÔÆ¼ÆËã
ÈídzÎöÔÆ¼ÆËã
 
Ïà¹Ø¿Î³Ì

ÔÆ¼ÆËãÔ­ÀíÓëÓ¦ÓÃ
ÔÆ¼ÆËãÓ¦ÓÃÓ뿪·¢
CMMIÌåϵÓëʵ¼ù
»ùÓÚCMMI±ê×¼µÄÈí¼þÖÊÁ¿±£Ö¤
×îл¼Æ»®
DeepSeekÔÚÈí¼þ²âÊÔÓ¦ÓÃʵ¼ù 4-12[ÔÚÏß]
DeepSeek´óÄ£ÐÍÓ¦Óÿª·¢Êµ¼ù 4-19[ÔÚÏß]
UAF¼Ü¹¹ÌåϵÓëʵ¼ù 4-11[±±¾©]
AIÖÇÄÜ»¯Èí¼þ²âÊÔ·½·¨Óëʵ¼ù 5-23[ÉϺ£]
»ùÓÚ UML ºÍEA½øÐзÖÎöÉè¼Æ 4-26[±±¾©]
ÒµÎñ¼Ü¹¹Éè¼ÆÓ뽨ģ 4-18[±±¾©]

ר¼ÒÊӽǿ´ITÓë¼Ü¹¹
Èí¼þ¼Ü¹¹Éè¼Æ
ÃæÏò·þÎñÌåϵ¼Ü¹¹ºÍÒµÎñ×é¼þµÄ˼¿¼
ÈËÈËÍøÒÆ¶¯¿ª·¢¼Ü¹¹
¼Ü¹¹¸¯»¯Ö®ÃÕ
̸ƽ̨¼´·þÎñPaaS
Ïà¹ØÅàѵ¿Î³Ì

ÔÆ¼ÆËãÔ­ÀíÓëÓ¦ÓÃ
Windows Azure ÔÆ¼ÆËãÓ¦ÓÃ

ĦÍÐÂÞÀ­ ÔÆÆ½Ì¨µÄ¹¹½¨ÓëÓ¦ÓÃ
ͨÓù«Ë¾GE DockerÔ­ÀíÓëʵ¼ù
ijÑз¢ÖÐÐÄ Openstackʵ¼ù
ÖªÃûµç×Ó¹«Ë¾ ÔÆÆ½Ì¨¼Ü¹¹ÓëÓ¦ÓÃ
ijµçÁ¦ÐÐÒµ »ùÓÚÔÆÆ½Ì¨¹¹½¨ÔÆ·þÎñ
ÔÆ¼ÆËãÓëWindows AzureÅàѵ
±±¾© ÔÆ¼ÆËãÔ­ÀíÓëÓ¦ÓÃ