Spark spark-shell操作

    xiaoxiao2023-11-15  153

    RDD(Resilient Distributed Datasets),弹性分布式数据集,是分布式内存的一个抽象概念,RDD提供了一种高度受限的共享内存模型,即RDD是只读的记录分区的集合,只能通过在其他RDD执行确定的转换操作(如map、join和group by)而创建,然而这些限制使得实现容错的开销很低. 

    创建RDD的两种方法:

    1.并行化集合

    val data= sc.parallelize(Array(1,2,3)) 2.外部数据集

    val textFile = sc.textFile("file:///opt/word.txt")

    map(对所有的元素进行操作)函数:

    filter(过滤元素)函数:

    count(计算元素个数)函数:

    distinct(去重):

    union(并集):

    intersection(交集):

    cartesian(笛卡尔积):

     sortByKey(排序)函数:

    groupByKey(分组)函数:

     reduceByKey数据聚合函数:

     cogroup

     

     first(第一个元素):

    take(返回前几个元素):

    在/opt目录下新建文件word.txt,并输入一些内容。

    启动spark-shell

    val textFile = sc.textFile("file:///opt/word.txt")

    textFile.first()

    val wordCount = textFile.flatMap(line => line.split(" ")).map(word => (word, 1)).reduceByKey((a, b) => a + b)

    wordCount.collect()

     val rr=sc.textFile("file:///opt/word.txt").flatMap(x=>x.split(" ")).countByValue()

    上面是读取本地文件,还可以读取hdfs上面的文件 

     

    最新回复(0)