- 博客(17)
- 资源 (252)
- 收藏
- 关注
原创 MapReduce当中全局变量的用法
全局变量:马克-to-win @ 马克java社区:如想传递变量,程序可以在main函数中,利用Congfiguraion类的set函数将一些简单的数据结构放到到Congfiguraion中,map或reduce task任务启动的过程中(比如setup函数)通过Configuration类的get函数读取即可。一切的代码和上面都一样,只是加了一个全局变量的特性。package com;impor...
2019-06-02 09:40:57 1000
原创 通过剖析源码单步调试详解MapReduce分组group遍历
通过剖析源码单步调试详解MapReduce分组group遍历:马克-to-win @ 马克java社区:mapreduce的group知识点是最难理解的,本小节将通过仔细剖析源码,单步调试,来详解之。另外注意:数据文件写时一定注意:结尾不能有回车和空格,通过在map里面加断点,F8(resume),一轮一轮,调试一行一行的数据,才发现最后一行数据出毛病了,只有是多了一个换行符的毛病。 packag...
2019-06-02 09:40:45 210
原创 MapReduce当中自定义输出:多文件输出MultipleOutputs
自定义输出:多文件输出MultipleOutputs马克-to-win @ 马克java社区:对于刚才的单独订单topN的问题, 如果需要把单独的订单id的记录放在自己的一个文件中,并以订单id命名。怎么办?multipleOutputs可以帮我们解决这个问题。注意:和我们本章开始讲的多文件输出不一样的是,这里的多文件输出还可以跟程序的业务逻辑绑定在一起,比如文件的名字和订单有关系。 multi...
2019-06-02 09:40:36 395
原创 DBOutputFormat把MapReduce结果输出到mysql中
DBOutputFormat把MapReduce结果输出到mysql中现在有一个需求:就是如何使用DBOutputFormat把MapReduce产生的结果输出到mysql中。package com;import java.io.File;import java.io.IOException;import java.sql.PreparedStatement;import java.sql.Res...
2019-06-02 09:40:23 322
原创 MapReduce当中map端做join
map端做join马克-to-win @ 马克java社区:map端做join和reduce端做join有何区别?我们前面讲的是Reduce端join,因为Reduce端join需要把所有的数据都经过Shuffle,非常消耗资源,效率要远远低于Map端join。Map端join是指只有map工作,reduce不工作,这样可以有效的避免数据倾斜。马克-to-win @ 马克java社区:什么叫数据...
2019-06-02 09:40:10 261
原创 MapReduce当中什么叫数据倾斜(data skew)?
马克-to-win @ 马克java社区:什么叫数据倾斜(data skew)?假如,你有两个reduce节点,数据都跑到第一个节点,(比如p_id=p1的数据非常多)第二个节点没什么数据, 结果第一个节点,工作完成总是卡在99.99%,一直99.99%不能结束。 更多请见下节:https://blog.csdn.net/qq_44594249/article/details/97542408 ...
2019-06-02 09:39:59 1098
原创 MapReduce当中寻找用户间的共同好友
寻找用户间的共同好友马克-to-win @ 马克java社区:下面我们给出一个经典的案例:寻找用户间的共同好友。(有意思的是:网上讨论这个案例的虽多,但都有这那的错误,不是数据错就是程序错, 总有同学和我比对,实际和我的是不一样的)马克-to-win @ 马克java社区:下面给出用户的好友关系列表(注意是单向的, 单向的好友意味着,你是别人的好友,别人可能不是你的好友),每一行代表一个用户和他的...
2019-06-02 09:39:47 419
原创 MapReduce当中topN问题的解决方法
topN问题:马克-to-win @ 马克java社区:防盗版实名手机尾号:73203。topN问题就是输出每组中最大的一个或几个。为什么说是一个或几个呢?因为输出一个或者输出几个的算法是一样的。我们下面以输出一个为例子,做一个示范。6个订单如下:o1,p2,250.0o2,p3,500.0o2,p4,100.0o2,p5,700.0o3,p1,150.0o1,p1,200.0求出每个订单中最高...
2019-06-01 09:57:57 774
原创 MapReduce当中排序sort的方法
排序sort:马克-to-win @ 马克java社区:防盗版实名手机尾号:73203。注意:想自己实现Sort得不偿失,但如想借助Hadoop MapReduce技术框架排序,key必须实现WritableComparable接口。具体做法见下。需求是先按id比,再按amount比。package com;import org.apache.hadoop.io.WritableComparabl...
2019-06-01 09:57:41 661
原创 Spark Scala当中reduceByKey的用法
/*reduceByKey(function) reduceByKey就是对元素为KV对的RDD中Key相同的元素的Value进行function的reduce操作(如前所述),因此,Key相同的多个元素的值被reduce为一个值,然后与原RDD中的Key组成一个新的KV对。 reduceByKey(_+_)是reduceByKey((x,y) => x+y)的一个 简洁的形式 */ ...
2019-06-01 09:56:52 2416
原创 Spark Scala当中reduceByKey(_+_) reduceByKey((x,y) => x+y)的用法
马克-to-win@ 马克java社区:reduceByKey(_+_)是reduceByKey((x,y) => x+y)的一个 简洁的形式 */ val rdd08 = sc.parallelize(List((1, 1), (1, 4),(1, 3), (3, 7), (3, 5))) val rdd08_1 = rdd08.reduceByKey((x, y) =...
2019-06-01 09:55:29 2211
原创 Spark和Scala当中的collect方法的用法和例子
/*马克-to-win @ 马克java社区:collect: 收集一个弹性分布式数据集的所有元素到一个数组中,这样便于我们观察,毕竟分布式数据集比较抽象。Spark的collect方法,是Action类型的一个算子,会从远程集群拉取数据到driver端。最后,将大量数据 汇集到一个driver节点上,将数据用数组存放,占用了jvm堆内存,非常用意造成内存溢出,只用作小型数据的观察。*/ ...
2019-06-01 09:55:14 6684
原创 Win7 Eclipse 搭建spark java1.8(lambda)环境:WordCount helloworld例子
Win7 Eclipse 搭建spark java1.8(lambda)环境:WordCount helloworld例子 马克-to-win @ 马克java社区:lambda表达式是java8给我们带来的一个重量的新特性,借用lambda表达式可以让我们的程序设计更加简洁。 package com; import org.apache.spark.SparkConf; import org.a...
2019-06-01 09:36:52 185
原创 System memory 259522560 must be at least 4.718592
/*没有下面的话,会报一个错误,java.lang.IllegalArgumentException: System memory 259522560 must be at least 4.718592E8(470M). Please use a larger heap size.这是memory不够,导致无法启动SparkContext*/ conf.set("s...
2019-06-01 09:36:34 289
原创 Win7 Eclipse 搭建spark java1.8环境:WordCount helloworld例子
Win7 Eclipse 搭建spark java1.8环境:WordCount helloworld例子马克-to-win @ 马克java社区:在eclipse oxygen上创建一个普通的java项目,然后把spark-assembly-1.6.1-hadoop2.6.0.jar这个包导进工程就ok了。只要启动start-dfs,下面的程序就可以运行了。package com;import ...
2019-06-01 09:28:04 302
原创 Win7 Eclipse 搭建spark java1.8编译环境,JavaRDD的helloworld例子
Win7 Eclipse 搭建spark java1.8编译环境,JavaRDD的helloworld例子:马克-to-win @ 马克java社区:在eclipse oxygen上创建一个普通的java项目,然后把spark-assembly-1.6.1-hadoop2.6.0.jar这个包导进工程就ok了。package com;import java.util.Arrays;import j...
2019-06-01 09:27:21 299
原创 Windows Eclipse Scala编写WordCount程序
Windows Eclipse Scala编写WordCount程序:1)马克-to-win @ 马克java社区:无需启动hadoop,因为我们用的是本地文件。先像原来一样,做一个普通的scala项目和Scala Object。但这里一定注意版本是2.10.6,因为缺省的不好使。改的方法是:右击项目/properties/Scala Compiler.2)像spark的java版WordCoun...
2019-06-01 09:19:14 224
把过去找大数的作业改编成放在现在的类里2---马克-to-win Java视频
2018-08-04
把过去找大数的作业改编成放在现在的类里1---马克-to-win Java视频
2018-08-04
String3.1-java堆和栈---马克-to-win Java视频
2018-08-04
DataSource的单态模式(SingleTon)程序---马克-to-win java视频
2018-07-06
DataSource的HelloWorld程序---马克-to-win java视频
2018-07-06
PreparedStatement 马克-to-win java视频
2018-07-06
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人