SparkStreaming wordcount demo

流数据统计,将每隔10s内的数据做一次单词统计package com.streamingimport org.apache.spark.streaming._ import org.apache.spark.streaming.StreamingContext._ import org.apach...

2016-06-06 17:26:30

阅读数 625

评论数 0

SparkStreaming 删选含有error的行

筛选流数据中所有含error的行package com.streaming import org.apache.spark.SparkConf import org.apache.spark.streaming.Seconds import org.apache.spark.streaming.S...

2016-06-06 17:21:53

阅读数 559

评论数 0

SparkStreaming 打印输出demo

1.nc -lk 9999 -l 使用监听模式,管控传入的资料。 本机开启9999端口 一个server对应一个client,多了可能出问题,也就是下次起sparkstreaming任务时,必须先关了这个端口,重开 2.提交sparkstreaming任务 package com.stre...

2016-06-06 17:15:56

阅读数 3201

评论数 0

spark读取redis数据(交互式,scala单机版,java单机版)

交互式 第一步:向redis中添加数据 第二步:将jedis jar包放入~/lib目录下,开启spark服务 第三步:通过spark-shell读取redis数据,并做相应处理 scala单机版 package com.testimport org.apache.spark.Spar...

2016-05-23 11:03:16

阅读数 8835

评论数 0

SBT编译spark-redis-master

spark-redis-master是用来让spark更简单地操作redis 将源码下载后解压缩到E盘,运行sbt,下载依赖jar包 run结果出错 采用官方教程 第一步:配置git,mvn命令yum -y install git git --versionvim /etc/profi...

2016-05-23 10:58:11

阅读数 1518

评论数 0

SBT安装与编译运行

SBT下载地址 sbt-0.31.11.msi 下载后双击进行安装到某一目录下,如:C:\Program Files(x86)\sbt,在该根目录下可以看到jansi.jar、sbt.bat、sbt-launch.jar等文件。(选择workspace在D盘)环境变量配置: scala在安装...

2016-05-18 09:43:26

阅读数 4857

评论数 1

Spark SQL下的Parquet使用最佳实践和代码实战

一:Spark SQL下的Parquet使用最佳实践1,过去整个业界对大数据的分析的技术栈的Pipeline一般分为一下两种方式:A)Data Source -> HDFS -> MR/Hive/Spark(相当于ETL) -> HDFS Parquet -> SparkS...

2016-05-17 18:16:28

阅读数 9432

评论数 0

RDD与DataFrame动态转换(Java)

