【Flink】Basic API的核心概念 目录1.DataSet and DataStream2.Anatomy of a Flink Program(Flink程序剖析)3.Lazy Evaluation(延迟执行)4.Specifying Keys(key的定义)1.Define keys for Tuples(元组键)2.Define keys using Field Expressions(字段表达式键)...
【Flink】核心概念 目录1、Dataflow Programming Model(Dataflow编程模型)1.1、Levels of Abstraction(抽象层)1.2、Programs and Dataflows(编程和数据流)1.3、Parallel Dataflows(并行数据流图)1.4、Windows(窗口)1.5、Time(时间)1.6、Stateful Operatio...
Storm的默认配置参数 Storm的默认参数配置:在defaults.yaml文件中https://github.com/apache/storm/blob/v1.0.6/conf/defaults.yaml java.library.path: "/usr/local/lib:/opt/local/lib:/usr/lib"### storm.* configs are general configu...
【Flink】Flink集群部署与YARN集成 1、Standalone软件要求:Java 1.8.x or highersshJAVA_HOME配置You can set this variable in conf/flink-conf.yaml via the env.java.home key.Flink配置:下载解压配置:conf/flink-conf.yaml
HBase性能调优 本文就HBase的优化做一些总结,同时也借鉴了网上的一些方法,设计到从表的设计优化,读写,系统配置优化等1、表的设计优化1.1、预分区默认情况下,在创建表的时候会自动创建一个region分区,当写入数据时候,所有的HBase客户端都会往这个region写数据,直到这个region的达到设置的阈值(默认是256M,可以通过hbase.hregion.max.filesize设置)才进行s
【异常】SparkStreaming抛出Listener SQLListener threw an exception异常 问题描述SparkStreaming在长时间运行时,偶尔会出现下面的异常:2018-01-08 18:42:03 [ SparkListenerBus:32824468 ] - [ ERROR ] Listener SQLListener threw an exceptionjava.lang.IllegalStateException: Attempted to access ga
Spark中使用kyro序列化 序列化在分布式系统中扮演着重要的角色,优化Spark程序时,首当其冲的就是对序列化方式的优化。Spark为使用者提供两种序列化方式:Java serialization: 默认的序列化方式。Kryo serialization: 相较于 Java serialization 的方式,速度更快,空间占用更小,但并不支持所有的序列化格式,同时使用的时候需要注册class。spark-sql中默
【异常】SparkStreaming长时间运行出现: Dropping SparkListenerEvent because no remaining room in event queue 问题描述在SparkStreaming任务提交后,经过长时间的运行会在SparkUI的Jobs界面出现Job的执行时间出现几个小时的情况,点进去发现Stage已经处于unkown状态,如下图:查看日志后发现下面ERROR异常:2018-01-06 16:42:03 [ dag-scheduler-event-loop:600497 ] - [ ERROR ] Dropping Sp
【异常】Spark写入HBase时写入DataNode失败:dfs.client.block.write.replace-datanode-on-failure.policy 问题描述:在SparkStreaming长时间写入HBase的时候,会下面的异常问题:2017-12-24 23:20:34 [ SparkListenerBus:540107357 ] - [ ERROR ] Listener EventLoggingListener threw an exceptionjava.io.IOException: Failed to replace
【异常】elasticsearch的RestClientAPI请求超时问题:java.lang.RuntimeException: error while performing request 问题描述:在Spark中使用elasticsearch的RestClient API在读取es中数据时,出现TimeoutException,在之前的优化的中做下面的超时设置,这个只能解决request retries exceeded max retry timeout [30000]这种超时:RestClient build = RestClient.builder(httpHosts
【异常】使用Elasticsearch的REST Client的An HTTP line is larger than 4096 bytes 问题描述:在使用Elasticsearch的RestHightClient API 去搜索ES数据,当请求的参数过长的出现下面的异常:{"type":"too_long_frame_exception","reason":"An HTTP line is larger than 4096 bytes."},默认情况下ES对请求参数设置为4K,如果遇到请求参数长度限制可以在elasticse
【异常】SparkSession执行action操作时java.lang.ClassNotFoundException: org.codehaus.commons.compiler.Unchecked org.spark_project.guava.util.concurrent.ExecutionError: java.lang.NoClassDefFoundError: org/codehaus/commons/compiler/UncheckedCompileException at org.spark_project.guava.cache.LocalCache$Segment.get(LocalCache.java:2261) at org.spark_project.guava.cach
【异常】关于使用ES的RestHighLevel JavaAPI执行search操作时,参数的问题 问题描述:在使用ES的JavaRest API 的RestHighLevelClient,执行searchRequest操作时,出现部分请求参数不能识别的情况,如下:contains unrecognized parameters: [batched_reduce_size], [typed_keys]]ElasticsearchStatusException[Elasticsea
Spark Kafka(createDirectStream)自己管理offset 1、SparkStreaming中使用Kafka的createDirectStream自己管理offset在Spark Streaming中,目前官方推荐的方式是createDirectStream方式,但是这种方式就需要我们自己去管理offset。目前的资料大部分是通过scala来实现的,并且实现套路都是一样的,我自己根据scala的实现改成了Java的方式,后面又相应的实现。Dir
Spark Bulkload(Java) 1、使用Spark通过Bulkload的方式导数据到Hbase在未用Bulkload写Hbase时,使用RDD进行封装为Tuple2的KVRDD,然后通过saveAsNewAPIHadoopDataset写Hbase,非常慢,400G的数据大概写了2H+还没写完,后面没有办法就考虑使用Bulkload来导入数据。在测试之前网上很多资料都是Scala版本的,并且实现都是单个列来操作,实际
spark源码分析(2)-源码阅读环境准备 在前面介绍wordcount例子时没有对spark源码阅读环境的准备进行说明,本文就主要介绍Spark源码阅读环境的构建1、环境准备操作系统采用Ubuntu14.04(案例采用虚拟机中安装模式,桥接模式可访问外网)下载JDK1.7+,Scala2.10(spark 1.6.3之前采用的是2.10版本,spark2.0之后采用scala2.11版本),SBT,Maven3.3.9下载
Spark源码分析-以wordcount为入口进行spark-submit源码分析 1、用wordcount程序进行spark源码环境准备和程序入口1)Standalone模式启动启动Master,start-master.sh输出:/home/weiw/spark-1.6.3-bin-hadoop2.6/sbin/spark-daemon.sh start org.apache.spark.deploy.master.Master 1 --ip ubuntu