- 博客(27)
- 收藏
- 关注
原创 亿万级数据规模下倾斜调优
本文摘录自 腾讯OMG广告平台产品技术黑板报 王浙明 数据倾斜是海量数据处理的一个常见而又棘手的问题,如果在大的数据处理过程中出现了数据倾斜,会大大造成了资源的浪费和降低了效率,而有时候数据倾斜又是隐性,往往没有对数据进行分析就进行处理的话很容易掉入数据倾斜的陷阱里。 那么什么是数据倾斜,我们简单去概述一下。比如说在某个数据处理的过程中,有1000个task去执行,而998个task...
2019-02-15 23:09:36 251
原创 总结几种简单的排序
插入排序: 这个排序属于稳定排序(两个相等的数据在排序前和排序后的相对位置没有改变),它的时间复杂度平均为 O(n2)。排序的过程可以大体概述为(按升序):第n项数值和前(n-1)项的所有数字比较,如果第n项的数值比这所有n-1项的数字都大,则位置不变,如果发现第n项比前n-1项数字小,则这两个数据互换位置,换完之后再和当前位置之前的数字进行比较,依次类推。借一副比较好的图和大家说明: ...
2019-02-05 21:36:12 317 1
原创 Shuffle原理
· MapReduce是怎样为数据进行分组,整合等操作的呢?这就涉及到Map和Reduce在中间十分关键的衔接部分Shuffle。上面介绍了Map 和 Reduce的各自的任务和总的流程,MapReduce是怎样为数据进行分组,整合等操作的呢?这就涉及到Map和Reduce在中间十分关键的衔接部分Shuffle。 什么是shuffle?shuffle原意是洗牌,混乱。而在MapReduce...
2019-01-10 23:49:40 310
原创 MapReduce运行原理
概述:· 1.MapReduce是Hadoop用于分布式计算的模式。所谓分布式计算就是将一个大型计算任务分成很多部分,分别交给其他计算机处理,并将所有计算结果合并为原问题的解决方案。· 2.是Doug根据谷歌的论文《Google MapReduce》实现了Hadoop中基于HDFS的MapReduce· 3.MapReduce主要分为两个阶段:Map和Reduce。简单的工作流程为:...
2019-01-10 23:42:28 245
转载 HDFS优缺点
优点:1.支持超大文件 支持超大文件。超大文件在这里指的是几百M,几百GB,甚至几TB大小的文件。一般来说hadoop的文件系统会存储TB级别或者PB级别的数据。所以在企业的应用中,数据节点有可能有上千个。2.检测和快速应对硬件故障 在集群的环境中,硬件故障是常见的问题。因为有上千台服务器连接在一起,这样会导致高故障率。因此故障检测和自动恢复(心跳机制)是hdfs文件系统的一个设计目标...
2019-01-04 23:24:57 537
原创 HDFS的具体读、写、删除操作流程
一、读取流程· 1.客户端通过RPC(远程过程调用,特点:能够让客户端人员更加注重业务流程,而不是文件的发送)请求访问NameNodeNameNode查询元数据,获取到文件的存储路径,将文件的所对应全部或者部分(面对多个文件块)文件块的存储路径放入一个队列中再发送给客户端(NameNode给client返回的是内网IP,如果是自己的云主机,要去找对应的vpn,否则无法访问。) 2.客户...
2019-01-04 23:21:34 748
原创 hadoop安装后DataNode无法启动
原因: 其中一个原因是由于多次格式化数据目录而导致NameNode中的clusterID和DadaNode中的clusterID不一致 当我们执行文件系统格式化时,会在namenode数据文件夹(即配置文件中dfs.name.dir在本地系统的路径)中保存一个current/VERSION文件,记录namespaceID,标识了所格式化的 namenode的版本。 如果我们频繁的格式...
2019-01-04 23:07:38 502
原创 HDFS---dfs目录
· 在hadoop的目录中有一个dfs目录,它对于HDFS十分关键,下面我们就介绍一下其子目录以及他们各自的作用:1.存储HDFS中的数据2.子目录:a.data表示DateNode存储数据的目录b.name表示NameNode存储元数据的目录c.namesecondary表示SecondaryNameNode存储元数据的目录3.节点刚格式化完成之后,会自动产生一个dfs/name...
2019-01-03 23:41:43 2408
原创 HDFS---回收站
一、概述 1.HDFS回收站默认不开启· 2.Deletion interval = 0 minutes 表示清空周期为0,就以为这如果将数据放入回收站,立即删除· 3.配置回收站 编辑core –site.xml 添加如下内容<property> <name>fs.trash.interval</name> <value...
2019-01-03 23:35:40 144
原创 HDFS--梳理各个模块的功能与关系
概述· 1.HDFS是hadoop的一个组件 全称:Hadoop Distributed File System,专门存储超大数据文件,为整个Hadoop生态圈提供了基础的存储服务。一、技术细节 1.用于管理的节点称之为NameNode 2.用于存储的节点称之为DataNode 3.元数据:用于存储NameNode寻找DataNode的信息存储的信息: a.文件...
2019-01-03 23:29:12 2440 1
原创 JVM原理
· JVM是Java Virtual Machine(Java虚拟机)的缩写,JVM是一种用于计算设备的规范,它是一个虚构出来的计算机,是通过在实际的计算机上仿真模拟各种计算机功能来实现的。 JAVA之所以是跨平台的语言,就是因为JVM。在不同的平台上有相应的JVM,这样我们写的java语言是相同的,在不同的操作系统中就可以游刃有余。实质上,JVM是JAVA跨平台的重要核心。一、JVM...
2018-12-31 19:01:32 825
原创 高并发之Concurrent
一、阻塞队列概念: 本身是一种队列(先进先出)数据结构,和其他队列比起来,多了阻塞机制,从而可以在多个线程之间进行存取队列的操作,而不会有线程并发安全问题.所以称之为阻塞式队列。可以简单的理解为,阻塞式队列是专门设计用来在多个线程间通过队列共享数据。 运行原理: 在阻塞式队列中,如果队列满了,仍然有线程向其中写入数据,则这次写入操作会被阻塞住,直到有另外的线程从队列中消费了数据,队...
2018-12-29 00:09:54 675
原创 程序员的眼光,能不能稍稍注意一下另一个角落-----一段自我反思
· 我们学习网络信息技术是为了什么?是为了兴趣,高薪,还是只是找一份糊口的工作。漫天飞舞的信息,无所不在的科技成果,说白了不就是为人服务,让人们享受更加便捷的生活,更加优质的服务。然而,我们可能会忽略了另外一个世界。 他们交通不便,可能上学只能通过铁索;他们父母外出打工,可能成长只是活着的一部分;他们看不到外面的世界,所以只知道结婚、生娃、打工。也许有人会问,现在科技这么发达,吃个饭都能让别...
2018-12-25 21:55:52 103
原创 HashMap和Hashtable的几个区别
· HashMap和Hashtable对于程序员来说十分重要,在两者的性质,应用场景,底层的计算,存储的结构等方面都需要我们很好的掌握。那么,两者到底有什么本质上的区别呢?一、线程的安全性· Hashtable是线程安全的,HashMap不是线程安全的。为什么前者是线程安全的呢?我们这时就要看看Hashtable的源码了: public synchronized Map pu...
2018-12-20 23:33:48 273
原创 Python超级简单入门学习 面向对象
面向对象1.创建类 使用class语句来创建一个新类,class之后为类的名称并以冒号结尾,其中类的体的第一行可以写一个字符串,作为该类的文档声明,这个文档声明可以通过 ClassName.__doc__查看:class ClassName: '类的帮助信息' #类文档字符串 class_suite #类体· 类的体中可以包含 成员属性 成员...
2018-12-16 00:09:07 151
原创 Python超级简单入门学习 Urllib库
python爬虫基础之Urllib库1.案例1:访问url读取返回结果import urllib2response = urllib2.urlopen("http://www.网址.com")print (response.read()) 说明:urlopen(url, data, timeout) 第一个参数url即为URL,第二个参数data是访问URL时要传送的数据,第三...
2018-12-15 23:58:51 126
原创 Python超级简单入门学习 爬虫的概述
1.爬虫技术概述 · 爬虫,即网络爬虫,就像一个蜘蛛一样在网络的这张大网上爬来爬去,这只蜘蛛可爬到任何一个能去到的地方,去寻找自己需要的信息和价值。通过递归访问网络资源,抓取网络中信息的技术。 互联网中也有大量的有价值的信息数据,手动下载效率非常低下,爬虫就是自动化爬取下载些有价值的信息的技术。 互联网中的页面往往不是独立存在的,而是通过超链接连接成了一个网络,爬虫就像一只蜘蛛...
2018-12-15 23:48:50 215
原创 Python超级简单入门学习之基本语法六 异常
异常机制*1.Python内置的异常BaseException :所有异常的基类SystemExit :解释器请求退出KeyboardInterrupt :用户中断执行(通常是输入^C)Exception :常规错误的基类StopIteration :迭代器没有更多的值GeneratorExit ...
2018-12-15 23:34:04 82
原创 Python超级简单入门学习之基本语法五 IO
重要API IO1.打印print(“abc”)2.键盘读取 raw_input函数读取键盘 这种方式的读取,会将输入当作一个字符串返回str = raw_input(“请输入:”);input函数读取键盘 这种方式的读取,会将输入当作一个表达式执行,返回的是表达式执行后的结果str = input(“请输入:”);3.读写文件open函数操作文件 file...
2018-12-08 23:32:46 96
原创 Python超级简单入门学习之基本语法四 模块和包
python语法02: 模块和包1.模块的概念 Python 模块(Module),是一个 Python 文件,以 .py 结尾,其中包含了 Python 对象定义和Python语句。简单来说,一个 Python文件就是一个模块。 Python是以模块为单位来有结构的组织项目的。把相关的代码分配到一个模块里能让你的代码更好用,更易懂。模块能定义函数,类和变量,模块里也能包含可执行的代...
2018-12-08 23:20:46 127
原创 Python超级简单入门学习之基本语法三 函数
函数1.定义函数a.普通函数定义 通过def关键字定义函数,之后跟函数名称和小括号包裹的参数列表,之后跟一个冒号,在其后编写函数体。函数体的第一行内容 ,可以直接是一个字符串,此字符串不影响函数体的内容,相当于是该方法的文档声明,用来描述函数的功能,可以在后续查看。函数内容需要缩进。 通过return关键字在函数内部返回,并可以选择性返回一个返回值,如果return后没有明确的...
2018-12-08 23:16:03 130
原创 大数据时代---告诉你大数据为世界带来的改变
· 什么是大数据,相信有很多人只是听过,而并不了解大数据的真正含义。 我们正逐渐被海量的数据吞噬,现代的科技让我们的每一个举动都可以转化为数据,从这些数据中我们可以得到很多有价值的信息。全球知名咨询公司麦肯锡最早提出大数据时代,麦肯锡称:“数据,已经渗透到当今每一个行业和业务职能领域,成为重要的生产因素。人们对于海量数据的挖掘和运用,预示着新一波生产率增长和消费者盈余浪潮的到来。” “...
2018-12-01 00:57:41 2588
原创 Python超级简单入门学习之基本语法一
python语法01:基本语法语法细节a. 编码python2默认使用iso8859-1,python3模式使用utf-8如果python文件本身的编码和以上编码不一致会出现乱码问题此时可以在文件中通过如下注释通知解释器解析当前文件时采用的编码,两码一致可以解决乱码:123 # -*- coding: UTF-8或#coding=ut...
2018-12-01 00:05:05 244
原创 Python超级简单入门学习之傻瓜式安装(配置环境变量与Eclipse)
Python的安装和使用1.Python安装配置访问Python官方网站,下载Python安装包http://www.python.org/download/Python目前分为两大版本,互不兼容:2.x.x3.x.x双击安装:python-2.7.13.amd64.msi设置环境变量:1.找到python的安装路径:复制状态栏中的路径2.在控制面板下找到系统与安全选项:...
2018-11-29 00:13:28 625
原创 Python超级简单入门学习之python的前世今生
本文章从概述,应用方面以及特点等方面介绍python,让初学者从认识之初就喜欢上python
2018-11-28 23:35:13 180
原创 java入门学习之java简介
JAVA入门学习之java简介一、JAVA之父James Gosling博士以“Java技术之父”闻名于世。他是Java技术的创始人,作为Sun研究院院士,亲手设计了Java语言,完成了Java技术的原始编译器和虚拟机。在他的带领下,Java现已成为互联网的标准编程模式以及分布式企业级应用的事实标准,其跨平台的技术优势为网络计算带来了划时代的变革。目前,Gosling博士积极致力于软件开发工具...
2018-11-28 00:41:52 180
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人