• 等级
  • 49180 访问
  • 110 原创
  • 6 转发
  • 39763 排名
  • 12 评论
  • 20 获赞

Spark2.2——RpcEnv(一)

  Spark1.6推出的RpcEnv、RpcEndPoint、RpcEndpointRef为核心的新型架构下的RPC通信方式,在底层封装了Akka和Netty,为未来扩充更多的通信系统提供了可能。RpcEnv是一个更宏观的Env,是Spark集群Rpc通信的基础服务环境,因此在集群启动时候所有的节点(无论Master还是Worker)都会创建一个RpcEnv,然后将该节点注册到RpcEnv中。R...

2019-01-16 11:00:22

Spark2.2源码剖析——SecurityManager

  SecurityManager主要对帐号、权限以及身份认证进行设置和管理。如果 Spark 的部署模式为 YARN,则需要生成 secret key (密钥)并存储 Hadoop UGI。而在其他模式下,则需要设置环境变量 _SPARK_AUTH_SECRET(优先级更高)或者 spark.authenticate.secret 属性指定 secret key (密钥)。最后SecurityM...

2019-01-15 13:46:13

Spark2.2源码剖析——SparkContext初始化及Spark环境创建

  阅读指导:在《Spark2.2——SparkContext概述》一文中,曾经简单介绍了SparkEnv。本节内容将详细介绍SparkEnv的创建过程。   在Spark中,凡是需要执行任务的地方就需要SparkEnv。在生产环境中,SparkEnv往往运行于不同节点的Executor中。但是由于local模式在本地执行的需要,因此在Driver本地的Executor也需要SparkEnv。Sp...

2019-01-15 12:22:50

Spark2.2——MemoryManager

占个位

2019-01-15 11:33:08

Spark2.2源码剖析——SparkContext

  Spark应用程序的提交离不开Spark Driver,后者是驱动应用程序在Spark集群上执行的原动力。了解Spark Driver的初始化,有助于理解Spark应用程序与Spark Driver的关系。   而Spark Driver的初始化始终围绕着SparkContext的初始化。SparkContext可以算得上是Spark应用程序的发动机引擎,轿车要想跑起来,发动机首先要启动。Sp...

2019-01-14 13:19:29

Spark2.0较于Spark1.x的更新之处

Spark Core&Spark SQL API 1、dataframe与dataset统一,dataframe只是dataset[Row]的类型别名,统一了Dataframe和Dataset两套API。 从Spark 2.0开始,Dataframe就只是Dataset[Row]的一个别名,不再是一个单独的类了。无论是typed方法(map、filter、groupByKey等)还是unt...

2019-01-03 11:17:43

Java高并发系统设计及其优化策略——秒杀系统(二)

1、项目介绍 该项目是基于SSM框架的一个秒杀系统,采用了CDN技术用于加载静态资源,redis缓存技术承载高并发获取商品信息,针对mysql数据库事务性访问采用了存储过程技术以支撑每秒数万的访问量。 2、技术要点 1、建表的时候采用联合主键,将seckil_id和user_phone作为联合主键可避免重复秒杀。 2、MD5加密秒杀接口,可以防止用户推测出秒杀地址 3、增加一个dto层用...

2018-09-06 22:42:22

大数据项目(三)————电商模块三(四)

1、模块介绍 Spark作业接收taskid,查询对应的MySQL中的task,获取用户指定的筛选参数;统计出指定日期范围内的,各个区域的top3热门商品;最后将结果写入MySQL表中。 2、需求分析 1、区域信息在哪里,各个城市的信息,城市是不怎么变化的,没有必要存储在hive里?MySQL,Hive和MySQL异构数据源使用,技术点 2、hive用户行为数据,和mysql城市信息,...

2018-09-06 22:42:12

大数据项目(三)————电商模块四(五)

1、广告点击流量实时统计模块 网站 / app,通常会给一些第三方的客户,打一些广告;也是一些互联网公司的核心收入来源;广告在网站 / app某个广告位打出去,在用户来使用网站 / app的时候,广告会显示出来;此时,有些用户可能就会去点击那个广告。 广告被点击以后,实际上,我们就是要针对这种用户行为(广告点击行为),实时数据,进行实时的大数据计算和统计。 每次点击一个广告以后,通常来说,网...

2018-09-06 22:42:02

大数据项目(三)————电商模块二(三)

1、模块二介绍——页面单跳转化率 页面单跳转化率,计算出来以后,还是蛮有用的,蛮有价值的。 产品经理,可以根据这个指标,去尝试分析,整个网站,产品,各个页面的表现怎么样,是不是需要去优化产品的布局;吸引用户最终可以进入最后的支付页面; 数据分析师,可以基于咱们的这个数据,做更深一步的计算和分析 企业管理层,可以看到整个公司的网站,各个页面的之间的跳转的表现,如何?心里有数,可以适当调整...

2018-09-06 22:41:47

Spark(九)————数据倾斜解决

