|
為什么RDD有很多種創(chuàng)建方法 因為Spark運行的介質、硬件存儲不同 Spark和Hadoop有沒有關系? 第一個RDD:代表了Spark應用程序輸入數(shù)據(jù)的來源 通過集合創(chuàng)建RDD的實際意義:測試 Hadoop+Spark目前大數(shù)據(jù)領域最有前途的組合 可以在智能設備如:手機、平板、電視上使用Spark,也可以在PC以及Server上使用Spark(只要有正常的JVM) 多線程的方式模擬分布式 local模式默認情況下如果失敗了就是失敗了,但可以重試且可以指定重試次數(shù) 在spark shell中不用重新創(chuàng)建spark context,其本身就是個spark程序,不用創(chuàng)建了 reduce是action,所以在spark shell中敲入這個后直接就會出發(fā)一個作業(yè) 沒有指定分片的話,spark看有多少個core就用多少個core 只有一個Stage,原因:reduce是action,不會產(chǎn)生RDD,不需要shuffle,所以只有一個Stage。 實際上Spark的并行度到底應該設置為多少?建議為每個core可以承載2-4個partition 剛剛的代碼創(chuàng)建的是ParallelCollectionRDD,看一下源碼 數(shù)據(jù)Block是由BlockManager管理的 從HDFS中獲取文件之后得到的MapPartitionRDD原因: 基于sql的RDD由于數(shù)據(jù)分布式存儲,所以要非常認真的寫PreferedLocation 從數(shù)據(jù)本地性上講,安裝有mysql、HBase等的服務器上也要安裝spark,但有時無法實現(xiàn),這時需要用到Tachyon |
|
|
來自: 看風景D人 > 《Spark學習總結》