培训系列5--spark 的 RDD 的 reduce方法使用 1.spark-shell环境下准备数据 val collegesRdd= sc.textFile("/user/hdfs/CollegeNavigator.csv")val header= collegesRdd.first val headerlessRdd= collegesRdd.filter( line=>{ line!= header } ) 2.准备学生数的map val countStuMap= he…
做大数据一定要有一个概念,需要处理的数据量非常大,少则几十T,多则上百P,全部放内存是不可能的,会OOM,必须要用迭代器一条一条处理. RDD叫做弹性分布式数据集,是早期Spark最核心的概念,是一种数据集合,它的核心就是迭代器. 创建方式 有两种创建RDD的方式: 在驱动程序中并行化现有集合 引用外部存储系统中的数据集 示例1:并行化集合 val rdd = sc.parallelize(Array(1,2,3,2,3,2,5)) 示例2:引用外部文件 val file = sc.textFi…
通过hdfs或者spark用户登录操作系统,执行spark-shell spark-shell 也可以带参数,这样就覆盖了默认得参数 spark-shell --master yarn --num-executors 2 --executor-memory 2G --driver-memory 1536M 默认值得设置一般在/etc/spark/conf/spark-env.sh里面设置 一.通过array数组自动获得 1.枚举生成数组 val arr=Array(1,2,3,4,5,6,7)…
一,选择数据库,这里使用标准mysql sakila数据库 mysql -u root -D sakila -p 二.首先尝试把表中的数据导入到hdfs文件中,这样后续就可以使用spark来dataframe或者rdd来处理数据 sqoop import --connect "jdbc:mysql://host03.xyy:3306/sakila" --username root --password root --table rental --target-dir "Sqo…
We will be using the sakila database extensively inside the rest of the course and it would be great if you can follow the installation process below. Importing the Sakila Database 一. Change the File .这一步原来提供的文件中可能已经i做好了. Find and Replace all "InnoDB…
一.获得最初的数据并形成dataframe val ny= sc.textFile("data/new_york/")val header=ny.firstval filterNY =ny.filter(listing=>{ listing.split(",").size==14 && listing!=header })val nyMap= filterNY.map(listing=>{ val listingInfo=listing.…
// dataframe is the topic 一.获得基础数据.先通过rdd的方式获得数据 val ny= sc.textFile("data/new_york/")val header=ny.firstval filterNY =ny.filter(listing=>{ listing.split(",").size==14 && listing!=header }) //因为后面多是按照表格的形式来处理dataframe,所以这里增加…
一.做基础数据准备 这次使用fights得数据. scala> val flights= sc.textFile("/user/hdfs/data/Flights/flights.csv")flights: org.apache.spark.rdd.RDD[String] = /user/hdfs/data/Flights/flights.csv MapPartitionsRDD[3] at textFile at <console>:24 scala> val…
学习了之前的rdd的filter以后,这次来讲spark的map方式 1.获得文件 val collegesRdd= sc.textFile("/user/hdfs/CollegeNavigator.csv")val header= collegesRdd.first 2.通过filter获得纯粹的数据 val headerlessRdd= collegesRdd.filter( line=>{ line!= header } ) 3.查看一下实际数据格式 scala> h…
1.使用hdfs用户或者hadoop用户登录 2.在linux shell下执行命令 hadoop fs -put '本地文件名' hadoop fs - put '/home/hdfs/sample/sample.txt' hadoop fs -ls / 列出具体的文件名. hadoop fs  -get ‘/home/spark/data/*’ 从文件系统中获得数据到本地 hadoop fs -cat 查看文件内容 hadoop fs -rm -R  递归删除 hadoop fs -mv …