SparkContext
- Driver programs 通過SparkContext對(duì)象訪問Spark
- SparkContext對(duì)象代表和一個(gè)集群的連接
- 在Shell中SparkContext自動(dòng)創(chuàng)建好了蠕嫁,就是sc
RDDs
- Resilient distributed datasets(彈性分布式數(shù)據(jù)集着帽,簡寫RDDs)
這些RDDs论悴,并行的分布在整個(gè)集群中壳嚎。 - RDDs是Spark分發(fā)數(shù)據(jù)和計(jì)算的基礎(chǔ)抽象類
- 一個(gè)RDD是一個(gè)不可改變的分布式集合對(duì)象
- Spark中,所有的計(jì)算都是通過RDDs的創(chuàng)建凌外,轉(zhuǎn)換辩尊,操作完成的
- 一個(gè)RDD內(nèi)部由許多partitions(分片)組成
分片
- 每個(gè)分片包括一部分?jǐn)?shù)據(jù),partitions可在集群不同節(jié)點(diǎn)上計(jì)算
- 分片是Spark并行處理的單元康辑,Spark順序的摄欲,并行的處理分片
RDDs的創(chuàng)建方法
1 把一個(gè)存在的集合傳給SparkContext的parallelize()方法,測(cè)試用
val rdd = sc.parallelize(Array(1,2,2,4),4)
第1個(gè)參數(shù):待并行化處理的集合疮薇,第2個(gè)參數(shù):分區(qū)個(gè)數(shù)
2 加載外部數(shù)據(jù)集
val rddText = sc.textFile("helloSpark.txt")