- 博客(22)
- 收藏
- 关注
原创 HIVE MR知识巩固
概念Hive 将 HQL 转换成MapReduce 执行 ,可以说Hive 是基于 hadoop的一个数据仓库工具,实质就是一款基于 HDFS的 MapReduce 计算框架我的大白话解释其实Hive就是基于hdfs以及mr的数据仓库,通过hql进行数据的导入,以及对数据的离线分析。导入数据是将结构化的数据文件映射为一张数据库表,离线分析则是将hql翻译为mr进行执行。相关组件Metas...
2019-02-26 18:52:38
659
原创 flume 学习
Flume 监控一共分为两种监控http监控Flume作为一个强大的数据收集工具,虽然功能非常强大实用,但是却无法看到flume收集数据的详细信息,所以我们需要一个能展示flume实时收集数据动态信息的界面,包括flume成功收集的日志数量、成功发送的日志数量、flume启动时间、停止时间、以及flume一些具体的配置信息,像通道容量等,于是顺利成章的监控能帮我们做到这些,有了这些数据,在遇...
2019-02-20 14:34:13
227
原创 ThreadLocal volatile
ThreadLocal:ThreadLocal,很多地方叫做线程本地变量,也有些地方叫做线程本地存储,其实意思差不多。可能很多朋友都知道ThreadLocal为变量在每个线程中都创建了一个副本,那么每个线程可以访问自己内部的副本变量。每一个ThreadLocal能够放一个线程级别的变量,可是它本身能够被多个线程共享使用,并且又能够达到线程安全的目的,且绝对线程安全。ThreadLocal是用...
2019-02-12 16:58:11
603
原创 8大排序算法
- [ ] 冒泡排序很简单,用到的很少,据了解,面试的时候问的比较多!将序列中所有元素两两比较,将最大的放在最后面。将剩余序列中所有元素两两比较,将最大的放在最后面。重复第二步,直到只剩下一个数1 public void bubbleSort(int []a){2 int len=a.length;3 for(int i=0;i<l...
2019-02-12 15:55:39
216
原创 BIO NIO AIO
BIO是一个连接一个线程。NIO是一个请求一个线程。AIO是一个有效请求一个线程Java对BIO、NIO、AIO的支持:Java BIO : 同步并阻塞,服务器实现模式为一个连接一个线程,即客户端有连接请求时服务器端就需要启动一个线程进行处理,如果这个连接不做任何事情会造成不必要的线程开销,当然可以通过线程池机制改善。Java NIO : 同步非阻塞,服务器实现模式为一个请求一个线程,即...
2019-02-12 15:43:38
127
原创 数据库(mysql)
数据库的结构(Tree)B 树:是一种多路搜索树B 树的搜索,从根结点开始,对结点内的关键字(有序)序列进行二分查找,如果命中则结束,否则进入查询关键字所属范围的儿子结点;重复,直到所对应的儿子指针为空,或已经是叶子结点;B 树的特性:1.关键字集合分布在整颗树中;2.任何一个关键字出现且只出现在一个结点中;3.搜索有可能在非叶子结点结束;4.其搜索性能等价于在关键字全集内做一...
2019-02-12 15:14:24
172
原创 数据结构(HashMap和ConcurrentHashMap )
应为面试中数据结构方面问的最多的就是hashMap,所以今天对hashMap做了一个总结。HashMap实际上是一个“链表散列”的数据结构,即数组和链表的结合体。数组:存储区间连续,占用内存严重,寻址容易,插入删除困难;链表:存储区间离散,占用内存比较宽松,寻址困难,插入删除容易;Hashmap综合应用了这两种数据结构,实现了寻址容易,插入删除也容易。hashMap结构紫色部分即代表...
2019-02-12 13:54:50
677
原创 JVM内存模型&&垃圾回收
概述:虚拟机自动内存管理机制下,不再需要像C/C++程序开发程序员这样为内一个new 操作去写对应的delete/free操作,不容易出现内存泄漏和内存溢出问题。正是因为Java程序员把内存控制权利交给Java虚拟机,一旦出现内存泄漏和溢出方面的问题,如果不了解虚拟机是怎样使用内存的,那么排查错误将会是一个非常艰巨的任务运行时数据区域:Java虚拟机在执行Java程序的过程中会把它管理的内存...
2019-01-09 16:51:38
230
原创 jvm类加载过程
类从被加载到JVM中开始,到卸载为止,整个生命周期包括:加载、验证、准备、解析、初始化、使用和卸载七个阶段。其中类加载过程包括加载、验证、准备、解析和初始化五个阶段。类加载器的任务就是根据一个类的全限定名来读取此类的二进制字节流到JVM中,然后转换为一个与目标类对应的java.lang.Class对象实例。BootstrapClassLoader、ExtClassLoader和AppClas...
2019-01-08 19:15:22
142
原创 分布式事物实现方式
事物特性(acid)原子性(A)所谓的原子性就是说,在整个事务中的所有操作,要么全部完成,要么全部不做,没有中间状态。对于事务在执行中发生错误,所有的操作都会被回滚,整个事务就像从没被执行过一样。一致性(C)事务的执行必须保证系统的一致性,就拿转账为例,A有500元,B有300元,如果在一个事务里A成功转给B50元,那么不管并发多少,不管发生什么,只要事务执行成功了,那么最后A账户一定是4...
2019-01-08 16:51:43
764
原创 三种分布式锁的实现
数据库实现分布式锁https://blog.youkuaiyun.com/nihaoa50/article/details/79569603https://blog.youkuaiyun.com/tianjiabin123/article/details/72625156redis实现分是不是锁http://www.cnblogs.com/linjiqin/p/8003838.htmlzk实现分布式锁分布式事...
2019-01-08 15:05:30
331
转载 Spark 性能调优
最近在学习spark,spark相对于mr来说他的dag模型和内存管理确实很大的提高了性能,但是Spark开发出高性能的大数据计算作业,并不是那么简单的。想要spark最大的发挥他的优势,需要在很多方面进行调优。基础篇1. 开发调优开发调优主要就是对于算法的理解以及使用,也是最基础的部分。1.尽可能复用同一个RDD,这样可以尽可能地减少RDD的数量,从而尽可能减少算子执行的次数2.对多次...
2018-12-27 16:03:49
376
原创 Spark Streaming运行架构以及代码详解
1. 运行架构spark Streaming相对其他流处理系统最大的优势在于流处理引擎和数据处理在同一软件栈,其中Spark Streaming功能主要包括流处理引擎的流数据接收与存储以及批处理作业的生成与管理,而Spark Core负责处理Spark Streaming发送过来的作业。Spark Streaming分为Driver端和Client端,运行在Driver端为StreamingCo...
2018-12-25 10:28:08
648
原创 Spark基础入门
最近在研究spark,spark现在可以算是最流行的大数据计算框架啦,mr只能进行离线计算的批处理,presto,implala进行交互式查询,storm只能进行流计算,而spark恰恰集成了这些。我这篇文章只进行基础入门的介绍(系统架构,运行模式)。- spark和mr的比较spark把计算中间数据放到内存(cache,persist),mr的map阶段和ruduce阶段都需要进行溢写落...
2018-11-26 16:13:11
191
原创 HiveSql(未更新完)
create table if not exists brand_dimension(bid STRING,category STRING,brand STRING)ROW FORMAT DELIMITEDFIELDS TERMINATED BY ',‘;创建表 导入数据字段按逗号分隔开。其他分隔符为‘/001’ 。load data local inpath ‘/hivedata/...
2018-11-12 15:13:31
180
原创 资源调度框架YARN解析
Yarn作为Hadoop的资源调度框架,承担着扩展Hadoop的重要责任,我们配置Spark时就使用了Spark on Yarn的配置方法,这里简单介绍一些YARN的工作原理,有助于理解整个系统处理作业的过程。在配置好的Hadoop环境中,我们输入jps查看进程,可以看到,master节点上的ResourceManager和slave节点上的NodeManager就是属于Yarn的进程。几个需...
2018-11-12 10:46:22
324
原创 Zookeeper原理解析
数据一致性原则:在一个分布式数据库系统中,如果各节点的初始状态一致,每个节点都执行相同的操作序列,那么他们最后能得到一个一致的状态(最终一致性)所以客户端可以获取最近一段时间数据,不一定是最新的(最终一致性)Zookeeper是分布式协调服务 ,它是集群的管理者,监视着集群中各个节点的状态,根据节点的反馈进行下一步合理操作。Zookeeper的核心是原子广播,这个机制保证了各个Server...
2018-11-11 19:45:52
255
原创 Hadoop之MapReduce的原理学习
前言虽然mapreduce几乎已经被淘汰,但是他的原理机制还是需要去了解深挖的,他的分而治之的理念差不多是贯通整个大数据的框架的,spark,flink都借鉴了其分而治之的理念,下面是我总结的mapReduce的模型,结构,以及原理。写的不好,请见谅!!!虽然mapreduce几乎已经被淘汰,但是他的原理机制还是需要去了解深挖的,他的分而治之的理念差不多是贯通整个大数据的框架的,spark,fl...
2018-11-11 17:38:48
263
原创 HBASE常见问题
HBase搭建过程中需要注意什么是否使用外部ZooKeeper,这个一般使用Hadoop集群的ZooKeeper集群即可。HBASE_MANAGES_ZK=falsehbase-site.sh的配置hbase.zookeeper.quorum=“host1:2181,host2:2181”HBase优化方法1减少调整减少调整这个如何理解呢?HBase中有几个内容会动态调整,如reg...
2018-11-05 13:19:51
773
原创 分布式存储HBASE原理学习
HBase定义HBase 是一个高可靠、高性能、面向列、可伸缩的分布式存储系统,利用Hbase技术可在廉价PC Server上搭建 大规模结构化存储集群。HBase 是Google Bigtable 的开源实现,与Google Bigtable 利用GFS作为其文件存储系统类似, HBase 利用Hadoop HDFS 作为其文件存储系统;Google 运行MapReduce 来处理Bigta...
2018-11-05 13:19:34
515
原创 消息中间件kafka学习总结
消息中间件kafka学习总结Kafka简介Kafka是一种分布式的,基于发布/订阅的消息系统。消息中间件优点1.解耦:在开始开发时,可以将产出的不一定明确的数据放入消息系统,这样可以保证最大程度的解耦和性,如果事soa或者微服务架构的话,其他模块想要有交集的时候直接去访问消息系统就可以,两个系统之间会保证独立,不回产生交集。2.缓冲:数据可以不必直接存入数据库,这样减少了数据库的压力,小...
2018-10-29 15:07:22
570
1
原创 HADOOP之HDFS学习
HDFS原理以及读写流程最近从零开始学习大数据,所以也开始学习他的一些框架,这是我所理解的hdfs[ ] 1.HDFS系统架构 2.三个角色 Client:客户端,系统使用者,调用HDFS API操作文件;与NN交互获取文件元数据;与DN交互进行数据读写 Namenode存储:文件系统的命名空间,文件名称,文件目录结构,文件的属性[权限,创建时间,副本数];文件对应哪些数据...
2018-10-09 14:35:00
286
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人