自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(53)
  • 收藏
  • 关注

原创 hive在spark上运行报错汇总

1:ERROR - An error occurred while calling o103.sql.(调用o103.sql时出错)Permission denied by sticky bit setting: user=airflow, inode=dm_cust_live_all(粘性位设置拒绝许可)解决方法:定义表为 denied by sticky bit 非super不能修改表的...

2019-06-18 14:47:03 1192

原创 Yarn资源调度工作原理解析

Yarn资源调度工作原理解析由于Yarn良好的兼容性和扩展性,目前可以支持大部分数据引擎,所以了解Yarn的资源调度原理很有必要,Yarn主要由四个重要角色组成:ResourceManager:顾名思义资源管理器,主要负责资源管理和调度,ResourceManager主要由两个组件构成:ApplicationManager,主要负责两类工作:1.管理监控各个系统的应用,包括启动Applicai...

2020-04-15 16:27:19 447

原创 hive正则表达式

1、元字符匹配(.) 表示匹配除换行符以外的任意字符。(\w) 表示匹配字母、下划线、数字或汉字(\W)。(\d) 表示匹配数字(\s) 表示匹配任意的空白符([ ]) 表示匹配方括号中任一字符([^匹配内容]) 表示匹配方括号中任一字符2、位置匹配(^) 表示匹配字符串的开始,空值:^$($) 表示匹配字符串的结束(\b) 表示匹配单词的开始或结束。(\B) 表示匹配...

2019-07-16 16:45:42 3596

原创 hive关于left join 和join时候on条件总结

hive中使用join时候on条件1、如果select * from aleft join bon(a.字段=b.字段)正常2、如果select * from aleft join bon(a.字段=b.字段,b.字段=某值,b.……)正常3、如果select * from aleft join bon(a.字段=b.字段,a.字段=某值,a.……)工作正常该查询中a...

2019-07-12 09:33:11 8183 2

原创 Hadoop整体框架

大数据框架目录大数据框架一、Hodoop四大组件:HDFS/MapReduce/YARN/Common二、Zookeeper三、Hive四、Spark五、ETL六、ngnix七、Redis八、Oracle十一、Jsp/node.js/JQueryEcharts一、hadoophttp://blog.csdn.net/huanglong8/article/detail...

2019-04-18 03:33:45 359

原创 Java 中15种锁的介绍

介绍的内容如下:目录公平锁 / 非公平锁可重入锁 / 不可重入锁独享锁 / 共享锁互斥锁 / 读写锁乐观锁 / 悲观锁分段锁偏向锁 / 轻量级锁 / 重量级锁自旋锁什么是自旋锁?自旋锁与互斥锁上面是很多锁的名词,这些分类并不是全是指锁的状态,有的指锁的特性,有的指锁的设计,下面总结的内容是对每个锁的名词进行一定的解释。公平锁 / 非公...

2019-04-12 19:47:50 157

原创 HBase二级索引方案

01 HBase简介HBase是一个构建在HDFS之上,用于海量数据存储分布式列存储系统。参见下图,由于在HBase中:表的每行都是按照RowKey的字典序排序存储表的数据是按照RowKey区间进行分割存储成多个region所以HBase主要适用下面这两种常见场景:适用于基于rowkey的单行数据快速随机读写适合基于rowkey前缀的范围扫描02 为什么需要HB...

2019-04-12 17:56:56 15354 1

原创 flume sqoop kafka总结

1.flumeflume是高可用的,高可靠的,分布式的海量日志采集、聚合和传输的系统。flume不仅可以采集数据,还可以对数据进行简单的处理。flume的文件采集source工具只能识别文本数据。2.flume-ngflume-ng中,flume的集群只有一种角色agentagent中有三种组件:source、channel、sinksource作用是采集数据,它可...

2019-04-11 20:23:46 986

原创 Kafka生产者事务和幂等

