- 博客(50)
- 收藏
- 关注
转载 HDFS - Namenode源码解析(转)
最近重温HDFS Namenode的原理,网上找到的这篇博客讲解的挺好,分享给大家。Namenode的介绍一个典型的HDFS系统包括一个NameNode和多个DataNode。NameNode作为HDFS中文件目录和文件分配的管理者,它保存的最重要信息,就是下面两个映射:文件名=>数据块数据块=>DataNode列表其中,文件名=>数据块保存在磁盘上(持久化);但...
2019-02-20 14:00:44 395
转载 大数据平台架构技术选型与场景运用
导读:本文将大数据的工作角色分为三种类型,包括业务相关、数据科学相关和数据工程。大数据平台偏向于工程方面,大数据平台一般包括数据源、数据采集、数据存储、数据分析等方面。讲师从数据来源、数据源结构、数据变化程度和数据规模等4个维度对数据源进行分类,数据源分类维度的不同决定最后的技术选型。讲师还对数据源分类的定义及选型方式进行详细讲解,最终联系到大数据的应用场景,让数据应用方式更加直观。
2017-06-21 10:21:18 14165 1
转载 用于实时大数据处理的Lambda架构
这篇文章讲的很详细,这里进行转载一下,一起学习进步1.Lambda架构背景介绍Lambda架构是由Storm的作者Nathan Marz提出的一个实时大数据处理框架。Marz在Twitter工作期间开发了著名的实时大数据处理框架Storm,Lambda架构是其根据多年进行分布式大数据系统的经验总结提炼而成。Lambda架构的目标是设计出一个能满足实时大数据系统关键特性的架构
2017-06-19 16:10:55 3003
转载 LSM树由来、设计思想以及应用到HBase的索引
讲LSM树之前,需要提下三种基本的存储引擎,这样才能清楚LSM树的由来:哈希存储引擎 是哈希表的持久化实现,支持增、删、改以及随机读取操作,但不支持顺序扫描,对应的存储系统为key-value存储系统。对于key-value的插入以及查询,哈希表的复杂度都是O(1),明显比树的操作O(n)快,如果不需要有序的遍历数据,哈希表就是your Mr.RightB树存储引擎是B树(关于B树的由来
2017-06-19 10:51:42 439
原创 HBase数据库的元数据提取
在HBase数据库中,我总结的元数据总共包括两种数据,一是所有的表,二是表的元数据和表里面的部分样本数据。下面就是我进行元数据获取的步骤。1 连接到HBase我们要从zookeeper中去获取HBase里面的数据库相关数据,下面是连接的代码: 首先在Maven的pom.xml引入下面的依赖,记住引入的依赖的版本一定要大于等于你们集群使用的版本,之前就是引入低于集群版本的jar包,导致连不上。
2017-05-24 18:00:08 11838 1
原创 Hadoop 多输入和多输出研究(如何在Job History中获取相关信息)
Hadoop FileInputFormat多输入使用FileInputFormat来指定多个输入.当我们使用FileInputFormat.setInputPaths(JobConf conf, Path... inputPaths)FileInputFormat.addInputPaths(JobConf conf, String commaSeparatedPaths)来设定有多个输入路径的
2017-05-11 17:39:15 587
原创 Hadoop Parquet File 文件的读取
产生parquet数据这里通过Spark SQL来从CSV文件中读取数据,然后把这些数据存到parquet文件去。 SparkContext context = new SparkContext(new SparkConf().setMaster("local").setAppName("parquet")); SQLContext sqlCont
2017-05-11 14:10:48 8057 7
转载 Hadoop RCFile存储格式详解(源码分析、代码示例)
RCFile RCFile全称Record Columnar File,列式记录文件,是一种类似于SequenceFile的键值对(Key/Value Pairs)数据文件。 关键词:Record、Columnar、Key、Value。 RCFile的优势在哪里?适用于什么场景?为了让大家有一个感性的认识,我们来看一个例子。 假设我们有这样一张9行3列的Hive数据...
2017-05-10 14:49:51 1453
原创 Hadoop Sequence File 文件的读取和写入
写入代码下面是写入了100条(key,value)的信息,其中以LongWriable为key,以Text作为value. Configuration config = new Configuration(); FileSystem fs = FileSystem.get(conf); int i = 0; Path path = ne
2017-05-09 09:41:12 1293
转载 git checkout : You have local changes cannot switch branches&Entry would be overwritten by mege
摘要:分支切换在Git的使用中可谓是最重要的部分之一,而git checkout还经常被用于回滚当前工作目录——当然,也被用来做 分支切换。因此,这是出错率极高的命令。本文主要为你解析git checkout的两个如标题总的特殊错误,然后分析git checkout的回滚作用。When are not given, this command switches branch
2017-05-04 14:41:56 1310
转载 Ambari 整体架构理解
Ambari是hadoop分布式集群配置管理工具,是由hortonworks主导的开源项目。它已经成为apache基金会的孵化器项目,已经成为hadoop运维系统中的得力助手,引起了业界和学术界的关注。现在我们将深入学习Ambari原理及其架构。Ambari架构采用的是Server/Client的模式,主要由两部分组成:ambari-agent和ambari-server。ambari依赖其它...
2017-04-30 19:44:13 3541
原创 MySQL,HDFS,HBase相似之处
这几天一直在看MySQL底层的一些东西,看到最后,越来越觉得MySQL,HBase,HDFS之间有很多相似的地方,所以在这里来记录这些相似之处,和大家一起学习。1. 预写日志在MySQL Innodb中,有Redo日志和二进制日志。当我们进行数据库更改的时候,更改的操作会记录在Redo日志中,同时也会记录在二进制日志中。Redo日志主要保证了事务的持久性,以后可以通过回放Redo中的修改操作,来进
2017-04-19 12:26:29 2795
转载 git提示error setting certificate verify locations解决办法
错误信息使用TortoiseGit执行pull命令时显示git.exe pull --progress --no-rebase -v "origin"fatal: unable to access 'https://github.com/konsumer/arduinoscope.git/': error setting certificate verify locations:
2017-04-14 19:58:46 1452
转载 分布式理论之一:Paxos算法的通俗理解
维基的简介:Paxos算法是莱斯利·兰伯特(Leslie Lamport,就是 LaTeX 中的"La",此人现在在微软研究院)于1990年提出的一种基于消息传递且具有高度容错特性的一致性算法。Paxos算法目前在Google的Chubby、MegaStore、Spanner等系统中得到了应用,Hadoop中的ZooKeeper也使用了Paxos算法,在上面的各个系统中,使用的算法与Lam
2017-04-12 16:00:35 565
转载 理解B+树算法和Innodb索引
一、innodb存储引擎索引概述:innodb存储引擎支持两种常见的索引:B+树索引和哈希索引。innodb支持哈希索引是自适应的,innodb会根据表的使用情况自动生成哈希索引。B+树索引就是传统意义上的索引,是关系型数据库中最常用最有效的索引。B+树是从最早的平衡二叉树演变而来,但是B+树不是一个二叉树。B+中的B不代表二叉(Binary),而是代表平衡(Balance
2017-04-04 15:32:22 698
原创 腾讯云一面(2017.3.15)
网上关于腾讯云的面试好少,所以在这里记录一下,和大家一起分享面试经验。在3.15号早上,当时还在图书馆看书的时候,突然接到了腾讯云(成都)打来的电话,因为之前在年级群里面申请过,所以在接到电话的时候,自己还是特别兴奋,因为在图书馆不方便说话,果断的约在了下午两点钟。下午两点多一点,电话果然打过来了。于是就开始了一面之旅。 自我介绍 讲述HDFS上传文件和读文件的流程 HDFS在上传
2017-03-20 14:16:06 2217
原创 腾讯云的一道面试题----- 一致性Hash算法
今天在面试腾讯的时候,被面试官问到这块的知识,之前只是了解过,没有真正深入的了解,现在才知道自己的差距,要更加努力的补充这些技术知识了。下面是非常好的这块的资料,和大家一起分享。一致性 hash 算法( consistent hashing )张亮consistent hashing 算法早在 1997 年就在论文 Consistent hashing and random
2017-03-15 22:46:33 8947 1
原创 Spark Graphx - 构建网络代码讲解
这几天在使用微博的数据来做一些分析,我用Spark Graphx来进行微博转发网络的建立。新手哦刚开始学习Spark Graphx时,可能不会使用Spark Graphx来进行关系网络的建立。下面根据官网的例子来进行讲解.下面是官网的代码:val users: RDD[(VertexId, (String, String))] = sc.parallelize(Array((3L, ("rxin
2017-03-10 15:51:45 1139
原创 Permission denied: user=root, access=WRITE, inode="/user":hdfs:supergroup:drwxr-xr-x
今天在使用之前用CDH装的集群中的Hive时,一些常规的操作可以执行,但是使用了select操作的时候就会报出下面的错误:org.apache.hadoop.security.AccessControlException: Permission denied: user=root, access=WRITE, inode="/user":hdfs:supergroup:drwxr-xr-x
2017-02-17 15:10:22 8369
转载 Spark on Yarn Client和Cluster模式详解
Spark在YARN中有yarn-cluster和yarn-client两种运行模式:I. Yarn ClusterSpark Driver首先作为一个ApplicationMaster在YARN集群中启动,客户端提交给ResourceManager的每一个job都会在集群的worker节点上分配一个唯一的ApplicationMaster,由该ApplicationMaster管理全
2017-02-15 17:12:14 3821
原创 Android通过Post上传数据和图片到Servlet
之前在做Android服务端客户端Demo的时候,暂时使用的Servlet来从当服务端,这样的话,当我们需要从Android客户端与服务端进行数据交互的时候,需要从客户端上传数据到Servlet.下面是实例代码:Android上传数据到Servlet代码 //用于提交数据的client HttpClient
2017-02-14 20:27:35 4921
转载 java中函数是值传递还是引用传递?
相信有些同学跟我一样,曾经对这个问题很疑惑。在网上也看了一些别人说的观点,评论不一。有说有值传递和引用传递两种,也有说只有值传递的,这里只说下个人见解先看一个例子public class Test1 { public static void main(String[] args) { int a = 10; changeNum(a);
2017-02-14 17:59:04 243
转载 HBase的RowKey设计原则
Hbase是三维有序存储的,通过rowkey(行键),column key(column family和qualifier)和TimeStamp(时间戳)这个三个维度可以对HBase中的数据进行快速定位。HBase中rowkey可以唯一标识一行记录,在HBase查询的时候,有以下几种方式:通过get方式,指定rowkey获取唯一一条记录 通过scan方式,设置startRow和stopR...
2017-02-13 18:41:27 459
转载 提高mysql千万级大数据SQL查询优化30条经验(Mysql索引优化注意)
转自:http://www.jincon.com/archives/120/1.对查询进行优化,应尽量避免全表扫描,首先应考虑在 where 及 order by 涉及的列上建立索引。2.应尽量避免在 where 子句中对字段进行 null 值判断,否则将导致引擎放弃使用索引而进行全表扫描,如:select id from t where num is null
2017-02-12 23:39:39 370
转载 JDK 1.8 HashMap详细介绍
摘要HashMap是Java程序员使用频率最高的用于映射(键值对)处理的数据类型。随着JDK(JavaDevelopmet Kit)版本的更新,JDK1.8对HashMap底层的实现进行了优化,例如引入红黑树的数据结构和扩容的优化等。本文结合JDK1.7和JDK1.8的区别,深入探讨HashMap的结构实现和功能原理。简介
2017-02-11 14:56:46 1533
转载 GC ROOT的真实含义
作者:RednaxelaFX链接:https://www.zhihu.com/question/53613423/answer/135743258来源:知乎著作权归作者所有,转载请联系作者获得授权。之前看深入理解JVM这本书,对里面的GC ROOT的真实含义不是太清楚,网上查了一大堆资料都没有说的很清楚,下面这是从知乎大神上看到的,这里面记录一下,和大家一起学习
2016-12-18 17:18:19 20097 4
原创 解决 Spark 本地模式 out of memory 和磁盘不足问题
在做Kaggle比赛的时候,中间处理之后的训练数据有5000多万条数据,结果Spark 本地模式运行的时候,一直报出out of memory 问题。我在程序中使用了DataFrame.rdd.collect()方法。RDD的Collect()方法把RDD的数据全部放入到数组中进行返回,5000多万条数据全部放入到数组当中进行返回。当然会内存溢出。通过打印GC日志发现,Eden区域和老年代的空间使用
2016-12-08 23:27:52 6801 1
转载 JVM堆优化与相关配置参数
作者:zhoutao198712链接:http://blog.csdn.net/zhoutao198712/article/details/7783070来源:CSDN博客著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。到目前为止,还没有做明确的优化工作。只是做了初始化选择工作,比如说:JVM部署模型、JVM运行环境、收集哪些垃圾回收器的信息以及需要
2016-12-07 17:56:07 604
转载 Spark 性能优化问题与解决思路
Spark性能优化的10大问题及其解决方案问题1:reduce task数目不合适解决方式:需根据实际情况调节默认配置,调整方式是修改参数spark.default.parallelism。通常,reduce数目设置为core数目的2到3倍。数量太大,造成很多小任务,增加启动任务的开销;数目太少,任务运行缓慢。问题2:shuffle磁盘IO时间长解决方式:
2016-12-07 17:27:29 427
转载 Major GC和Full GC的区别
作者:RednaxelaFX链接:http://www.zhihu.com/question/41922036/answer/93079526来源:知乎著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。之前一直在晚上查找Major GC 和Full GC的区别,最后,看到下面这个回答很详细。所以转载过来,和大家一起学习。针对HotSpot VM的实
2016-12-05 16:06:02 842
转载 Minor GC、Major GC和Full GC
之前在看书的时候,对于major gc和 full gc到底是对老年代回收,还是整个堆回收搞不清。所以专门在网上找了找,找到下面这篇博客挺好的。分享给大家,一起来学习。文章要求读者熟悉 JVM 内置的通用垃圾回收原则。堆内存划分为 Eden、Survivor 和 Tenured/Old 空间,代假设和其他不同的 GC 算法超出了本文讨论的范围。Minor GC从
2016-12-03 19:52:59 349
转载 Spark性能调优相关参数
现在在做kaggle上面的比赛,数据集过大,而且我又是本地模式运行spark,遇到了很多问题,在网上找到了一个比较好的博客内容,介绍了spark的调优,在这里分享给大家。随着Spark的逐渐成熟完善, 越来越多的可配置参数被添加到Spark中来, 本文试图通过阐述这其中部分参数的工作原理和配置思路, 和大家一起探讨一下如何根据实际场合对Spark进行配置优化。
2016-11-21 16:18:54 518
转载 Spark SQL内置函数
在Spark 1.5.x版本,增加了一系列内置函数到DataFrame API中,并且实现了code-generation的优化。与普通的函数不同,DataFrame的函数并不会执行后立即返回一个结果值,而是返回一个Column对象,用于在并行作业中进行求值。Column可以用在DataFrame的操作之中,比如select,filter,groupBy等。函数的输入值,也可以是Column。聚合函
2016-11-01 16:18:19 12225 1
原创 Spark创建DataFrame和读取CSV数据文件
之前写的程序中,有些API在Spark SQLContext没有,我计算的结果先保存在rdd中,最后在使用RDD转换成dataframe进行保存,话不多说下面是代码.//一个StruceFields你可以把它当成一个特征列。分别用列的名称和数据类型初始化 val structFields = List(StructField("age",DoubleType),StructField("hei
2016-10-17 23:58:34 31828 2
原创 HBase操作的基本函数
最近在学习HBase,在这里把操作HBase的基本Api记录一下。以后也能回顾学习: Configuration config = HBaseConfiguration.create(); //设置zookeeper的服务地址,具体自己设置 config.set("","") //设置端口 config.set("",""
2016-10-17 09:37:47 1511
原创 Maven用Scala编译,bad symbolic reference. A signature in package.class refers to type compileTimeOnly
今天再用Maven来编写Spark程序的时候,在使用了SQLContext的API之后,每次编译就是不通过。看错误信息提示了bad symbolic reference. A signature in package.class refers to type compileTimeOnly。这个错误。在网上找了一大堆,都没有找到这个问题的真正解决方法。最后,无意中看了一个博客,最后解决了,所以在这里
2016-10-14 09:55:18 6186
原创 Spark提交作业运行过程
背景 最近在学习Spark源码方面的知识,在这里大概了解了Spark整体的运行过程,从初始化到最终的底层运行。今天在这里进行详细的记录一下。一边以后的回顾和学习。Spark程序运行整体流程当SparkContext初始化完之后,我们通常会使用它来读取外部的数据,使之形成RDD。然后我们会经过一些列的RDD操作之后,到最后一个Action操作。从而触发了Job的提交。在Spark中RDD操作分为两种:
2016-09-11 16:33:25 1117
原创 Spark DataFrame简述和遇到的问题
之前在写Spark Driver程序的时候,因为使用的DataFrame来进行的相关操作,所以今天就总结一下用到的一些东西,同时也分享一下自己遇到的一些问题,让新人能够快速的解决相关的问题.虽然最新的Spark Sql把DataFrame变成了DataSet,但是DataFrame和DataSet这两个操作其实都类似。DataFrame DataFrame其实就是带了元数据的RDD,大家在学习
2016-08-02 22:08:11 3040
原创 Jstorm,RocketMq,Tair浅谈
这次参加了阿里中间件比赛,确实学到了很多,最重要的一点,开阔了自己的视野,让自己对开源的项目跟感兴趣了,以后有时间了要多看看开源的一下项目。开源改变世界,这只是我的看法。好了,今天主要来聊聊这次比赛的两个个开源项目。Jstorm Jstorm主要是一个实时计算的分布式框架,核心的概念主要Nimbus,Worker,Executer,Spout,Bolt,Tuple,Stream.整体依赖于zo
2016-06-10 12:24:01 1705 1
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人