1、数据倾斜原理及现象分析 在执行shuffle操作的时候,大家都知道,我们之前讲解过shuffle的原理。是按照key,来进行values的数据的输出、拉取和聚合的。 同一个key的values,一定是分配到一个reduce task进行处理的。 多个key对应的values,总共是90万。但是问题是,可能某个key对应了88万数据,key-88万values,分配到一个task上去面...

2018-09-06 22:41:36

Spark(八)———— troubleshooting控制

1、控制shuffle reduce端缓冲大小以避免OOM map端的task是不断的输出数据的,数据量可能是很大的。 但是,其实reduce端的task,并不是等到map端task将属于自己的那份数据全部写入磁盘文件之后,再去拉取的。map端写一点数据,reduce端task就会拉取一小部分数据,立即进行后面的聚合、算子函数的应用。 每次reduece能够拉取多少数据,就由buffer...

2018-09-06 22:41:28

Spark(七)————性能调优

1、分配更多的资源 分配更多资源:性能调优的王道,就是增加和分配更多的资源,性能和速度上的提升,是显而易见的;基本上,在一定范围之内,增加资源与性能的提升,是成正比的;写完了一个复杂的spark作业之后,进行性能调优的时候,首先第一步,我觉得,就是要来调节最优的资源配置;在这个基础之上,如果说你的spark作业,能够分配的资源达到了你的能力范围的顶端之后,无法再分配更多的资源了,公司资源有限;那...

2018-09-06 22:41:08

大数据项目(三)————电商项目模块一(二)

1、用户访问Session介绍 用户在电商网站上,通常会有很多的点击行为,首页通常都是进入首页;然后可能点击首页上的一些商品;点击首页上的一些品类;也可能随时在搜索框里面搜索关键词;还可能将一些商品加入购物车;对购物车中的多个商品下订单;最后对订单中的多个商品进行支付。 用户的每一次操作,其实可以理解为一个action,比如点击、搜索、下单、支付 用户session,指的就是,从用户第一次进...

2018-09-06 22:40:52

大数据项目(三)————电商项目介绍(一)

1、项目介绍 本项目主要用于互联网电商企业中,使用Spark技术开发的大数据统计分析平台,对电商网站的各种用户行为(访问行为、购物行为、广告点击行为等)进行复杂的分析。用统计分析出来的数据,辅助公司中的PM(产品经理)、数据分析师以及管理人员分析现有产品的情况,并根据用户行为分析结果持续改进产品的设计,以及调整公司的战略和业务。最终达到用大数据技术来帮助提升公司的业绩、营业额以及市场占有率的目标...

2018-09-06 22:40:14

大数据项目(二)————某电信公司通话记录改造

1、项目介绍 将通话记录数据由原来的oracle系统改造成使用大数据架构解决方案。主要使用hbase做通话数据的存储方案。需要将原有oracle数据导入到hbase中,以及新生成数据通过flume收集到kafka,再通过消费者存储到hbase数据库。 hadoop+hbase+flume+zookeeper实现电信级海量通话日志数据的存储,随机 访问与实时读写。通过hash技术对rowkey...

2018-09-06 22:40:02

大数据项目(一)————生成团购标签

1、项目简介 所谓的团购标签生成就是通过从消费者对商品的评价中统计提取关键词,并统计其消费者对该商品该指标的累积数量,并进行排序显示,类似于淘宝、美团等电商平台都有的大家印象之类的。 2、业务介绍 1、从复杂的json数据格式中提取出评论标签项 2、统计每个评论标签项的数量 3、对统计出的评论标签按降序排序 4、回显标签 3、功能实现 3.1 提取评论标签项 Revie...

2018-09-06 22:39:48

Java高并发系统设计及其优化策略——秒杀系统(一)

1、秒杀系统分析 1.1秒杀系统业务分析 1、秒杀系统的核心是对库存的处理,业务流程图如下所示 2、用户针对库存业务分析 1、减库存 2、记录购买明细(记录秒杀成功信息) 1)记录谁购买成功了 2)成功的时间/有效期 1.2 秒杀系统技术分析 1、为什么需要事务? 一旦用户秒杀成功系统需要做两步操作...

2018-09-06 22:36:42

经典排序算法Java版实现

1、堆排序 堆排序的基本思想是:将待排序序列构造成一个大顶堆,此时,整个序列的最大值就是堆顶的根节点。将其与末尾元素进行交换,此时末尾就为最大值。然后将剩余n-1个元素重新构造成一个堆,这样会得到n个元素的次小值。如此反复执行,便能得到一个有序序列了。 package cn.ctgu.offer.sort; import java.util.Arrays; public class Hea...

2018-08-31 15:08:35

机器学习算法总结(三)

1、决策树 决策树是通过一系列规则对数据进行分类的过程。它提供一种在什么条件下会得到什么值的类似规则的方法。决策树分为分类树和回归树两种,分类树对离散变量做决策树,回归树对连续变量做决策树。 1.2 决策树的学习过程 一棵决策树的生成过程主要分为以下3个部分: 特征选择:特征选择是指从训练数据中众多的特征中选择一个特征作为当前节点的分裂标准,如何选择特征有着很多不同量化评估标准标准,从而...

2018-08-30 21:10:30

Jorocco

爬行者!
关注
  • 计算机软件
  • 中国