目录1 生产者幂等性1.1 引入1.2 幂等性实现1.2.1 PID 和 Sequence Number1.2.2 生成PID的流程1.3 幂等性的应用实例2 事务属性2.1 事务属性理解2.2 引入事务目的2.3 事务操作的API3 事务属性的应用实例3.1 相关属性配置3.2 只有写3.3 消费-生产并存(consume-transfor...

2019-04-09 22:01:19 1355

原创 MySQL JDBC StreamResult通信原理浅析

使用MySQL JDBC读取过较大数据量的人应该清楚(例如超过1GB),在读取的时候内存很可能会Java堆内存溢出,而我们的解决方案是statement.setFetchSize(Integer.MIN_VALUE)并确保游标是只读向前滚动的即可(为游标的默认值),也可以强制类型转换为com.mysql.jdbc.StatementImpl,然后调用其内部方法:enableStreamingRes...

2019-04-09 09:55:25 274

原创 Kafka整体架构

1.概述Apache Kafka最早是由LinkedIn开源出来的分布式消息系统,现在是Apache旗下的一个子项目,并且已经成为开源领域应用最广泛的消息系统之一。Kafka社区非常活跃,从0.9版本开始,Kafka的标语已经从“一个高吞吐量,分布式的消息系统”改为"一个分布式流平台"。Kafka和传统的消息系统不同在于:kafka是一个分布式系统,易于向外扩展。 它同时为...

2019-04-09 09:54:14 3138

原创 Redis 开发规范

本文主要介绍在使用阿里云Redis的开发规范,从下面几个方面进行说明。键值设计 命令使用 客户端使用 相关工具通过本文的介绍可以减少使用Redis过程带来的问题。一、键值设计1、key名设计可读性和可管理性以业务名(或数据库名)为前缀(防止key冲突),用冒号分隔,比如业务名:表名:idugc:video:1简洁性保证语义的前提下,控制key的长度,当k...

2019-04-09 09:50:03 83

原创 Flume原理解析

阅读目录(Content)目录阅读目录(Content)一、Flume简介二、Flume特点三、Flume的一些核心概念3.1、Agent结构  3.2、source3.3、Channel3.4、Sink四、Flume拦截器、数据流以及可靠性4.1、Flume拦截器4.2、Flume数据流4.3、Flume可靠性五、Flume使用场景5....

2019-04-08 14:25:29 227

转载 Object类的方法和作用

Object类总共13个方法1.clone方法保护方法,实现对象的浅复制,只有实现了Cloneable接口才可以调用该方法,否则抛出CloneNotSupportedException异常。主要是JAVA里除了8种基本类型传参数是值传递,其他的类对象传参数都是引用传递,我们有时候不希望在方法里讲参数改变,这是就需要在类中复写clone方法。2.getClass方法final方法...

2019-04-08 11:48:07 207

原创 hadoop生态圈

Hadoop 是一个能够对大量数据进行分布式处理的软件框架。具有可靠、高效、可伸缩的特点。Hadoop 的核心是 HDFS 和 Mapreduce,HDFS 还包括 YARN。目录1,HDFS(hadoop分布式文件系统)2,mapreduce(分布式计算框架)3, hive(基于hadoop的数据仓库)4,hbase(分布式列存数据库)5,zookeeper(分布式协...

2019-04-06 16:50:02 224

原创 携程实时用户数据采集与分析系统

一、携程实时用户数据采集系统设计实践随着移动互联网的兴起,特别是近年来,智能手机、pad等移动设备凭借便捷、高效的特点风靡全球,同时各类APP的快速发展进一步降低了移动互联网的接入门槛,越来越多的网民开始从传统PC转移至移动终端上。但传统的基于PC网站和访问日志的用户数据采集系统已经无法满足实时分析用户行为、实时统计流量属性和基于位置服务(LBS)等方面的需求。我们针对传统用户数据采集系统在实...

2019-04-06 15:08:00 2807

原创 六大方法论完成用户分析

用户研究是用户中心的设计流程中的第一步。它是一种理解用户,将他们的目标、需求与商业宗旨相匹配的理想方法,能够帮助企业定义产品的目标用户群。在用户研究过程中,数据的使用及挖掘是非常重要的。那么,有哪些通用的用户分析方法?如何分析你的用户?本篇重点围绕七大用户分析方法论/模型,展开分享几个比较常见的用户运营实际案例。六大用户分析方法论1、行为事件分析2、点击分析模型3、用户行为路径分析...

2019-04-04 14:46:35 1699

原创 百亿用户行为数据,实现秒级转化分析

用户行为分析是数据分析中非常重要的一项内容,在统计活跃用户,分析留存和转化率,改进产品体验、推动用户增长等领域有重要作用。美团点评每天收集的用户行为日志达到数百亿条,如何在海量数据集上实现对用户行为的快速灵活分析,成为一个巨大的挑战。为此,我们提出并实现了一套面向海量数据的用户行为分析解决方案,将单次分析的耗时从小时级降低到秒级,极大的改善了分析体验,提升了分析人员的工作效率。本文以有序漏斗的...

2019-04-04 11:59:33 1004 1

原创 实时用户行为系统分析

携程实时用户行为服务作为基础服务,目前普遍应用在多个场景中,比如猜你喜欢(携程的推荐系统),动态广告,用户画像,浏览历史等等。以猜你喜欢为例,猜你喜欢为应用内用户提供潜在选项,提高成交效率。旅行是一项综合性的需求,用户往往需要不止一个产品。作为一站式的旅游服务平台,跨业务线的推荐,特别是实时推荐,能实际满足用户的需求,因此在上游提供打通各业务线之间的用户行为数据有很大的必要性。携程原有的实...

2019-04-04 11:52:59 1464

原创 旅游攻略类分析

旅游永远是人们的一大刚需,围绕旅游的服务层出不穷。除了携程去哪儿等代理商、平台商,专注于自助旅游的应用也不少。喜欢自助游的用户在旅游过程中存在各种各样的需求,社区、攻略、社交等类别都能与旅游挂钩,设计出不同的产品。其中有蚂蜂窝等PC端旅游社区的大佬,也有很多小型的创业公司。目前该方向的旅游应用大致包含游记分享、攻略、社交等方向的功能,旨在为自助出游用户提供出行前后各个方面的帮助。用户需求分析...

2019-04-04 11:04:10 2247

原创 蚂蜂窝旅游分析

随着时代的发展,出去旅游是时常会有的事情,尤其是在年轻一代中,他们热衷于在空余时间和朋友出去游玩,又或者是自己独自出去。而与之而来的,旅游APP也随之发展起来,蚂蜂窝旅游网站在自由行消费者的角度,旨在帮助用户做出合理的旅游消费决策。本文是从四个角度来对蚂蜂窝旅游APP的一些思考与分析。随着人们生活水平的提高,旅游已经成为了人们生活中不可缺少的部分,这也是旅游业竞争如此激烈的根源所在,传...

2019-04-04 10:20:12 3601

原创 目前主要的大数据工具

一、hadoop相关工具1.HadoopApache的Hadoop项目已几乎与大数据划上了等号。它不断壮大起来,已成为一个完整的生态系统,众多开源工具面向高度扩展的分布式计算。支持的操作系统:Windows、Linux和OSX。2.Ambari作为Hadoop生态系统的一部分,这个Apache项目提供了基于Web的直观界面,可用于配置、管理和监控Hadoop集群。有些开发人员想...

2019-04-03 21:26:23 419

原创 Hashtable和HashMap的区别和联系

HashMap与Hashtable的区别是面试中经常遇到的一个问题。这个问题看似简单,但如果深究进去,也能了解到不少知识。本文对两者从来源,特性,算法等多个方面进行对比总结。力争多角度,全方位的展示二者的不同,做到此问题的终结版。作者Hashtable的作者:HashMap的作者:Hash Map的作者比Hashtable的作者多了著名顶顶的并发大神Doug Lea。他写了util...

2019-04-02 19:55:20 2653

原创 Spark数据倾斜解决方案

调优概述有的时候,我们可能会遇到大数据计算中一个最棘手的问题——数据倾斜,此时Spark作业的性能会比期望差很多。数据倾斜调优,就是使用各种技术方案解决不同类型的数据倾斜问题,以保证Spark作业的性能。数据倾斜是多么痛?!!!如果数据倾斜没有解决,完全没有可能进行性能调优,其他所有的调优手段都是一个笑话。数据倾斜是最能体现一个spark大数据工程师水平的性能调优问题。数据倾斜如果...

2019-04-02 11:52:09 161

原创 迭代、循环、遍历、递归以尾递归

loop、iterate、traversal和recursion这几个词是计算机技术书中经常会出现的几个词汇。众所周知,这几个词分别翻译 为:循环、迭代、遍历和递归。乍一看,这几个词好像都与重复(repeat)有关,但有的又好像不完全是重复的意思。那么这几个词到底各是什么含义,有什么区别和联系呢?下面就试着解释一下。  1,循环(loop),指的是在满足条件的情况下,重复执行同一段代码。比如,...

2019-04-02 10:29:41 464

原创 各种排序算法原理、代码实现总结和比较

排序是程序员开发中经常用到的问题,也是面试过程中经常被问到的内容。不同的排序算法有不同的应用场景,排序算法可以说是一项基本功,解决实际问题中经常遇到,针对实际数据的特点选择合适的排序算法可以使程序获得更高的效率,有时候排序的稳定性还是实际问题中必须考虑的。本文小编为大家搜集一篇关于排序算法比较的文章,对常见的排序算法进行整理,包括:插入排序、选择排序、冒泡排序、快速排序、堆排序、归并排序、希尔排...

2019-04-01 11:05:12 682 1

原创 大数据性能调优总结

目录12.1配置原则如何发挥集群最佳性能影响性能的因素12.2Manager12.2.1提升Manager配置服务参数的效率12.2.2根据集群节点数优化Manager配置12.3HBase12.3.1提升BulkLoad效率12.3.2提升连续put场景性能12.3.3Put和Scan性能综合调优12.3.4提升实时写数据效率...

2019-03-30 19:16:54 4605 2

原创 ELK实时日志分析平台环境部署

在日常运维工作中,对于系统和业务日志的处理尤为重要。今天,在这里分享一下自己部署的ELK(+Redis)-开源实时日志分析平台的记录过程(仅依据本人的实际操作为例说明,如有误述,敬请指出)~================概念介绍================日志主要包括系统日志、应用程序日志和安全日志。系统运维和开发人员可以通过日志了解服务器软硬件信息、检查配置过程中的错误及错误发生的原...

2019-03-30 19:10:10 198

原创 Redis面试题

1、什么是Redis?Redis本质上是一个Key-Value类型的内存数据库,很像memcached,整个数据库统统加载在内存当中进行操作,定期通过异步操作把数据库数据flush到硬盘上进行保存。因为是纯内存操作,Redis的性能非常出色,每秒可以处理超过 10万次读写操作,是已知性能最快的Key-Value DB。 Redis的出色之处不仅仅是性能,Redis最大的魅力是支持保存多种数据结...

2019-03-30 11:13:44 164

原创 Redis的版本演进核心的变化

Redis2.61)键的过期时间支持毫秒2)从节点提供只读功能3)服务端支持Lua脚本4)放开客户端连接数的硬编码限制5)去掉虚拟内存相关功能等Redis2.81)完善主从复制功能,实现增量复制2)Redis设置明显的进程名,在系统中ps命令即可查看3)发布/订阅添加pub/sub命令4)Redis Sentinel第二版发布,较Redis ...

