• 2020/10/25 11:32:54
  • Post By 高景洋
sortByKey: 按Key进行排序 示例代码: def my_sortByKey(): data = [''hello spark'', ''hello world'', ''hello world''] rdd = sc.parallelize(data) map_rdd = rdd.flatMap(lambda line: line.split('' '')).map(lambda x: (x, 1)) reduce_by_key = map_rdd.reduceByKey(lambda a,b:a+b) sort_by_rdd = reduce_by_key.map(lambda x:(x[1],x[0])) print(sort_by_rdd.sortByKey().map(lambda x:(x[1],x[0])).collect()) 输出
查看全文 | 浏览次数(85)
  • 2020/10/25 10:50:56
  • Post By 高景洋
reduceByKey: 按key 分组,并进行计算 示例代码: 统计RDD中,每个单词出现的次数: def my_reduceByKey(): data = [''hello spark'', ''hello world'', ''hello world''] rdd = sc.parallelize(data) map_rdd = rdd.flatMap(lambda line: line.split('' '')).map(lambda x: (x, 1)) reduce_by_key = map_rdd.reduceByKey(lambda a,b:a+b) print(reduce_by_key.collect()) 输出结果: [(''hello'', 3), (''spark'', 1), (''world'', 2)]
查看全文 | 浏览次数(63)
  • 2020/10/25 10:39:47
  • Post By 高景洋
groupByKey(): 分组统计 示例代码: def my_groupByKey(): data = [''hello spark'', ''hello world'', ''hello world''] rdd = sc.parallelize(data) map_rdd = rdd.flatMap(lambda line:line.split('' '')).map(lambda x:(x,1)) group_by_rdd = map_rdd.groupByKey() print(group_by_rdd.collect()) result_rdd = group_by_rdd.map(lambda x:{x[0]:list(x[1])}) print(result_rdd.collect()) 输出结果: (''hello'', <pyspark.
查看全文 | 浏览次数(62)
  • 2020/10/25 10:19:18
  • Post By 高景洋
flatmap(func): 1、输入的item能够map到0 或 多个输出,返回值是一个Sequence 示例代码: 实现rdd中的每个数据,按 空格 拆分,并输出 def my_flatMap(): data = [''hello spark'',''hello world'',''hello world''] rdd = sc.parallelize(data) rdd2 = rdd.flatMap(lambda line:line.split('' '')).collect() print(rdd2) 输出结果: [''hello'', ''spark'', ''hello'', ''world'', ''hello'', ''world'']
查看全文 | 浏览次数(60)
  • 2020/10/25 10:09:44
  • Post By 高景洋
filter(func): 1、选出所有func返回值为true的元素,生成一个新的分布式数据集返回 如图: 示例代码: 实现 Rdd ,每个元素*2,并输出结果>5的数据 def my_filter(): data = [1,2,3,4,5] rdd1 =sc.parallelize(data) map_rdd = rdd1.map(lambda x:x*2) print(map_rdd.collect()) filter_rdd = map_rdd.filter(lambda x:x>5) print(filter_rdd.collect()) #链示实示方式 #sc.parallelize(data).map(lambda x:x*2).filter(lambda x:x>5).collect()
查看全文 | 浏览次数(65)
  • 2020/10/25 9:49:46
  • Post By 高景洋
map(func): 1、将func作用到数据集的每一个元素上,生成一个新的数据集并返回 2、map操作,相当于将RDD中每个Partition,中的每一个数据,都作用上一个相同的操作 如图: 示例代码: 实现,将某个RDD中的数据+1。 def func_for_map(x): return x+1 def my_map3(): conf = SparkConf().setMaster(''local[5]'').setAppName(''sparkTest'') sc = SparkContext(conf=conf) a = sc.parallelize([1,2,3,4,5,6,7]) b = a.map(lambda x:func_for_map(x)) print(b.collect()) sc.stop() 结果输出:[2
查看全文 | 浏览次数(55)
  • 2020/10/23 12:15:57
  • Post By 高景洋
一、安装Spark 的前置条件 1、Java Jdk 安装 2、Hadoop 安装 安装方式,见:mac OS hadoop伪分布安装教程 二、安装scala 1、执行命令:brew install scala,执行完成即可完成 scala 的安装 三、Spark 下载 下载地址:http://spark.apache.org/downloads.html 我们选择版本:spark-3.0.1-bin-hadoop3.2,因为安装的hadoop 版本为 3.2.1 四、安装Spark 1、解压 tar -zxvf spark-3.0.1-bin-hadoop3.2.tgz 2、将目录移到 /usr/local/spark3.0.1 目录下 执行命令 sudo mv /Users/jasongao/Document
查看全文 | 浏览次数(68)
  • 2020/10/23 11:55:01
  • Post By 高景洋
一、需要进行hadoop伪分布安装的本机环境 系统版本:MacOS Catalina 10.15.1 二、Java JDK 安装 java jdk 版本:1.8.0_211 链接: https://pan.baidu.com/s/1AI4rfQAkZlrvbC5JUkPYVg 提取码: q945 三、开通ssh 1、屏幕左上角-''苹果小图标''-''系统偏好设置''-''共享'' 四、免密码登录 1、创建密钥匙 执行命令:ssh-keygen -t rsa -P '''' -f ~/.ssh/id_rsa 一路回车, 最终会在~/.ssh目录生成id_rsa和id_rsa.pub文件 2、将密钥放在ssh授权目录,目的是免除ssh登陆密码 执行命令:cat ~/.ssh/id_rsa.pub >>
查看全文 | 浏览次数(77)
  • 2020/10/17 22:00:56
  • Post By 高景洋
以下绿色部分即为nginx.conf 301 配置规则 server { listen 80; server_name www.xp5.cn; ------------------------------ # 重定向301跳转 if ($host != ''www.xp5.cn'' ){ rewrite ^/(.*)$ http://www.xp5.cn/$1 permanent; } ------------------------------- #charset koi8-r; #access_log logs/host.access.log main; location / { ******** } #error_page 404 /404.html; # redirect server error pages to t
查看全文 | 浏览次数(52)
  • 2020/10/17 17:42:29
  • Post By 高景洋
1、在控制台执行 mysql -u root -p 系统提示输入数据库 root 用户的密码,输入完成后即进入 mysql 控制台 2、选择数据库 use mysql; 开启远程连接 执行以下两个脚本: GRANT ALL PRIVILEGES ON *.* TO ''root''@''%'' IDENTIFIED BY ''password'' WITH GRANT OPTION; FLUSH PRIVILEGES; 3、重起 MySQL 服务 service mysqld restart 4、如果执行完以上步骤,还是不能远程连接,那么我们需要查看服务器的防火墙是否开启 service iptables status; service iptables stop;
查看全文 | 浏览次数(51)
相关文章
友情链接
支付宝打赏(内容对您有帮助的话)
微信交流
知乎编程经验网 - 在工作中总结编程的经验! 备案/许可证编号:鲁ICP备11020152号
QQ:120217215 联系电话:15192695151