在过去的几个月时间里,我们一直忙于我们所爱的大数据开源软件的下一个主要版本开发工作:Apache Spark 2.0。Spark 1.0已经出现了2年时间,在此期间,我们听到了赞美以及投诉。Spark 2.0的开发基于我们过去两年学到的:用户所喜爱的我们加倍投入;用户抱怨的我们努力提高。本文将总结Spark 2.0的三大主题:更容易、更快速、更智

w397090770   9年前 (2016-05-12) 8829℃ 2评论26喜欢

Flink

Flink batch模式多路文件输出(MultipleTextOutputFormat)

Flink batch模式多路文件输出(MultipleTextOutputFormat)
  昨天我提到了如何在《Flink Streaming中实现多路文件输出(MultipleTextOutputFormat)》,里面我们实现了一个MultipleTextOutputFormatSinkFunction类,其中封装了mutable.Map[String, TextOutputFormat[String]],然后根据key的不一样选择不同的TextOutputFormat从而实现了文件的多路输出。本文将介绍如何在Flink batch模式下实现文件的多路输出,这种模式下比较简单

w397090770   9年前 (2016-05-11) 4054℃ 3评论6喜欢

Flink

Flink Streaming中实现多路文件输出(MultipleTextOutputFormat)

Flink Streaming中实现多路文件输出(MultipleTextOutputFormat)
  有时候我们需要根据记录的类别分别写到不同的文件中去,正如本博客的 《Hadoop多文件输出:MultipleOutputFormat和MultipleOutputs深究(一)》《Hadoop多文件输出:MultipleOutputFormat和MultipleOutputs深究(二)》以及《Spark多文件输出(MultipleOutputFormat)》等文章提到的类似。那么如何在Flink Streaming实现类似于《Spark多文件输出(MultipleOutputFormat)》文

w397090770   9年前 (2016-05-10) 8269℃ 4评论7喜欢

Kafka

通过编程方式获取Kafka中Topic的Metadata信息

通过编程方式获取Kafka中Topic的Metadata信息
  如果我们需要通过编程的方式来获取到Kafka中某个Topic的所有分区、副本、每个分区的Leader(所在机器及其端口等信息),所有分区副本所在机器的信息和ISR机器的信息等(特别是在使用Kafka的Simple API来编写SimpleConsumer的情况)。这一切可以通过发送TopicMetadataRequest请求到Kafka Server中获取。代码片段如下所示:[code lang="scala"]de

w397090770   9年前 (2016-05-09) 8295℃ 0评论4喜欢

Scala

Scala模式匹配和函数组合

Scala模式匹配和函数组合
函数组合让我们来创建两个函数[code lang="scala"]scala> def f(s: String) = "f(" + s + ")"f: (String)java.lang.Stringscala> def g(s: String) = "g(" + s + ")"g: (String)java.lang.String[/code]compose方法compose组合其他函数形成一个新的函数f(g(x))[code lang="scala"]scala> val fComposeG = f _ compose g _fComposeG: (String) => j

w397090770   9年前 (2016-05-08) 37207℃ 0评论7喜欢

Spark

Spark性能优化:资源调优篇

Spark性能优化:资源调优篇
《Spark性能优化:开发调优篇》《Spark性能优化:资源调优篇》《Spark性能优化:数据倾斜调优》《Spark性能优化:shuffle调优》  在开发完Spark作业之后,就该为作业配置合适的资源了。Spark的资源参数,基本都可以在spark-submit命令中作为参数设置。很多Spark初学者,通常不知道该设置哪些必要的参数,以及如何设置这些参

w397090770   9年前 (2016-05-04) 30944℃ 8评论38喜欢

Spark

Spark性能优化:开发调优篇

Spark性能优化:开发调优篇
《Spark性能优化:开发调优篇》《Spark性能优化:资源调优篇》《Spark性能优化:数据倾斜调优》《Spark性能优化:shuffle调优》  在大数据计算领域,Spark已经成为了越来越流行、越来越受欢迎的计算平台之一。Spark的功能涵盖了大数据领域的离线批处理、SQL类处理、流式/实时计算、机器学习、图计算等各种不同类型的计

w397090770   9年前 (2016-05-04) 16863℃ 3评论45喜欢

Flink

使用Flink读取Kafka中的消息

使用Flink读取Kafka中的消息
  本文将介绍如何通过Flink读取Kafka中Topic的数据。  和Spark一样,Flink内置提供了读/写Kafka Topic的Kafka连接器(Kafka Connectors)。Flink Kafka Consumer和Flink的Checkpint机制进行了整合,以此提供了exactly-once处理语义。为了实现这个语义,Flink不仅仅依赖于追踪Kafka的消费者group偏移量,而且将这些偏移量存储在其内部用于追踪。  和Sp

w397090770   9年前 (2016-05-03) 23961℃ 1评论23喜欢

phantomjs

Linux平台下安装PhantomJS

Linux平台下安装PhantomJS
  PhantomJS是一个基于WebKit的服务器端JavaScript API,它基于BSD开源协议发布。PhantomJS无需浏览器即可实现对Web的支持,且原生支持各种Web标准,如DOM处理、JavaScript、CSS选择器、JSON、Canvas和可缩放矢量图形SVG。PhantomJS主要是通过JavaScript和CoffeeScript控制WebKit的CSS选择器、可缩放矢量图形SVG和HTTP网络等各个模块。PhantomJS主要支持Windows、M

w397090770   9年前 (2016-04-29) 4252℃ 0评论5喜欢

Flink

Flink:本地执行(Local Execution)

Flink:本地执行(Local Execution)
  Flink可以在单台机器上运行,甚至是单个Java虚拟机(Java Virtual Machine)。这种机制使得用户可以在本地测试或者调试Flink程序。本节主要概述Flink本地模式的运行机制。  本地环境和执行器(executors)运行你在本地的Java虚拟机上运行Flink程序,或者是在属于正在运行程序的如何Java虚拟机上。对于大部分示例程序而言,你只需简单

w397090770   9年前 (2016-04-27) 16475℃ 0评论19喜欢