2019-03-30 11:09:27 870

原创 Redis数据库主要的特点、优势,使用时的关注的点以及问题点

Redis作为基于K-V的NoSQL数据库,具有高性能、丰富的数据结构、持久化、高可用、分布式、支持复制等特性。从09年至今,经历8年多的锤炼,已经非常稳定,并且得到业界的广泛认可和使用,同时社区非常活跃,开发者又很严谨,这使得Redis版本非常精简,bug fix非常高效。根据similarweb.com的统计,中国Redis用户占全球Redis用户的40.96%,所以我们在使用的过程中遇到的问...

2019-03-30 11:05:46 391

原创 Redis中的数据类型使用场景

Redis之所以能够被广泛的应用于企业的架构中,而且是不可或缺的重要组成部分,也可以说是标配吧,其中很重要的一点就是得益于它具有丰富的数据结构,这也是它逐渐替代Memcached,备受青睐的重要原因。那么Redis都提供哪些数据类型呢?相信对Redis有了解过的同学都知道,它的数据类型有:String、Hash、List、Set、Zset、Bitmaps、HyperLogLog、GEO等。...

2019-03-30 11:03:13 179

原创 Redis的集群功能和实现

要了解Redis的集群功能,可以从数据分片、数据迁移、集群通讯、故障检测以及故障转移等方面进行了解,Cluster相关的代码也不是很多,注释也很详细,可自行查看,地址是:https://github.com/antirez/redis/blob/unstable/src/cluster.c。这里由于篇幅的原因,主要从数据分片和数据迁移两方面进行详细介绍:数据分片Redis cluste...

