tianyaleixiaowu的专栏

世界上有10种人,一种懂2进制,一种不懂2进制

排序:
默认
按更新时间
按访问量

10 搭建Hadoop单机环境,使用spark操作Hadoop文件

前面几篇主要是sparkRDD相关的基础,也使用过textFile来操作过本机的文档。实际应用中,操作普通文档的机会不多,更多的时候是操作kafka的流和Hadoop上文件。下面我们就在本机搭建一个Hadoop环境。1 安装配置Hadoop首先下载Hadoop的压缩包,http://www.apa...

2018-04-28 10:30:46

阅读数:65

评论数:0

9 spark入门之采样、搜集部分结果sample、takeOrdered

spark提供了对结果集RDD进行随机采样,即获取一小部分数据的功能。其中有sample、takeSample、takeOrdered等方法。import org.apache.spark.api.java.JavaRDD; import org.apache.spark.api.java.Jav...

2018-04-24 14:12:25

阅读数:79

评论数:0

8 spark之基本的Action操作 first, take, collect, count, countByValue, reduce, aggregate, fold,top

转载自:https://blog.csdn.net/t1dmzks/article/details/70667011first返回第一个元素 scalascala> val rdd = sc.parallelize(List(1,2,3,3)) scala&...

2018-04-19 13:59:35

阅读数:43

评论数:0

7 spark入门键值对操作subtractByKey, join, rightOuterJoin, leftOuterJoin

转账自:https://blog.csdn.net/t1dmzks/article/details/70557249subtractByKey函数定义def subtractByKey[W](other: RDD[(K, W)])(implicit arg0: ClassTag[W]): RDD[...

2018-04-19 13:57:00

阅读数:31

评论数:0

6 spark入门键值对操作sortByKey、groupByKey、groupBy、cogroup

SortByKey从名字就能看到,是将Key排序用的。如一个PariRDD-["A":1, "C":4, "B":3, "B":5],按Key排序的话就是...

2018-04-19 10:40:57

阅读数:54

评论数:0

5 spark入门键值对foldByKey

