spark学习day(一)

spark的介绍

spark框架是如何处理数据的

Hadoop MapReduce框架

              并行计算的思想、

                     分而治之的思想

scala集合高阶函数

              处理数据的思想

                     将 要分析的数据放到集合中去,然后调用集合的高阶函数处理数据

spark是什么

Apache Spark™ is a unified analytics engine for large-scale data processing.

              统一分析引擎为海量数据处理

               统一:什么样的数据都能处理分析,什么类型的数据都可以处理,实时,离线,流式都可以

MapReduce

       map,reduce函数

       将分析的中间结果放在磁盘中,并且后续进行分析数据的时候,再次从磁盘中去读取数据,以往此往返。。。

Runs Everywhere

-a.spark要处理的数据在哪里

       hdfs/hive/HBASE/ORC/parquet/csv/tsv/jdbc/redis/mangdb/ES/…

       spark能从哪里读数据,就可以往那里写数据

b.spark程序运行在哪里

       本地模式

       集群模式

              Yarn,Standalone,mesos Cluster

spark分析数据的过程(3步骤)

    第一步、数据的读取(输入)

     将要处理的数据读取封装到一个集合RDD中(类别Scala中List列表)

              val inputRDD = sc.textFile(‘…”)

   第二步、数据处理(分析)

调用集合RDD中函数(高阶函数)进行处理分析

              RDD –>函数 ->另外一个RDD :transformation函数

              val outpuRDD = inputRDD.#(#:基本就是List中函数)

              比如:

                     map\flatMap\filter\reducebyKey

第三步、数据的输出(输出)

              调用RDD中函数,返回的不是RDD类型

              outputRDD.#  :此类型函数称为Action函数

                     foreach\count\sum\first

       3步放在一起,就是链式编程

              sc.textFile(…).transformation().action

你可能感兴趣的:(spark,spark学习day(一),spark的介绍)