2019-03-30 10:59:11 479

原创 Redis如何做消息队列

Redis做消息队列,有两种实现方式:第一种:通过数据结构List来实现优点:能够实现持久化;支持集群;接口使用简单缺点:如上图所示,一条消息只会被一个消费者消费,所以不存在有多个消费者消费一条消息 生产者和消费者的高可用或崩溃后的处理机制需要自己实现 当生产者消息写入太快,消费者消费太慢,则有可能会导致内存溢出问题,导致进程crash第二种:通过pub/sub来实现...

2019-03-30 10:57:14 1540

原创 大数据项目分析

本文来自携程技术中心基础业务研发部的《应用架构涅槃》系列分享。据基础业务研发部负责人李小林介绍,互联网二次革命的移动互联网时代,如何吸引用户、留住用户并深入挖掘用户价值,在激烈的竞争中脱颖而出,是各大电商的重要课题。通过各类大数据对用户进行研究,以数据驱动产品是解决这个课题的主要手段,携程的大数据团队也由此应运而生;经过几年的努力,大数据的相关技术为业务带来了惊人的提升与帮助。以基础大数据的用户...

2019-03-29 21:09:28 3944

原创 Spark Shuffle 中 JVM 内存使用及配置内幕详情

引言Spark 从1.6.x 开始对 JVM 的内存使用作出了一种全新的改变,Spark 1.6.x 以前是基于静态固定的JVM内存使用架构和运行机制,如果你不知道 Spark 到底对 JVM 是怎么使用,你怎么可以很有信心地或者是完全确定地掌握和控制数据的缓存空间呢,所以掌握Spark对JVM的内存使用内幕是至关重要的。很多人对 Spark 的印象是:它是基于内存的,而且可以缓存一大堆数据,...

