自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

吾心光明

我的梦

  • 博客(50)
  • 收藏
  • 关注

原创 数据库学习进阶一

一:问题的产生:在应用系统开发初期,由于开发数据库数据比较少,对于查询SQL语句,复杂视图的的编写等体会不出SQL语句各种写法的性能优劣,但是如果将应用系统提交实际应用后,随着数据库中数据的增加,系统的响应速度就成为目前系统需要解决的最主要的问题之一。系统优化中一个很重要的方面就是SQL语句的优化。对于海量数据,劣质SQL语句和优质SQL语句之间的速度差别可以达到上百倍,可见对于一个系统不是简单地能

2016-12-21 20:17:44 4617

原创 Spark数据倾斜解决原理和方法总论

本博文主要包含以下内容:1、Spark数据倾斜解决的原理方法总论 2、Spark数据倾斜解决方法总论一:均衡数据是我们的目标,或者说我们要解决数据倾斜的发力点。一般说shuffle是产生数据倾斜的主要原因,为什么shuffle产生数据倾斜主要是因为网络通信,如果计算之前通过ETL(ETL(Extract-Transform-Load的缩写,即数据抽取、转换、装载的过程)作为BI/DW(Busine

2016-09-10 12:41:05 3674

原创 Spark系列之数据倾斜:数据倾斜之痛

本博文的主要内容包括:Spark性能真正的杀手数据倾斜多么痛1、关于性能调优首先谈数据倾斜,为什么? (1)因为如果数据倾斜,其他所有的调优都是笑话,因为数据倾斜主要导致程序跑步起来或者运行状态不可用。 (2)数据倾斜最能代表spark水平的地方,spark是分布式的,如果理解数据倾斜说明你对spark运行机制了如指掌。2、数据倾斜两大直接致命性的后果: (1)、OOM,

2016-09-10 08:30:27 2019

原创 Spark Streaming生成RDD并执行Spark Job源码内幕解密

本博文主要包含以下内容:DStream产生RDD的案例实战演示DStream作为RDD模板的原理机制常见DStream生产RDD源码解密这种常见的DStream包含三种类型,一种是输入的级别的InputDStream,第二种transformationDStream,第三种输出级别的ForeachDStream。博文主要代码如下:object NetworkWordCount { def

2016-09-08 08:10:09 1428

原创 Spark Streaming源码解读之RDD生成全生命周期彻底研究和思考

本博文内容主要是 :DStream与RDD关系彻底研究Streaming中RDD的生成彻底研究 问题的提出 :   1、RDD是依靠谁产生的? 如何产生RDD?  2、执行时是否与Spark Core上的RDD执行有什么不同的  3、 运行之后对RDD要怎么处理    为什么有第三点 : 是因为Spark Streaming 中会随着相关触发条件,窗口Window滑动的时候都会不断的产生RDD

2016-09-03 10:06:29 1884

原创 Spark Streaming源码解读之JobScheduler内幕实现和深度思考

本博文内容主要包括:1、JobScheduler内幕实现 2、JobScheduler深度思考一:JobScheduler内幕实现:JobScheduler的地位非常的重要,所有的关键都在JobScheduler,它的重要性就相当于是Spark Core当中的DAGScheduler,因此,我们要花重点在JobScheduler上面。我们在进行sparkstreaming开发的时候,会对Dstre

2016-09-01 11:06:31 1108

原创 动手实战联合使用Spark Streaming、Broadcast、Accumulator计数器实现在线黑名单过滤和计数

本博文主要包括: 1、Spark Streaming与Broadcast、Accumulator联合 2、在线黑名单过滤和计数实战一、Spark Streaming与Broadcast、Accumulator联合:在企业实战中,广播本身广播到集群的时候,联合上计数器的话就有很大杀伤力,这时候你可以自定义,例如自定义广播中的内容,可以实现非常复杂的内容。之所以广播和计数器特别重要,一方面鉴于广播和

2016-08-31 17:10:45 3483

原创 Spark Streaming源码解读之Job动态生成和深度思考

本博文主要包含以下内容:1、 Spark Streaming Job 生成深度思考 2 、Spark Streaming Job 生成源码解析一 :Spark Streaming Job 生成深度思考输入的DStream有很多来源Kafka、Socket、Flume,输出的DStream其实是逻辑级别的Action,是Spark Streaming框架提出的,其底层翻译成为物理级别的Action,

2016-08-30 10:20:06 2145

原创 基于案例贯通 Spark Streaming 流计算框架的运行源码

本博文主要内容包括:1 在线动态计算分类分类最热门商品案例回顾与演示 2 基于案例贯穿Spark Streaming的运行源码一:在线动态计算分类最热门商品案例代码:import com.robinspark.utils.ConnectionPool import org.apache.spark.SparkConf import org.apache.spark.sql.Row impor

2016-08-28 10:15:09 1661

原创 使用Spark Streaming实战对网站动态行为的多维度分析

本博文主要包括以下内容: 1、技术分析 2、实现实战/** * * 论坛数据自动生成代码,该生成数据回座位Producer的方式发送给Kafka,然后通过SparkStreaming程序会从 * Kafka中在线Pull到论坛或者网站的用户在线行为信息,进而进行多维度的在线分析 * data: 日期,格式为yyyy-MM-dd * timestamp:时间戳 * userID:用户I

2016-08-27 09:48:25 2981

原创 Spark Streaming的Exactly-One的事务处理

本博文主要内容:Exactly once容错数据输出不重复一、Exactly once:1、 什么是事务处理: a) 能够处理且只被处理一次。例如,银行转账,A转给B,A有且仅转一次。 b) 能够输出,且只能够输出一次。而B接收转账,且直接收一次。Spark Streaming的事务处理和关系型数据库的事务的概念有所不同,关系型数据库事务关注的是语句级别的一致性,例如银行转账。而Spark

2016-08-26 19:54:30 998

原创 Spark Streaming 结合Spark SQL 案例

本博文主要包含以下内容:String+SQL技术实现解析Streaming+SQL实现实战一:SparkString+SparkSQL技术实现解析:使用Spark Streaming + Spark SQL 来在线计算电商中不同类别中最热门的商品排名,例如手机这个类别下面最热门的三种手机、电视 这个类别下最热门的三种电视,该实例在实际生产环境下具有非常重大的意义; 实现技术:Spark

2016-08-26 15:58:31 9015

原创 解密SparkStreaming运行机制和架构进阶之Job和容错

本博文主要包括以下内容:解密Spark Streaming Job架构和运行机制解密Spark Streaming容错架构和运行机制一、解密SparkStreaming Job架构和运行机制:理解SparkStreaming的Job的整个架构和运行机制对于精通SparkStreaming是至关重要的。我们知道对于一般的Spark应用程序来说,是RDD的action操作触发了Job的运行。那对于

2016-08-25 18:57:42 1863

原创 通过Spark Streaming的foreachRDD把处理后的数据写入外部存储系统中

本博文主要内容包括:技术实现foreachRDD与foreachPartition解析foreachRDD与foreachPartition实现实战一:技术实现foreach解析:1、首先我们看一下Output Operations on DStreams提供的API: SparkStreaming的DStream提供了一个dstream.foreachRDD方法,该方法是一个功能强大的

2016-08-25 16:03:04 11738

原创 通过案例对SparkStreaming透彻理解(2)

本博文主要内容包括:  1. Spark Streaming架构  2. Spark Streaming运行机制一、Spark Streaming的架构分析:1、SparkStreaming运行时更像SparkCore上的应用程序,SparkStreaming程序启动后会启动很多job,每个batchIntval、windowByKey的job、框架运行启动的job。例如,Receiver启动时也启

2016-08-25 08:14:14 4413

原创 通过Spark Streaming的window操作实战模拟热点搜索词案例实战

本博文主要内容包括:1、在线热点搜索词实现解析 2、SparkStreaming 利用reduceByKeyAndWindow实现在线热点搜索词实战一:在线热点搜索词实现解析背景描述:在社交网络(例如微博),电子商务(例如京东),热搜词(例如百度)等人们核心关注的内容之一就是我所关注的内容中,大家正在最关注什么或者说当前的热点是什么,这在市级企业级应用中是非常有价值,例如我们关心过去30分钟大家正

2016-08-24 08:05:29 3331

原创 通过案例对SparkStreaming透彻理解(1)

本博文主要包含内容为:1、spark streaming另类在线实验 2、瞬间理解spark streaming本质一,对SparkStreaming的深入理解:1、 首先为何从Spark Streaming切入Spark定制?Spark的子框架已有若干,为何选择Spark Streaming?Spark最开始只有Spark Core,没有目前的这些子框架。这些子框架是构建于Spark Core

2016-08-23 16:00:58 8561

原创 SparkStreaming 实现广告计费系统中在线黑名单过滤实战

本博文内容主要包括以下内容:1、在线黑名单过滤实现解析 2、SparkStreaming实现在线黑名单过滤 一、在线黑名单过滤实现解析:流式处理是现代数据处理的主流,各种电子商务网站,搜索引擎等网站等,都需要做流式比如,通过用户的点击和购买来推断出用户的兴趣爱好,后台能实时计算,这是比较重要的,给用户推荐最好的商品等,推荐更新的信息,给用户更好的服务。Spark Streaming就是Spark

2016-08-23 09:23:30 2822

原创 Spark Streaming updateStateByKey案例实战和内幕源码解密

本博文内容主要包括以下两个方面:1、Spark Streaming updateStateByKey案例实战 2、Spark Streaming updateStateByKey源码解密一、Spark Streaming updateStateByKey简介:updateStateByKey的主要功能是随着时间的流逝,在Spark Streaming中可以为每一个可以通过CheckPoint来维护

2016-08-22 17:30:23 1666

原创 SparkStreming中的Transformations和状态管理

本博文内容主要包括:1、SparkStreaming 中的Transformations 2、SparkStreaming 中的状态管理一:SparkStreaming中的Transformation: 1、DStream就是一个RDD之上的一个抽象,DStream和时间结合起来就不断的触发产生RDD的实例,可以说我们对Dstream的操作就初步定义了对RDD的操作,只不过需要时间的间隔也就是i

2016-08-22 15:48:18 1351

原创 Spark Streaming基于kafka的Direct详解

本博文主要包括一下内容: 1,SparkStreaming on Kafka Direct工作原理机制 2,SparkStreaming on Kafka Direct 案例实战 3,SparkStreaming on Kafka Direct源码解析一:SparkStreaming on Kafka Direct工作原理机制:1、Direct方式特点:(1)Direct的方式是会直接操作ka

2016-08-22 11:30:57 14990 3

原创 Spark streaming基于kafka 以Receiver方式获取数据 原理和案例实战

本博文讲述的内容主要包括:1,SparkStreaming on Kafka Receiver 工作原理机制 2,SparkStreaming on Kafka Receiver案例实战 3,SparkStreaming on Kafka Receiver源码解析一:SparkStreaming on Kafka Receiver 简介:1、Spark-Streaming获取kafka数据的两种

2016-08-21 22:33:52 4549 1

原创 Spark Streaming on Kafka解析和安装实战

本博文内容主要包括以下几点:1、Kafka解析; 2、Kafka的安装和实战。一、Kafka的概念、架构和用例场景:1、Kafka的概念: Apache Kafka是分布式发布-订阅消息系统。 它提供了类似于JMS的特性,但是在设计实现上完全不同,此外它并不是JMS规范的实现。Kafka是一种快速、可扩展的、设计内在就是分布式的,分区的和可复制的提交日志服务。

2016-08-21 11:41:59 2382

原创 Spark Streaming从Flume Poll数据案例实战和内幕源码解密

本博文内容主要包括以下几点内容: 1、Spark Streaming on Polling from Flume实战 2、Spark Streaming on Polling from Flume源码一、推模式(Flume push SparkStreaming)与拉模式(SparkStreaming poll Flume)比较 :采用推模式:推模式的理解就是Flume作为缓存,存有数据。监听对

2016-08-20 19:40:01 2234

原创 Flume推送数据到SparkStreaming案例实战和内幕源码解密

本博文内容主要包含以下几个方面:Flume on HDFS案例回顾Flume推送数据到Spark Streaming实战原理绘图剖析一:Flume on HDFS 案例回顾: 文件配置在上篇博文中已经详细介绍,接下来的操作基于已经成功安装完成Flume:拷贝conf/flume-conf.properties.template,更名为conf/flume-cong.properties,只

2016-08-20 17:14:12 1306

原创 SparkStreaming数据源Flume的安装配置及应用分析

**本博文主要内容包括两大方面: 1,Flume的安装配置 2,Flume的简要介绍**一:Flume的安装配置:(1) 首先下载Flume,下载地址如下:http://www.apache.org/dyn/closer.lua/flume/1.6.0/apache-flume-1.6.0-bin.tar.gz(2)下载完之后直接在你的集群解压即可,这里我解压到/usr/local/flume

2016-08-19 17:11:10 857

原创 基于HDFS的SparkStreaming案例实战和内幕源码解密

本博文主要阐述基于HDFS的 Spark Streaming简单操作: 一:集群操作前步骤主要包括: (1)启动Hadoop HDFS如下图所示(底下的图是在master:50070界面监测): 出现上图所示证明启动成功 (2)启动Spark集群,如下图所示(底下图是在master:8080界面监测): (3)启动start-history-server

2016-08-19 15:33:11 1556

原创 StreamingContext、DStream、Receiver深度剖析

本博文主要有一下内容: (1)对StreamingContext功能及源码剖析; (2)对DStream功能及源码剖析; (3)第三部分对Receiver功能及源码剖析; (4)将StreamingContext、DStream、Receiver结合起来分析其流程。一、StreamingContext功能及源码剖析: 1、 通过StreamingContext对象jssc,创建应用程序主

2016-08-18 19:54:34 1518

原创 Scala和Java二种方式实战Spark Streaming开发

在这里我主要借鉴课上老师讲的以及官网的API来进行简单的Spark Streaming的开发:一:java形式:1.我们可以总结一下步骤:第一步:创建SparkConf对象 第二步:创建SparkStreamingContext 第三步:创建爱你SparkStreaming输入数据来源(我们将数据源配置为本地端口9999(要求端口没有被占用)) 第四步:我们就像对RDD编程一样,基于DStre

2016-08-18 16:12:47 4036

原创 Spark Streaming Hello World案例动手实战其工作原理

本博客主要包含以下内容: 1、Spark Streaming 动手实战演示 2、闪电般理解Spark Streaming原理 3、案例动手实战并在电光石火间理解其工作原理在当今大数据时代为数据流处理,日常工作、生活中数据来源很多不同的地方。例如:工业时代的汽车制造、监控设备、工业设备会产生很多源数据;信息时代的电商网站、日志服务器、社交网络、金融交易系统、黑客攻击、垃圾邮件、交通监控等;通信时

2016-08-18 11:54:48 837

原创 Scala的包,继承复写之编程进阶(8)

本篇文章主要简介Scala的包,继承复写:abstract class Person{ val counter : Int val counterArray = new Array[Int](counter)}class Sporter extends Person{ override val counter = 5}class Programmer(val name : Stri

2016-08-16 20:42:14 731

原创 Scala隐式( implicit)编程彻底实战之编程进阶(7)

一:隐式详解1:概念: 隐式(implicit)是Scala的一个强大特性,同时也是一个可能存在正义的特性。使用隐式能够减少代码,能够向已有类型中注入新的方法,也能够创建领域特定语言(DSL)。 隐式之所以产生争议,是因为除了通过Predef对象自动加载的哪些隐式对象外,其他在源码中出现的隐式对象均不是本地对象。隐式对象一旦进入作用域,编译器便能执行该隐式对象以生成方法参数或

2016-08-16 20:20:23 5297

原创 Mevan的安装配置(二)

一:Mevan从下载到安装详情: 环境准备工作 java开发环境(JDK) maven下载地址:http://maven.apache.org/download.cgi 下载之后解压出现下图所示说明下载成功: 接下来进行安装:(1)进行环境变量准备,如下图所示: 这里同Java的配置类似 (2)进行安装成功检验:

2016-08-15 11:35:27 3068

原创 Mevan的简介 (一)

一:简介(1)官网的简介:Maven是基于项目对象模型(POM即Project Object Model),可以通过一小段描述信息来管理项目的构建,报告和文档的软件项目管理工具。(2)Mevan下载地址为:http://maven.apache.org/index.html(3)Mevan的意义:现在,Maven,成为了一种被用于构建和管理任何基于Java项目的工具。Maven创始者希望能够更多

2016-08-15 10:34:53 1846

原创 Scala 提取器与注解深度解析之编程进阶(6)

本篇博客主要分为两部分:一:提取器 二:注解一 :提取器理论: 所谓提取器就是一个带有unapply方法的对象。你可以吧unapply方法当做是半生对象中apply方法的反向操作。 (1)apply方法接受构造参数,然后将他们变成对象。 (2)而unapply方法接受一个对象,然后从中提取值——通常这些值就是当初用来构造该对象的值。@DTCoder(nam

2016-08-13 20:37:42 1474

原创 Scala偏函数、异常、Lazy值编码之编程进阶(5)

本篇文章主要讲述Scala函数式编程之偏函数,异常,及Lazy。一:偏函数(Partial)定义 偏函数:当函数有多个参数,而在使用该函数时不想提供所有参数(比如函数有3个参数),只提供0~2个参数,此时得到的函数便是偏函数。object HelloPartialFunction { def main(args: Array[String]): Unit = { val sample

2016-08-12 19:57:22 784

原创 Scala 类型系统实战之编程进阶(4)

本篇文章主要通过实例来介绍Scala中类型系统的应用:/* * Scala类型系统编程实战 * 1,Scala的类和方法,函数都可以是泛型,在Spark源码中可以到处看见类和方法的泛型在实际实例化的时候指定类型,例如Spark最核心,最基础,最重要的抽象数据结构RDD里面的类的定义是泛型的,RDD几乎多有的定义都是泛型的,之多以这样做是因为RDD会派生很多子类,通过子类适配了各种不同的数据源以及

2016-08-05 09:32:52 463

原创 Scala 容器与类型系统之编程进阶(3)

本篇博客主要介绍Scala中容器的使用以及类型系统的使用语法:1.Scala 容器的使用/*Scala的集合体系中Iterable是共同的Trait,Iterable要继承实现一些共同的方法,例如对元素的遍历Array是一个非常基础的数据结构,不从属于Scala集合体系Scala集合体系中集合分为可变集合和不可变集合之分;不可变集合在scala.collection.immutable中可变集合在

2016-08-05 08:56:08 589

原创 Scala 模式匹配之编程进阶(2)

本篇文章主要采用实际例子来说明Scala的模式匹配问题:package com.dt.sparkApps.sql//模式匹配的类准备 class DataFrameWork case class ComputationFrameWork(name : String, popular : Boolean) extends DataFrameWork case class StorageFrame

2016-08-04 19:17:00 483

原创 Scala 函数式编程进阶 (1)

一,Scala函数式编程有如下几个特点:**1,函数和变量一样,函数可以直接赋值给变量 2,函数更长使用的方式是匿名函数的方式,定义的时候需要说明输入参数的类型和类型体即可,不需要名称,但如果你要使用的话一般赋值给变量。 3,函数可以作为参数直接传递给函数 4,函数式编程非常强大的地方之一在于:函数的返回值可以是函数。当函数的返回值是函数的时候这时候表明Scala函数实现了闭包!(Scala闭

2016-08-01 20:09:45 649

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

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