- 博客(25)
- 资源 (3)
- 收藏
- 关注
原创 第110课: Spark Streaming电商广告点击综合案例通过updateStateByKey等实现广告点击流量的在线更新统计
1:UpdateStatebyKey,遵循RDD的不变性,采用cogroup的方式,cogroup就是按照key对value进行聚合操作,在历史的基础上不断的更新,不会造成内存溢出等情况,而且它对数据的保存时同时内存和磁盘的方式,,每次操作的时候都要进行全量的扫描。所以这个时候,随着时间的进行,性能会越来越差。可能说开始的时候spark streaming对每个batch的处理通过updateSt
2016-05-30 21:33:01 1458
原创 第109讲: Spark Streaming电商广告点击综合案例动态黑名单基于数据库MySQL的真正操作代码实战
package com.dt.streaming;import java.sql.Connection;import java.sql.DriverManager;import java.sql.PreparedStatement;import java.sql.ResultSet;import java.sql.SQLException;import java.util.Array
2016-05-28 09:21:17 2062 2
原创 第108讲: Spark Streaming电商广告点击综合案例动态黑名单过滤真正的实现代码
package com.dt.streaming;import java.sql.Connection;import java.sql.DriverManager;import java.sql.PreparedStatement;import java.sql.ResultSet;import java.sql.SQLException;import java.util.HashM
2016-05-25 07:04:49 2075 1
原创 第107课: Spark Streaming电商广告点击综合案例底层数据层的建模和编码实现(基于MySQL)
1:传统的关系型数据库都是伪分布式,在100个使用了底层数据持久化层的案例中,至少有90个底层都是基于数据库的。当然可以选择基于Hbase或者Redis,但是实际上大多数人底层都会基于数据库。因为1,数据库可以非常高效的读写,尤其频繁的批量的插入,数据库特别适合。2,传统的it系统大多数都是基于数据库,所以spark处理的结果,如果仍给了数据库,传统的javaee系统例如spring,这些系统可以
2016-05-24 07:16:31 1243
原创 第106讲: Spark Streaming电商广告点击综合案例黑名单过滤实现
package com.dt.streaming;import java.util.Arrays;import java.util.HashMap;import java.util.HashSet;import java.util.Iterator;import java.util.Map;import java.util.Set;import org.apache.spark.
2016-05-23 22:34:48 1393
原创 第105讲 Spark Streaming电商广告点击综合案例在线点击统计实战项目第一天
本讲的目标是广告点击流进来,我们对它进行统计。首先实现对数据进行统计,后续十讲我们再做其它操作。1:spark用scala开发,只能用java与数据库交互,用Hbase交互的时候,Spark在线上生产环境与Hbase交互的时候,也是用java交互。等,应该国内大多数情况下还是使用java。而scala更多是为spark 内核服务,要求精通scala,估计主要不是为了开发项目,而是为了研究和改造
2016-05-23 06:42:10 2595 1
原创 第104讲: Spark Streaming电商广告点击综合案例需求分析和技术架构
本讲内容:对京东等电商网站对广告点击行为进行分析,具体我们有哪些需求点,我们初步的技术架构是什么样的。1:广告点击系统实时分析:广告来自于网站或者移动App等,广告需要设定在具体的广告位,当用户点击广告的时候,一般都会通过JavaScript、Ajax或者Socket往后台发送点击的日志数据,在这里我们是要基于Spark Streaming做实时在线统计,那么数据就需要放进消息系统(Kaf
2016-05-22 21:16:34 2387
原创 第103讲: 动手实战联合使用Spark Streaming、Broadcast、Accumulator实现在线黑名单过滤和计数
1:广播可以自定义,例如你自定义广播里面的内容,就有很多你可以自定义的操作。尤其是结合了Broadcast和Accumulator的时候,他可以实现一些非常复杂的功能。2:广播和计数器在企业的实际开发中,非常重要,主要是可以自定义,自定义的时候可以实现非常复杂的逻辑。计数器Accumulator可以计数黑名单。黑名单数据可以写在广播里面3:下面直接上代码,当然,这只是初步的使用,广播和计算
2016-05-22 17:13:04 1861
原创 第102讲: 动手实战Spark Streaming自定义Receiver并进行调试和测试
1:SparkStreaming虽然说已经支持了很多不同类型的数据来源。但是有时候可能我们的一些数据来源非常特殊 ,不是它天然默认支持的,这时候就要自定义Receiver。而自定义Receiver,一般都是基于网络的方式。因为你传数据的话,一般是从另外一个网络端口传过来,至于传的协议是另外一码事。2:从本质上来说,SparkStreaming中的所有Receiver,都是自定义的Receive
2016-05-22 13:41:13 2939
原创 第101讲: 使用Spark Streaming企业实际数据处理流水线完整声明周期
1:kafka直接也可以监控一个文件夹,但是为什么我们采用flume的方式,通过flume把文件传给kafka,而不直接通过kafka去监控一个文件夹呢?1)flume可以搜集分布式的日志2)kafka直接读取文件,默认情况下,kafka要求文件格式是json格式。而数据很多情况下都不是json格式。这样就会崩溃。当然自定义一个读取器。所以kafka生产环境下很少去读文件,它就是直接收放消
2016-05-22 11:35:21 1439
原创 第99讲:使用sparkStreaming实战对论坛网站动态行为的多维度分析下
/* * 第99讲,消费者消费SparkStreamingDataManuallyProducerForKafka类中逻辑级别产生的数据,这里pv,uv,注册人数,跳出率的方式 */package com.dt.streaming;import java.util.HashMap;import java.util.HashSet;import java.ut
2016-05-19 07:19:20 1663
原创 第98讲 使用Spark Streaming实战对论坛网站动态行为的多维度分析(上)
package com.dt.streaming;import java.text.SimpleDateFormat;import java.util.Date;import java.util.Properties;import java.util.Random;import kafka.javaapi.producer.Producer;import kafka.produce
2016-05-16 20:44:09 1094
原创 第97讲:使用Spark Streaming+Spark SQL来在线动态计算电商中不同类别中最热门的商品排名,
package com.dt.streamingimport org.apache.spark.SparkConfimport org.apache.spark.sql.Rowimport org.apache.spark.sql.hive.HiveContextimport org.apache.spark.sql.types.{IntegerType, StringType, Str
2016-05-15 22:56:03 1339
原创 第96讲 通过Spark Streaming的foreachRDD把处理后的数据写入外部存储系统(数据库)中
1:写到外部数据源,表面上看是spark去写,实际上就是jvm去操作。jvm写数据库,spark streaming就可以写数据库。jvm如果能写到Hbase或者Redius中,Spark也能。2:spark streaming中我们使用Dstream.foreachRDD(),来把Dstream中的数据发送到外部的文件系统中,外部文件系统主要是数据库,Hbase,Redius,数据库比较少量
2016-05-15 20:14:38 3707
原创 第95讲:使用Scala开发集群运行的Spark来实现在线热搜索词获取
package com.dt.streamingimport org.apache.spark.SparkConfimport org.apache.spark.streaming.{Seconds, StreamingContext}/** * 使用Scala开发集群运行的Spark来实现在线热搜索词 * * 背景描述:在社交网络(例如微博)、电子商务(例如京东)、搜索引擎(例如
2016-05-15 16:37:16 1040
原创 第94讲, 使用Scala开发集群运行的Spark 实现在线黑名单过滤程序
package com.dt.spark.sparksteamingimport org.apache.spark.SparkConfimport org.apache.spark.SparkContextimport org.apache.spark.rdd.RDDimport org.apache.spark.streaming.StreamingContextim
2016-05-15 10:18:14 1046
原创 第93讲:Spark Streaming updateStateByKey案例实战和内幕源码
本节课程主要分二个部分:一、Spark Streaming updateStateByKey案例实战二、Spark Streaming updateStateByKey源码解密第一部分:updateStateByKey它的主要功能是随着时间的流逝,在Spark Streaming中可以为每一个key可以通过CheckPoint来维护一份state状态,通过更新函数对该k
2016-05-11 07:17:43 9940
原创 第92讲 SparkStreming中的Transformations和状态管理
本期内容:1.SparkStreaming中的Transforamtions2.SparkStreaming中的状态管理一.DStream就是一个RDD之上的一个抽象,DStream和时间结合起来就不断的触发产生RDD的实例,可以说我们对Dstream的操作就初步定义了对RDD的操作,只不过需要时间的间隔也就是internalbatch去激活这个模板,生成具体的RDD的实例和具体的jo
2016-05-10 11:45:57 1728
原创 第91讲:sparkStreaming基于kafka的Direct详解
1:Direct方式特点:1)Direct的方式是会直接操作kafka底层的元数据信息,这样如果计算失败了,可以把数据重新读一下,重新处理。即数据一定会被处理2)由于直接操作的是kafka,kafka就相当于你底层的文件系统。这个时候能保证严格的事务一致性,即一定会被处理,而且只会被处理一次。而Receiver的方式则不能保证,因为Receiver和ZK中的数据可能不同步,spark St
2016-05-07 22:47:45 7644
原创 第90讲,Spark streaming基于kafka 以Receiver方式获取数据 原理和案例实战
1:SparkSteaming基于kafka的方式,主要有俩种,即Receiver和Derict,基于Receiver的方式,是sparkStreaming给我们提供了kafka访问的高层api的封装,而基于Direct的方式,就是直接访问,在sparkSteaming中直接去操作kafka中的数据,不需要前面的高层api的封装。而Direct的方式,可以进行更好的控制!2:实际上做kafka
2016-05-07 20:47:14 6959 1
原创 linux下多节点之间,免密钥访问实现
说明:目前安装了4个Redhat linux操作系统,主机名分别为hadoop01,hadoop02,hadoop03,hadoop04其中hadoop01为主节点,hadoop02,hadoop03,hadoop04为从节点四个节点ip地址为192.168.10.61~64.如果不修改hosts文件,从第二部开始可将hadoop01~04改为所对应的ip地址,如第4步中的scp ~/.s
2016-05-05 17:05:57 3623
原创 Maven配置和打包以及使用Eclipse构建Maven项目
Maven这个个项目管理和构建自动化工具,越来越多的开发人员使用它来管理项目中的jar包。本文仅对Eclipse中如何安装、配置和使用Maven进行了介绍。完全step by step。如果觉得本文对你有用,请移步到:http://download.csdn.net/detail/qjyong/5582071 下载PDF版,http://download.csdn.net/de
2016-05-05 16:26:46 8268 2
原创 Flume Push数据到spark streaming或者接收Spark streaming的poll数据时实际运行程序总结
1:如果windows的eclipse,集群运行模式,只能maven打jar包的方式,放到集群上通过脚本运行,如果jar包没打进去或者不是maven的方式打出的jar包,可以把jar包放到集群spark的lib目录下,在脚本中通过--jars /usr/local/spark/spark_1.6.0/lib/xxx.jar的方式指定一个jar包,可是可能还是会有问题,需要攻破(多个jar包要注
2016-05-05 12:06:14 1458
原创 windows系统重装步骤
1. 准备查看主板是否支持UEFI查看磁盘是MBR还是GPT如果想装Win7,就要准备好驱动精灵万能网卡版,Win10可以省略这步 「因为,Win7并不自带驱动。没有驱动就上不了网,没有网电脑就失去了意义。而驱动精灵万能网卡版能使你的电脑在重装Win7后可以连上网,连上网后就可以下载其他的驱动了」正版用户请准备好你的码,学生用户下面再说。
2016-05-05 09:18:37 7671
原创 第88讲:Spark Streaming从Flume Poll数据
本节课分成二部分讲解:一、Spark Streaming on Polling from Flume实战二、Spark Streaming on Polling from Flume源码第一部分:推模式(Flume push SparkStreaming) VS 拉模式(SparkStreaming poll Flume)采用推模式:推模式的理解就是Flum
2016-05-03 11:36:34 3585
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人