1.å¦ä½å¦ä¹ Spark API
å¦ä½å¦ä¹ Spark API
Sparkéç¨ä¸ä¸ªç»ä¸çææ¯å æ 解å³äºäºè®¡ç®å¤§æ°æ®çå¦æµå¤çãå¾ææ¯ãæºå¨å¦ä¹ ãNoSQLæ¥è¯¢çæ¹é¢çæææ ¸å¿é®é¢ï¼å ·æå®åççæç³»ç»ï¼è¿ç´æ¥å¥ å®äºå ¶ä¸ç»äºè®¡ç®å¤§æ°æ®é¢åçé¸ä¸»å°ä½ï¼
è¦æ³æ为Sparké«æï¼éè¦ç»åä¸ä¸é¶æ®µï¼
第ä¸é¶æ®µï¼çç»å°ææ¡Scalaè¯è¨
1ï¼ Sparkæ¡æ¶æ¯éç¨Scalaè¯è¨ç¼åçï¼ç²¾è´èä¼é ãè¦æ³æ为Sparké«æï¼ä½ å°±å¿ é¡»é 读Sparkçæºä»£ç ï¼å°±å¿ é¡»ææ¡Scala,核源单号猫网站源码ï¼
2ï¼ è½ç¶è¯´ç°å¨çSparkå¯ä»¥éç¨å¤è¯è¨JavaãPythonçè¿è¡åºç¨ç¨åºå¼åï¼ä½æ¯æå¿«éçåæ¯ææ好çå¼åAPIä¾ç¶å¹¶å°æ°¸è¿æ¯Scalaæ¹å¼çAPIï¼æä»¥ä½ å¿ é¡»ææ¡Scalaæ¥ç¼åå¤æçåé«æ§è½çSparkåå¸å¼ç¨åºï¼
3ï¼ å°¤å ¶è¦çç»ææ¡Scalaçtraitãapplyãå½æ°å¼ç¼ç¨ãæ³åãéåä¸ååçï¼
第äºé¶æ®µï¼ç²¾éSparkå¹³å°æ¬èº«æä¾ç»å¼åè API
1ï¼ ææ¡Sparkä¸é¢åRDDçå¼å模å¼ï¼ææ¡åç§transformationåactionå½æ°ç使ç¨ï¼
2ï¼ ææ¡Sparkä¸ç宽ä¾èµåçªä¾èµä»¥ålineageæºå¶ï¼
3ï¼ ææ¡RDDç计ç®æµç¨ï¼ä¾å¦StageçååãSparkåºç¨ç¨åºæ交ç»é群çåºæ¬è¿ç¨åWorkerèç¹åºç¡çå·¥ä½åçç
第ä¸é¶æ®µï¼æ·±å ¥Sparkå æ ¸
æ¤é¶æ®µä¸»è¦æ¯éè¿Sparkæ¡æ¶çæºç ç 读æ¥æ·±å ¥Sparkå æ ¸é¨åï¼
1ï¼ éè¿æºç ææ¡Sparkçä»»å¡æ交è¿ç¨ï¼
2ï¼ éè¿æºç ææ¡Sparké群çä»»å¡è°åº¦ï¼
3ï¼ å°¤å ¶è¦ç²¾éDAGSchedulerãTaskScheduleråWorkerèç¹å é¨çå·¥ä½çæ¯ä¸æ¥çç»èï¼
第åé¶çº§:ææ¡åºäºSparkä¸çæ ¸å¿æ¡æ¶ç使ç¨
Sparkä½ä¸ºäºè®¡ç®å¤§æ°æ®æ¶ä»£çé大æè ï¼å¨å®æ¶æµå¤çãå¾ææ¯ãæºå¨å¦ä¹ ãNoSQLæ¥è¯¢çæ¹é¢å ·ææ¾èçä¼å¿ï¼æ们使ç¨Sparkçæ¶å大é¨åæ¶é´é½æ¯å¨ä½¿ç¨å ¶ä¸çæ¡æ¶ä¾å¦SharkãSpark Streamingçï¼
1ï¼ Spark Streamingæ¯é常åºè²çå®æ¶æµå¤çæ¡æ¶ï¼è¦ææ¡å ¶DStreamãtransformationåcheckpointçï¼
2ï¼ Sparkç离线ç»è®¡åæåè½ï¼Spark 1.0.0çæ¬å¨Sharkçåºç¡ä¸æ¨åºäºSpark SQLï¼ç¦»çº¿ç»è®¡åæçåè½çæçææ¾èçæåï¼éè¦éç¹ææ¡ï¼
3ï¼ å¯¹äºSparkçæºå¨å¦ä¹ åGraphXçè¦ææ¡å ¶åçåç¨æ³ï¼
第äºé¶çº§:ååä¸çº§å«çSpark项ç®
éè¿ä¸ä¸ªå®æ´çå ·æ代表æ§çSpark项ç®æ¥è´¯ç©¿Sparkçæ¹æ¹é¢é¢ï¼å æ¬é¡¹ç®çæ¶æ设计ãç¨å°çææ¯çåæãå¼åå®ç°ãè¿ç»´çï¼å®æ´ææ¡å ¶ä¸çæ¯ä¸ä¸ªé¶æ®µåç»èï¼è¿æ ·å°±å¯ä»¥è®©æ¨ä»¥åå¯ä»¥ä»å®¹é¢å¯¹ç»å¤§å¤æ°Spark项ç®ã
第å é¶çº§ï¼æä¾Spark解å³æ¹æ¡
1ï¼ å½»åºææ¡Sparkæ¡æ¶æºç çæ¯ä¸ä¸ªç»èï¼