2019-03-29 09:29:44 166

原创 Git操作命令

分支操作git branch 创建分支.git branch -b 创建并切换到新建的分支上git checkout 切换分支git branch 查看分支列表git branch -v 查看所有分支的最后一次操作git branch -vv 查看当前分支git brabch -b 分支名 origin/分支名 创建远程分支到本地git branch --merged 查看别的分...

2019-03-29 09:11:11 82

原创 二叉树的排序和实现

二叉树遍历分为三种先序遍历首先访问根,再先序遍历左子树,最后先序遍历右子树 根 --> 左 – > 右无序中序遍历首先中序遍历左子树,再访问根,最后中序遍历右子树 左 --> 根 --.> 右升序后序遍历首先后序遍历左子树,再后序遍历右子树,最后访问根 左 --> 右 --> 跟 左–>根–>右排序实现:public class Bin...

2019-03-28 19:58:12 510

原创 B树和B+树

一,b树b树(balance tree)和b+树应用在数据库索引,可以认为是m叉的多路平衡查找树,但是从理论上讲,二叉树查找速度和比较次数都是最小的,为什么不用二叉树呢?因为我们要考虑磁盘IO的影响,它相对于内存来说是很慢的。数据库索引是存储在磁盘上的,当数据量大时,就不能把整个索引全部加载到内存了,只能逐一加载每一个磁盘页(对应索引树的节点)。所以我们要减少IO次数,对于树来说,IO次数...

2019-03-28 19:53:12 134

原创 数仓构建步骤

数据仓库是面向主题的、集成的、不可更新的、随时间的变化而不断变化的,这些特点决定了数据仓库的系统设计不能采用同开发传统的OLTP数据库一样的设计方法。数据仓库系统的原始需求不明确,且不断变化与增加,开发者最初不能确切了解到用户的明确而详细的需求,用户所能提供的无非是需求的大的方向以及部分需求, 更不能较准确地预见到以后的需求。因此,采用原型法来进行数据仓库的开发是比较合适的,因为原型法的思想是从...

2019-03-23 15:26:47 8036

空空如也

空空如也

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

TA关注的人

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