自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

原创 Oozie的简单使用

1、Oozie的介绍     Oozie是一个工作流引擎服务器,用于运行Hadoop Map/Reduce和Hive等任务工作流.同时Oozie还是一个Java Web程序,运行在Java Servlet容器中,如Tomcat中。Oozie以action为...

2019-05-26 16:27:16 1265 0

原创 Sqoop的简单使用

1、Sqoop的介绍     Sqoop是一款开源的工具,主要用于在Hadoop(Hive)与传统的数据库(mysql、oracle…)间进行数据的传递,可以将一个关系型数据库中的数据导进到Hadoop的HDFS中,也可以将HDFS的数据导进到关系型数据库...

2019-05-24 10:28:59 120 0

原创 Spark2.2——RpcEnv(一)

  Spark1.6推出的RpcEnv、RpcEndPoint、RpcEndpointRef为核心的新型架构下的RPC通信方式,在底层封装了Akka和Netty,为未来扩充更多的通信系统提供了可能。RpcEnv是一个更宏观的Env,是Spark集群Rpc通信的基础服务环境,因此在集群启动时候所有的...

2019-01-16 11:00:22 296 0

原创 Spark2.2源码剖析——SecurityManager

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

2019-01-15 13:46:13 337 0

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

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

2019-01-15 12:22:50 233 0

原创 Spark2.2——MemoryManager

占个位

2019-01-15 11:33:08 156 0

转载 Spark2.2源码剖析——SparkContext

  Spark应用程序的提交离不开Spark Driver,后者是驱动应用程序在Spark集群上执行的原动力。了解Spark Driver的初始化,有助于理解Spark应用程序与Spark Driver的关系。   而Spark Driver的初始化始终围绕着SparkContext的初始化。S...

2019-01-14 13:19:29 407 0

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

Spark Core&Spark SQL API 1、dataframe与dataset统一,dataframe只是dataset[Row]的类型别名,统一了Dataframe和Dataset两套API。 从Spark 2.0开始,Dataframe就只是Dataset...

2019-01-03 11:17:43 833 0

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

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

2018-09-06 22:42:22 447 0

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

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

2018-09-06 22:42:12 3895 0

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

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

2018-09-06 22:42:02 2608 1

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

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

2018-09-06 22:41:47 1606 0

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

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

2018-09-06 22:41:36 265 0

原创 Spark(八)———— troubleshooting控制

1、控制shuffle reduce端缓冲大小以避免OOM map端的task是不断的输出数据的,数据量可能是很大的。 但是,其实reduce端的task,并不是等到map端task将属于自己的那份数据全部写入磁盘文件之后,再去拉取的。map端写一点数据,reduce端task就会拉取一小...

2018-09-06 22:41:28 223 0

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

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

2018-09-06 22:41:08 285 0

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

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

2018-09-06 22:40:52 4864 6

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

1、项目介绍 本项目主要用于互联网电商企业中,使用Spark技术开发的大数据统计分析平台,对电商网站的各种用户行为(访问行为、购物行为、广告点击行为等)进行复杂的分析。用统计分析出来的数据,辅助公司中的PM(产品经理)、数据分析师以及管理人员分析现有产品的情况,并根据用户行为分析结果持续改进产品...

2018-09-06 22:40:14 7650 0

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

1、项目介绍 将通话记录数据由原来的oracle系统改造成使用大数据架构解决方案。主要使用hbase做通话数据的存储方案。需要将原有oracle数据导入到hbase中,以及新生成数据通过flume收集到kafka,再通过消费者存储到hbase数据库。 hadoop+hbase+flume+zo...

2018-09-06 22:40:02 1871 0

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

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

2018-09-06 22:39:48 1587 1

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

1、秒杀系统分析 1.1秒杀系统业务分析 1、秒杀系统的核心是对库存的处理,业务流程图如下所示 2、用户针对库存业务分析 1、减库存 2、记录购买明细(记录秒杀成功信息) 1)记录谁购买成功了 2)成功的时间/有...

2018-09-06 22:36:42 2833 0

原创 经典排序算法Java版实现

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

2018-08-31 15:08:35 196 0

原创 机器学习算法总结(三)

1、决策树 决策树是通过一系列规则对数据进行分类的过程。它提供一种在什么条件下会得到什么值的类似规则的方法。决策树分为分类树和回归树两种,分类树对离散变量做决策树,回归树对连续变量做决策树。 1.2 决策树的学习过程 一棵决策树的生成过程主要分为以下3个部分: 特征选择:特征选择是指从训...

2018-08-30 21:10:30 285 0

原创 机器学习算法总结(二)

1、KNN算法 KNN是通过测量不同特征值之间的距离进行分类。它的思路是:如果一个样本在特征空间中的k个最相似(即特征空间中最邻近)的样本中的大多数属于某一个类别,则该样本也属于这个类别,其中K通常是不大于20的整数。KNN算法中,所选择的邻居都是已经正确分类的对象。该方法在定类决策上只...

2018-08-30 19:36:55 315 0

原创 机器学习算法总结(一)