在企业中目前应用比较多的就是动态转换。动态的意思:是指提前不知道RDD中的每个record的列的个数,以及列的内容,只有在运行的时候才会知道,Row代表table中的一行数据。 实战代码如下:package com.dt.spark.SparkApps.sql; /** * 打印结果: ...

2016-05-17 18:01:15

阅读数 1185

评论数 1

RDD和DataFrame转换(Java+Scala)

一:RDD与DataFrame转换 1. 通过反射的方式来推断RDD元素中的元数据。因为RDD本身一条数据本身是没有元数据的,例如Person,而Person有name,id等,而record是不知道这些的,但是变成DataFrame背后一定知道,通过反射的方式就可以了解到背后这些元数据,进而...

2016-05-17 17:55:49

阅读数 8357

评论数 0

使用Java和Scala在IDE中开发DataFrame实战

使用Java和Scala两种语言实战DataFrame,创建DataFrame的时候,DataFrame可以来源于其他RDD,也可以来自于Hive表,或者其他数据来源。一般基于数据来源直接构造DataFrame。例如JSON文件,那么读取JSON文件的时候就会自动创建DataFrame。 SQ...

2016-05-17 17:50:40

阅读数 878

评论数 0

Spark SQL与DataFrame

Spark SQL与DataFrame RDD与DataFrame Spark SQL企业级最佳实践 一:Spark SQL与DataFrame 1.Spark SQL非常强大主要体现在一下几点:a) 可以处理一切存储介质和各种格式的数据(可以方便的扩展Spark SQL的功能来支持更...

2016-05-17 17:33:04

阅读数 485

评论数 0

Hive实战

Hive Web可视化 phpHiveAdmin 一:Hive的本质是什么?1,Hive是分布式数据仓库,同时又是查询引擎,所以Spark SQL取代只是Hive查询引擎,在企业实际生产环境下Hive+Spark SQL是目前最为经典的数据分析组合;2,Hive本身就是一个简单单机版本的软件,主...

2016-05-17 17:19:34

阅读数 645

评论数 0

Spark性能优化第十季之全球独家揭秘Spark统一内存管理

一:Memory Manager在Spark 1.6 版本中,memoryManager 的选择是由spark.memory.useLegacyMode=false决定的。如果采用1.6之前的模型,这会使用StaticMemoryManager来管理,否则使用新的UnifiedMemoryMana...

2016-05-17 16:53:33

阅读数 1839

评论数 0

Spark性能优化第九季之Spark Tungsten内存使用彻底解密

一:Tungsten中到底什么是Page? 1.在Spark其实不存在Page这个类的。Page是一种数据结构(类似于Stack,List等),从OS层面上讲,Page代表了一个内存块,在Page里面可以存放数据,在OS中会存放很多不同的Page,当要获得数据的时候首先要定位具体是哪个Page...

2016-05-16 15:02:03

阅读数 2680

评论数 1

Spark性能优化第八季之Spark Tungsten-sort Based Shuffle

一:使用Tungsten功能 1, 如果想让您的程序使用Tungsten的功能,可以配置: Spark.Shuffle.Manager = tungsten-sort Tungsten中文blogTungsten英文blogSpark在钨丝计划下要管理两种类型的内存存储方式:堆内和堆外...

2016-05-16 14:47:01

阅读数 692

评论数 0

Spark性能优化第七季之Spark 钨丝计划

一:“钨丝计划”产生的本质原因1,Spark作为一个一体化多元化的(大)数据处理通用平台,性能一直是其根本性的追求之一,Spark基于内存迭代(部分基于磁盘迭代)的模型极大的满足了人们对分布式系统处理性能的渴望,但是有Spark事采用Scala+Java语言编写的所以运行在JVM平台,当然JVM是...

2016-05-16 13:35:27

阅读数 1638

评论数 0

Spark性能优化第六季

一:Shuffle性能调优1,问题:Shuffle output file lost?真正的原因是GC导致的!!!如果GC尤其是Full GC产生通常会导致线程停止工作,这个时候下一个Stage的Task在默认情况下就会尝试重试来获取数据,一般重试3次每次重试的时间为5s,也就是说默认情况下15s...

2016-05-16 11:30:17

阅读数 484

评论数 0

Spark性能优化第五季

一:性能优化之数据本地性1,数据本地性对分布式系统的性能而言是一件最为重要的事情(之一),程序运行本身包含代码和数据两部分,单机版本一般情况下很少数据本地性的问题(因为数据在本地),但是对于单机版本的程序由于数据本地性有PROCESS_LOCAL和NODE_LOCAL之分,所以我们还是尽量的让数据...

2016-05-16 11:27:02

阅读数 1289

评论数 0

Spark性能优化第四季

一:Spark性能调优之序列化1,之所以进行序列化,最重要的原因是内存空间有限(减少GC的压力,最大化的避免Full GC的产生,因为一旦产生Full GC则整个Task处于停止状态!!!)、减少磁盘IO的压力、减少网络IO的压力;2,什么时候会必要的产生序列化或反序列化呢?发生磁盘IO和网络通讯...

2016-05-16 10:44:14

阅读数 929

评论数 0

Spark性能优化第三季

一:Spark程序数据结构的优化1,Java的对象:对象头是16个字节(例如指向对象的指针等元数据信息),如果对象只有一个int的property,则此时会占据20字节,也就是说对象的元数据占用了大部分的空间,所有在封装数据的时候尽量不要使用对象!例如说使用JSON格式来封装数据;2,Java中的...

2016-05-16 09:45:20

阅读数 451

评论数 0

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