大数据运算模型 MapReduce 原理 2016-01-24 杜亦舒 MapReduce 是一个大数据集合的并行运算模型,由google提出,现在流行的hadoop中也使用了MapReduce作为计算模型 MapReduce 通俗解释 图书馆要清点图书数量,有10个书架,管理员为了加快统计速度,找来了10个同学,每个同学负责统计一个书架的图书数量张同学 统计 书架1王同学 统计 书架2刘同学 统计 书架3......过了一会儿,10个同学陆续到管理员这汇报自己的统计数字,管理员把各个数字加起来…
引言 在上一篇 大数据学习系列之四 ----- Hadoop+Hive环境搭建图文详解(单机) 和之前的大数据学习系列之二 ----- HBase环境搭建(单机) 中成功搭建了Hive和HBase的环境,并进行了相应的测试.本文主要讲的是如何将Hive和HBase进行整合. Hive和HBase的通信意图 Hive与HBase整合的实现是利用两者本身对外的API接口互相通信来完成的,其具体工作交由Hive的lib目录中的hive-hbase-handler-*.jar工具类来实现,通信原理如下图…
作者: seriouszyx 首发地址:https://seriouszyx.top/ 代码均可在 Github 上找到(求Star) 最近想要了解一些前沿技术,不能一门心思眼中只有 web,因为我目前对 Java 语言及其生态相对熟悉,所以在网上搜集了 Hadoop 相关文章,并做了整合. 本篇文章在于对大数据以及 Hadoop 有一个直观的概念,并上手简单体验. Hadoop 基础概念 Hadoop 是一个用 Java 实现的开源框架,是一个分布式的解决方案,将大量的信息处理所带来的压力分摊…
MapReduce MapReduce是什么? MapReduce源自于Google发表于2004年12月的MapReduce论文,是面向大数据并行处理的计算模型.框架和平台,而Hadoop MapReduce是Google MapReduce克隆版. 如果没有MapReduce! 那么在分布式计算上面将很难办,不好编程. 在早期无法处理大数据的离线计算. 编程中不易扩展性 分布式计算任务一旦挂了,没有容错机制进行处理 说明:MapReduce不擅长的方面(慢!) 实时计算:像MySQL一样,在…
部署规划 HBase全称叫Hadoop Database,它的数据存储在HDFS上.我们的实验环境依然基于上个主题Hive的配置,参考大数据学习(11)-- Hive元数据服务模式搭建. 在此基础上,增加HBase的部署规划.我感觉这8G的内存马上要跑不动了. 主机 RegionServer Master server01  •   server02  •   server03  • • 安装HBase 把HBase解压到/usr目录下,版本是2.26. [root@server01 home]…
引言 在大数据学习系列之一 ----- Hadoop环境搭建(单机) 成功的搭建了Hadoop的环境,在大数据学习系列之二 ----- HBase环境搭建(单机)成功搭建了HBase的环境以及相关使用介绍.本文主要讲解如何搭建Hadoop+Hive的环境. 一.环境准备 1,服务器选择 本地虚拟机 操作系统:linux CentOS 7 Cpu:2核 内存:2G 硬盘:40G 说明:因为使用阿里云服务器每次都要重新配置,而且还要考虑网络传输问题,于是自己在本地便搭建了一个虚拟机,方便文件的传输以…
引言 在上一篇中 大数据学习系列之五 ----- Hive整合HBase图文详解 : http://www.panchengming.com/2017/12/18/pancm62/ 中使用Hive整合HBase,并且测试成功了.在之前的大数据学习系列之一 ----- Hadoop环境搭建(单机) : http://www.panchengming.com/2017/11/26/pancm55/ 中成功的搭建了Hadoop的环境,本文主要讲的是Hadoop+Spark 的环境.虽然搭建的是单机版,…
引言 在之前的大数据学习系列中,搭建了Hadoop+Spark+HBase+Hive 环境以及一些测试.其实要说的话,我开始学习大数据的时候,搭建的就是集群,并不是单机模式和伪分布式.至于为什么先写单机的搭建,是因为作为个人学习的话,单机已足以,好吧,说实话是自己的电脑不行,使用虚拟机实在太卡了... 整个的集群搭建是在公司的测试服务搭建的,在搭建的时候遇到各种各样的坑,当然也收获颇多.在成功搭建大数据集群之后,零零散散的做了写笔记,然后重新将这些笔记整理了下来.于是就有了本篇博文. 其实我在搭…
前言 在之前的大数据学习系列之七 ----- Hadoop+Spark+Zookeeper+HBase+Hive集群搭建 中介绍了集群的环境搭建,但是在使用hive进行数据查询的时候会非常的慢,因为hive默认使用的引擎是MapReduce.因此就将spark作为hive的引擎来对hbase进行查询,在成功的整合之后,我将如何整合的过程写成本篇博文.具体如下! 事前准备 在进行整合之前,首先确保Hive.HBase.Spark的环境已经搭建成功!如果没有成功搭建,具体可以看我之前写的大数据学习系…
大数据学习之Linux基础 01:Linux简介 linux是一种自由和开放源代码的类UNIX操作系统.该操作系统的内核由林纳斯·托瓦兹 在1991年10月5日首次发布.,在加上用户空间的应用程序之后,成为Linux操作系统. Linux也是自由软件和开放源代码软件发展中最著名的例子. 应用:长时间的运行编写的程序代码,可以安装在各种计算机硬件设备中,如: 手机.平板电脑.路由器等 安卓最底层运行在linux. 02:Linux的分类 各种版本 1->Linux根据市场的需求不同,基本分两个方向…
Storm是一个分布式的.高容错的实时计算系统.Storm适用的场景: 1.Storm可以用来用来处理源源不断的消息,并将处理之后的结果保存到持久化介质中. 2.由于Storm的处理组件都是分布式的,而且处理延迟都极低,所以可以Storm可以做为一个通用的分布式RPC框架来使用. 那么下面就对大数据学习思路里的strom流式计算进行简单分解,了解一下在学习大数据中应该了解哪些流式计算的知识. 1.redis缓存系统大纲 学习内容:Redis的特点.安装如何使用命令客户端,redis的字符串类型.…
hadoop生态系统 zookeeper负责协调 hbase必须依赖zookeeper flume 日志工具 sqoop 负责 hdfs dbms 数据转换 数据到关系型数据库转换 大数据学习群119599574 hbase简介 hadoop database 是一个高可靠性.高性能.面向列.可伸缩.实时读写的分布式数据库 利用Hadoop HDFS作为其文件存储系统,利用Hadoop MapReduce 来处理Hbase中的海量数据,利用Zookeeper作为其分布式系统服务 主要用来存储非结…
1.Hadoop生态概况 Hadoop是一个由Apache基金会所开发的分布式系统集成架构,用户可以在不了解分布式底层细节情况下,开发分布式程序,充分利用集群的威力来进行高速运算与存储,具有可靠.高效.可伸缩的特点. 大数据学习资料分享群119599574 Hadoop的核心是YARN,HDFS,Mapreduce,常用模块架构如下 2.HDFS 源自谷歌的GFS论文,发表于2013年10月,HDFS是GFS的克隆版,HDFS是Hadoop体系中数据存储管理的基础,它是一个高度容错的系统,能检测…
Java集合框架学习笔记 1. Java集合框架中各接口或子类的继承以及实现关系图: 2. 数组和集合类的区别整理: 数组: 1. 长度是固定的 2. 既可以存放基本数据类型又可以存放引用数据类型 3. 存放进数组的必须是相同类型的数据 VS 集合类: 1. 长度是可变的 2. 只能存放对象的引用 3. 存放进集合的可以是不同的数据类型 3. 集合类常用API源码分析 在之后的大数据学习中,灵活运用各种各样的数据结构可以说是一项基本技能了,因此,了解各种数据结构的底层源码将有助于用户更好地使用各…
一.Linux lucene: 全文检索引擎的架构 solr: 基于lucene的全文搜索服务器,实现了可配置.可扩展并对查询性能进行了优化,并且提供了一个完善的功能管理界面. 推荐一个大数据学习群 142974151每天晚上20:10都有一节[免费的]大数据直播课程,专注大数据分析方法,大数据编程,大数据仓库,大数据案例,人工智能,数据挖掘都是纯干货分享, 二.Hadoop HDFS: 分布式存储系统,包含NameNode,DataNode.NameNode:元数据,DataNode.Data…
1. hive的简介(具体见文档) Hive是分析处理结构化数据的工具   本质:将hive sql转化成MapReduce程序或者spark程序 Hive处理的数据一般存储在HDFS上,其分析数据底层的实现是MapReduce/spark,执行程序运行在Yarn上 其大致可以按如下图理解(具体可见HIVE文档) sql语句是对某个表进行操作,所以hive一定要创建一个表格,这个表格必须要映射到hdfs中某个具体的文件才行,而映射关系.表的结构数据以及hdfs中数据的存储结构都会在创建表时规定,…
大数据学习之Linux进阶 1-> 配置IP 1)修改配置文件 vi /sysconfig/network-scripts/ifcfg-eno16777736 2)注释掉dhcp #BOOTPROTO="dhcp" 3)添加配置(windows->ipconfig -all) IPADDR=192.168.50.179 NETMASK=225.255.255.0 GATEWAY=192.168.50.1 DNS1=219.141.136.10 4)重启网卡 service…
HDFS基本API的应用(包含IDEA的基本设置) 在上一篇博客中,本人详细地整理了如何从0搭建一个HA模式下的分布式Hadoop平台,那么,在上一篇的基础上,我们终于可以进行编程实操了,同样,在编程前需要做一些准备工作,好了,那我们就开始吧! 1. 编程准备 在后续的学习中,我们基本都是在用IntelliJ IDEA这款集成开发环境,所以在Windows端,我们首先需要准备以下这三款软件: 1)IntelliJ IDEA软件下载并安装,盗版即可,激活码自己上百度搜,本人使用的版本是Intell…
Linux环境搭建完整操作流程(包含mysql的安装步骤) 从现在开始,就正式进入到大数据学习的前置工作了,即Linux的学习以及安装,作为运行大数据框架的基础环境,Linux操作系统的重要性自然不言而喻,我将分成两个部分来做梳理,第一部分是实操部分,即整个从0搭建Linux的完整操作流程,第二部分是理论部分,将会梳理Linux操作系统的各种指令以及基本知识,好了,那么我们开始吧! 1. 安装准备 安装Linux虚拟机之前我们首先要准备两个东西:VMware以及Centos的镜像文件 安装VMw…
大数据学习之BigData常用算法和数据结构 1.Bloom Filter     由一个很长的二进制向量和一系列hash函数组成     优点:可以减少IO操作,省空间     缺点:不支持删除,有误判     如果要支持删除操作: 改成计数布隆过滤器 2.SkipList(跳表)     核心思路: 由多层组成,每层都是一个有序链表,最底层包含所有元素,元素数逐层递减.每个节点包含两个指针,一个->,一个向下. 并行编程情况下可以用锁或者CAS操作.     CAS:     compare…
##大数据学习 古斌6.6 01. linux系统的搭建: 选用 Contos 6.5 x64位系统 (CentOS-6.5-x86_64-minimal.iso) 我选择的为迷你版 模板机: blank ip 192.168.6.10 克隆机: bigdata01 ip:192.168.6.11 域名:bigdata01 bigdata02 ip:192.168.6.12 域名:bigdata02 bigdata03 ip:192.168.6.13 域名:bigdata03 bigdata04…
更多内容见文档 1. 区域字典的生成 mysql中有如下表格数据 现要将这类数据转换成(GEOHASH码, 省,市,区)如下所示 (1)第一步:在mysql中使用sql语句对表格数据进行整理(此处使用到了自关联,具体见文档大数据学习day03) create table area_dict as SELECT a.BD09_LNG as lng, a.BD09_LAT as lat, a.AREANAME as district, b.AREANAME as city, c.AREANAME a…
1. Redis Redis是目前一个非常优秀的key-value存储系统(内存的NoSQL数据库).和Memcached类似,它支持存储的value类型相对更多,包括string(字符串).list(链表).set(集合).zset(sorted set有序集合)和hash(哈希类型). 1.1 redis的安装(源码安装方式,官网供下载的redis,没有编译的,需要自己编译) (1)下载redis4的稳定版本 (2)上传redis-4.0.14.tar.gz到Linux服务器 (3)解压re…
1. 练习 数据: (1)需求1:统计有过连续3天以上销售的店铺有哪些,并且计算出连续三天以上的销售额 第一步:将每天的金额求和(同一天可能会有多个订单) SELECT sid,dt,SUM(money) day_money FROM v_orders GROUP BY sid,dt 第二步:给每个商家中每日的订单按时间排序并打上编号 SELECT sid,dt,day_money, ROW_NUMBER() OVER(PARTITION BY sid ORDER BY dt) rn FROM…
Hadoop编程实战——Mapreduce基本功能实现 此篇博客承接上一篇总结的HDFS编程实战,将会详细地对mapreduce的各种数据分析功能进行一个整理,由于实际工作中并不会过多地涉及原理,因此,掌握好mapreduce框架将会有助于了解sql语句在大数据场景下的底层实现原理,从而能够帮助开发人员优化sql语句,提高查询速度,废话不多说,现在正式开始吧! 1. Mapreduce入门——word count实现 一个基本的mapreduce程序一般要写三个类,Mapper类,Reducer…
文章目录 一 MapReduce概念 1.1 为什么要MapReduce 1.2 MapReduce核心思想 1.3 MapReduce进程 1.4 MapReduce编程规范(八股文) 1.5 MapReduce程序运行流程分析 二 MapReduce理论篇 2.1 Writable序列化 2.1.1 常用数据序列化类型 2.1.2 自定义bean对象实现序列化接口 2.2 InputFormat数据切片机制 2.2.1 FileInputFormat切片机制 2.2.2 CombineTex…
Hadoop1.x中的MapReduce MapReduce作为Hadoop最核心的两个组件之一,在1.0版本中就已经存在了.它包含这么几个角色: Client 多数情况下Client的作用就是向服务端发送请求并返回结果.但是在MapReduce里,Client的作用可不小. Client根据传入的数据参数,向HDFS的NameNode获取元数据信息,计算出Map任务的split切片信息.split跟Block有映射关系,Client可以计算出split在文件中的偏移量,再根据计算向数据移动的原…
大数据介绍 什么是大数据以及有什么特点 大数据:是指无法在一定时间内用常规软件工具对其内容进行抓取.管理和处理的数据集合. 大数据是一种方法论:“一切都被记录,一切都被数字化,从数据中寻找需求,寻找知识,发掘价值”. 大数据技术:指从各种各样类型的数据中快速获得有价值信息的能力. 大数据的特点:数据体量巨大.数据类型繁多.价值密度低.产生和处理速度快 新的大数据处理平台: 开源:Hadoop.Spark(Apache).Atorm(Twitter).MongoDb 商用:IBM PureData…
C# C#中 Thread,Task,Async/Await,IAsyncResult 的那些事儿!https://www.cnblogs.com/doforfuture/p/6293926.htmlAsp.net缓存技术(HttpRuntime.Cache)https://www.cnblogs.com/fengxuehuanlin/p/5358219.htmlCache及(HttpRuntime.Cache与HttpContext.Current.Cache)https://www.cnbl…
大数据实战(上) # MapReduce原理介绍 大纲: * Mapreduce介绍 * MapReduce2运行原理 * shuffle及排序    定义 * Mapreduce 最早是由google公司研究提出的一种免息nag大规模数据处理的并行计算模型和方法.是hadoop面向大数据并行处理的计算模型.框架和平台 * Mapreduce是一个计算框架,既然是做计算的框架,那么表现形式就是有个输入(input),mapreduce操作这个输入(input),通过本身定义好的计算模型,得到一个…