1、TF-IDF文本相似度分析 余弦相似度计算个体间的相似性,即将两个个体的特征向量化,通过余弦公式计算两者之间的相似性。 通过计算模型公式可以明确的求出余弦相似度的值。那么对于我们写程序实现这个算法,就是把两个个体转换为向量,然后通过这个公式求出最终解。 比如向量a(x1, x...

2018-08-30 16:29:29 3034 0

原创 剑指Offer算法题及答案Java完整版(四)

43、输入一棵二叉搜索树,将该二叉搜索树转换成一个排序的双向链表。要求不能创建任何新的结点,只能调整树中结点指针的指向。 TreeNode.java package cn.ctgu.offer.BinaryTreeAndList; public class TreeNode { in...

2018-08-22 14:53:50 164 0

原创 剑指Offer算法题及答案Java完整版(三)

31、给定一个数组A[0,1,…,n-1],请构建一个数组B[0,1,…,n-1],其中B中的元素B[i]=A[0]A[1]…A[i-1]*A[i+1]…*A[n-1]。不能使用除法。 package cn.ctgu.offer; /* * 题目: * 给定一个数组A[0,1,...,n...

2018-08-22 11:39:25 191 0

原创 剑指Offer算法题及答案Java完整版(二)

16、请设计一个函数,用来判断在一个矩阵中是否存在一条包含某字符串所有字符的路径,路径可以从矩阵中的任意一个格子开始,每一步可以在矩阵中向左,向右,向上,向下移动一个格子。如果一条路径经过了矩阵中的某一个格子,则之后不能再次进入这个格子。例如 a b c e s f c s a d e e 这样的...

2018-08-22 11:09:56 574 0

原创 剑指Offer算法题及答案Java完整版(一)

1、输入一个整数数组,实现一个函数来调整该数组中数字的顺序,使得所有的奇数位于数组的前半部分,所有的偶数位于位于数组的后半部分,并保证奇数和奇数,偶数和偶数之间的相对位置不变。 package cn.ctgu.offer; /* * 输入一个整数数组,实现一个函数来调整该数组中数字的顺序,...

2018-08-22 10:39:23 1551 0

原创 大数据项目(四)————用户画像

1、用户画像概述 用来勾画用户(用户背景、特征、性格标签、行为场景等)和联系用户需求与产品设计的,旨在通过从海量用户行为数据中炼银挖金,尽可能全面细致的抽出一个用户的信息全貌,从而帮助解决如何把数据转为商业价值的问题。 1.1 用户画像数据来源 用户画像数据来源中连个最终要的数据就是用户...

2018-08-05 19:25:41 25208 4

原创 安装nginx和ganglia

1、什么是nginx 2、在contos上安装nginx 1. a)先安装G++ $>sudo yum install gcc b)安装pcre $>sudo yum install pcre pcre-devel openssl openssl-deve...

2018-07-22 09:21:49 289 0

原创 Spark(六)————python API的调用以及几种模式的配置

1、python操作hbase 1.1 配置 0.启动hbase集群 如果时钟不同步,采用下面的方式进行同步处理。 $>su root $>xcall.sh "ntpdate asia.pool.ntp.org" 1.启动hbase...

2018-07-10 11:24:14 964 0

原创 Spark(五)————MLlib

1、Spark机器学习库特点 [Estimator] 运行在包含了feature和label(结果)的dataFrame之上,对数据进行训练创建model。 该模型用于以后的预测。 [Transformer] 将包含feature的Dataframe变换成了包含了预测的dataframe...

2018-07-06 11:23:51 411 0

原创 Spark(四)————SparkSQL和SparkStreaming

1、什么是SparkSQL SparkSQL模块能构建在Spark上运行sql语句,主要有DataFrame(数据框、表),它类似于构建在hadoop上的hive以及构建在hbase上的pheonix用于进行sql交互。 使用类似SQL方式访问hadoop,实现MR计算。 df = sc...

2018-07-05 16:10:26 3474 0

原创 Spark(三)————作业提交流程

1、Spark核心API [SparkContext] 连接到spark集群,入口点. [RDD] 它是一个分区的集合. 弹性分布式数据集. 不可变的数据分区集合. 基本操作(map filter , persist) 分区列表 //数据 应...

2018-07-05 13:54:33 2108 0

原创 Spark(二)————RDD变换和RDD Action

1、什么是RDD RDD是Spark的基本数据结构,是不可变数据集。RDD中的数据集进行逻辑分区,每个分区可以单独在集群节点进行计算。可以包含任何java,scala,python和自定义类型。 RDD是只读的记录分区集合。RDD具有容错机制。 Spark主要是内存处理计算,在job间进行数...

2018-07-01 20:23:07 318 0

原创 Spark(一)————Spark介绍以及集群搭建

1、Spark的特点 快如闪电的集群计算。大规模快速通用的计算引擎。 速度比hadoop 100x,磁盘计算快10x。 能使用java / Scala /R /python进行开发,提供80+算子(操作符),容易构建并行应用。 通用架构:组合SQL ,流计算 + 复杂分析。 运行模式:H...

2018-07-01 19:34:02 236 0

原创 Scala基本语法(四)

1、语法基础 //变量 scala>var a = 100 //变量 //常量 scala>val a = 100 //常量,不能重新赋值。 //定义类型 scala>val a:String = &quo...

2018-06-30 11:06:11 1110 0

原创 Hadoop————Storm强化

1、storm的特点 storm是一个免费、开源、分布式、实时计算系统。吞吐量高,每秒每节点能达到百万元组。 storm是跨语言、可伸缩的,具有低延迟(秒级/分钟级)、容错的特点。 storm与hadoop的对比 storm hadoop -----------...

2018-06-28 21:07:43 334 0

原创 Hadoop————Kafka强化

1、kafka的特点 分布式流处理平台。在系统之间构建实时数据流管道。以topic分类对记录进行存储,每个记录包含key-value+timestamp每秒钟百万消息吞吐量。 producer //消息生产者 consumer //消息消费者 con...

2018-06-25 20:39:00 1097 0

原创 Hadoop————flume强化

1、flume的特点 收集、移动、聚合大量日志数据的服务。 基于流数据的架构,用于在线日志分析。 基于事件。在生产和消费者之间启动协调作用。提供了事务保证,确保消息一定被分发。Source 多种、Sink多种。可以有多级跃点。 Source,接受数据,类型有多种。 Chann...

2018-06-25 20:07:41 162 0

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