foldByKey函数是PairRDD<K, V>对V做合并处理,方法是这样的可以看到,第一个参数是zeroValue,这个就是用来对原始的V做合并操作的,后面的参数是一个JFunction操作。对于一个PairRDD,如Array((&quot...

2018-04-18 17:14:53

阅读数:38

评论数:0

4 spark入门键值对聚合操作combineByKey

combineByKey是spark中一个核心的高级函数,其他多个键值对函数都是用它来实现的,如groupByKey,reduceByKey等等。这是combineByKey的方法。可以看到主要有三个参数,后面还有分区等参数就不管了。主要来看前三个参数,分别是createCombiner,merg...

2018-04-18 15:11:18

阅读数:21

评论数:0

2 Java8对于多线程并发的一些新支持-CompletableFuture

CompletableFuture这个类是Java8提供的Future的升级版,提供了很多多线程间实用的方法。譬如一个线程完成后执行另一个,或者两个线程完成后再执行第三个,或者一个线程执行完后传递结果给下一个线程,或者两个线程同时执行、任意一个完毕后就执行第三个而不等待另一个等等。前面有一篇使用D...

2018-04-17 16:21:10

阅读数:136

评论数:0

1 Java8对于多线程并发的一些新支持-LongAdder

我们知道AtomicLong、AtomicInteger是基于硬件级别cas实现的保证线程安全的自增类,能保证原子化的自增操作。在多线程下,性能远好于加锁synchronized。AtomicLong的实现是当多线程并发自增、自减时,通过cas指令从机器指令级别操作保证并发的原子性。制约性能的是高...

2018-04-17 12:49:09

阅读数:25

评论数:0

3 Spark入门distinct、union、intersection,subtract,cartesian等数学运算

这一篇是一些简单的Spark操作,如去重、合并、取交集等,不管用不用的上,做个档案记录。distinct去重import org.apache.spark.api.java.JavaRDD; import org.apache.spark.api.java.JavaSparkContext; im...

2018-04-16 10:18:29

阅读数:28

评论数:0

使用Java开发一个做数据共享的联盟链思路

起因公司要开发区块链,原本是想着使用以太坊开发个合约或者是使用个第三方平台来做,后来发现都不符合业务需求。原因很简单,以太坊、超级账本等平台都是做共享账本的,有代币和挖矿等模块。而我们需要的就是数家公司组个联盟,来共同见证、记录一些不可篡改的交互信息,如A公司给B公司发了一个xxx请求,B公司响应...

2018-04-16 09:46:53

阅读数:77

评论数:0

Spark——RDD操作详解

转载自:https://blog.csdn.net/zhaojw_420/article/details/53261965一、基本RDD 1、针对各个元素的转化操作 最常用的转化操作是map()和filter()。转化操作map()J接收一个函数,把这个函数用于RDD中的每一个元素,将函数的返回结...

2018-04-13 11:31:15

阅读数:49

评论数:0

2 Spark入门reduce、reduceByKey的操作

上一篇是讲map,map的主要作用就是替换。reduce的主要作用就是计算。package reduce; import org.apache.spark.api.java.JavaPairRDD; import org.apache.spark.api.java.JavaRDD; import...

2018-04-13 11:22:32

阅读数:40

评论数:0

1 Spark入门各种map的操作,java语言

Spark基本操作主要就是各种map、reduce,这一篇从各种map开始。由于scala不熟悉,而且语法太精简,虽然代码量少了,但是可读性差了不少,就还是用Java来操作。直接开始上代码了,注意,如果只是本地测试spark的各种api的使用,是不需要下载安装任何spark、Hadoop的。直接引...

2018-04-12 15:46:21

阅读数:44

评论数:0

使用Java开发一个自己的区块链产品、联盟链

开源地址:https://gitee.com/tianyalei/md_blockchainhttps://gitee.com/tianyalei/md_blockchain_managerJava区块链平台,基于Springboot开发的区块链平台。公司要开发区块链,原本是想着使用以太坊开发个合...

2018-04-11 17:07:30

阅读数:1496

评论数:0

10G mysql binlog重放并传输到另一台服务器执行,阿里中间件大赛

转载自:https://tianchi.aliyun.com/forum/new_articleDetail.html?spm=5176.11165310.0.0.90a57f61Sy5xTQ&raceId=231600&postsId=2035这个...

2018-04-08 16:25:57

阅读数:82

评论数:0

使用Disruptor完成多个消费者不重复消费消息

上一篇https://blog.csdn.net/tianyaleixiaowu/article/details/79787377里讲了Disruptor完成多个消费者并行、顺序重复消费Event。重复消费类似于kafka中,同一个topic被不同的group的消费者消费。这样的场景比较常见。当然...

2018-04-08 10:38:13

阅读数:127

评论数:0

深入浅出以太坊MPT(Merkle Patricia Tree)

转载自:https://blog.csdn.net/qq_33935254/article/details/555054721 Trie树        Trie树,又称前缀树或字典树,是一种有序树,用于保存关联数组,其中的键通常是字符串。与二叉查找树不同,键不是直接保存在节点中,而是由节点在树中...

2018-04-04 15:48:41

阅读数:116

评论数:0

使用Disruptor完成多线程下并发、等待、先后等操作

Java完成多线程间的等待功能:场景1:一个线程等待其他多个线程都完成后,再进行下一步操作(如裁判员计分功能,需要等待所有运动员都跑完后,才去统计分数。裁判员和每个运动员都是一个线程)。场景2:多个线程都等待至某个状态后,再同时执行(模拟并发操作,启动100个线程 ,先启动完的需要等待其他未启动的...

2018-04-02 13:35:30

阅读数:90

评论数:0

高性能队列Disruptor的使用

转载自:https://blog.csdn.net/nuaazhaofeng/article/details/72918467一、什么是 Disruptor从功能上来看,Disruptor 是实现了“队列”的功能,而且是一个有界队列。那么它的应用场景自然就是“生产者-消费者”模型的应用场合了。可以...

2018-03-29 11:39:27

阅读数:59

评论数:0

提示
确定要删除当前文章?
取消 删除
关闭
关闭