hadoop开发环境搭建

大数据架构师从入门到精通,该具备怎么样的知识体系?

不羁的心 提交于 2020-01-14 14:19:27
经常有初学者在博客和QQ问我,自己想往大数据方向发展,该学哪些技术,学习路线是什么样的,觉得大数据很火,就业很好,薪资很高。如果自己很迷茫,为了这些原因想往大数据方向发展,也可以,那么我就想问一下,你的专业是什么,对于计算机/软件,你的兴趣是什么?是计算机专业,对操作系统、硬件、网络、服务器感兴趣?是软件专业,对软件开发、编程、写代码感兴趣?还是数学、统计学专业,对数据和数字特别感兴趣。 其实这就是想告诉你的大数据的三个发展方向,平台搭建/优化/运维/监控、大数据开发/ 设计/ 架构、数据分析/挖掘。请不要问我哪个容易,哪个前景好,哪个钱多。 先扯一下大数据的4V特征: 数据量大 ,TB->PB 数据类型繁多 ,结构化、非结构化文本、日志、视频、图片、地理位置等; 商业价值高 ,但是这种价值需要在海量数据之上,通过数据分析与机器学习更快速的挖掘出来; 处理时效性高 ,海量数据的处理需求不再局限在离线计算当中。 现如今,正式为了应对大数据的这几个特点,开源的大数据框架越来越多,越来越强,先列举一些常见的: 文件存储: Hadoop HDFS、Tachyon、KFS 离线计算: Hadoop MapReduce、Spark 流式、实时计算: Storm、Spark Streaming、S4、Heron K-V、NOSQL数据库: HBase、Redis、MongoDB 资源管理:

Eclipse开发MR环境搭建

不想你离开。 提交于 2020-01-11 04:48:13
1.jdk 环境配置 jdk安装后好后配置相关JAVA_HOME环境变量,并将bin目录配置到path 2. 下载hadoop-2.7.1.tar.gz 解压hadoop-2.7.1.tar.gz到 D:\XXXX\workspace\hadoop-2.7.1 下载地址:http://archive.apache.org/dist/hadoop/common/hadoop-2.7.1/ 3. 下载hadoop2x-eclipse-plugin 百度下载hadoop2x-eclipse-plugin开发插件,如果下载的不好用,可以自己编译一个自己目前在用hadoop版本的插件。 自行编译插件可以参考地址: http://www.cnblogs.com/beststrive/p/8275932.html 4. 下载hadoop-common-2.7.1.bin.zip 解压hadoop-common-2.7.1.bin.zip并将hadoop.dll和winutils.exe文件分别放到D:\XXXX\workspace\hadoop-2.7.1\bin 和C:\Windows\System32目录下 5. 拷贝插件到eclipse插件目录下 hadoop-eclipse-plugin-2.6.0.jar拷贝至eclipse的plugins目录下,然后重启eclipse 6.

hadoop 2.7.3 (hadoop2.x)使用ant制作eclipse插件hadoop-eclipse-plugin-2.7.3.jar

≯℡__Kan透↙ 提交于 2020-01-11 04:43:20
  为了做mapreduce开发,要使用eclipse,并且需要对应的Hadoop插件hadoop-eclipse-plugin-2.7.3.jar,首先说明一下,在hadoop1.x之前官方hadoop安装包中都自带有eclipse的插件,而如今随着程序员的开发工具eclipse版本的增多和差异,hadoop插件也必须要和开发工具匹配,hadoop的插件包也不可能全部兼容.为了简化,如今的hadoop安装包内不会含有eclipse的插件.需要各自根据自己的eclipse自行编译. 1. 环境准备   使用ant制作自己的eclipse插件,介绍一下我的环境和工具 ( 安装路径根据自己 )   系统: 64bit Ubuntu 14.04,(系统不重要Win也可以,方法都一样)   JDK 版本: jdk-7u80-linux-x64.tar.gz 安装路径: /usr/lib/jvm   eclipse 版本: ide工具eclipse-jee-mars-2-linux-gtk-x86_64.tar.gz 安装路径: /home/hadoop/   hadoop 版本: hadoop-2.7.3.tar.gz 安装路径:/usr/local   ant(这个也随意,二进制安装或者apt-get安装都可以,配置好环境变量) , 我的 ant 版本是1.9.3 , 有的是 1.9.7

初识 HBase

此生再无相见时 提交于 2020-01-10 14:58:38
HBase简介 对大数据领域有一定了解的小伙伴对HBase应该不会陌生,HBase是Apache基金会开源的一个分布式非关系型数据库,属于Hadoop的组件。它使用Java编写,需运行于HDFS文件系统之上。HBase与Hadoop中的其他组件一样,可以运行在廉价硬件上,并可提供数10亿行 X 数百万列的大数据存储、管理能力,以及随机访问和实时读/写能力。HBase的设计模型参考了Google的 Bigtable ,可以说是Bigtable的开源实现版本。 HBase特性 数据容量大 ,单表可以有百亿行、百万列,数据矩阵横向和纵向两个维度所支持的数据量级都非常具有弹性 多版本 ,每一列存储的数据可以有多个version 稀疏性 ,为空的列并不占用存储空间,表可以设计的非常稀疏 读写强一致 ,非 “最终一致性” 的数据存储,使得它非常适合高速的计算聚合 自动分片 ,通过Region分散在集群中,当行数增长的时候,Region也会自动的切分和再分配 Hadoop/HDFS集成 ,和HDFS开箱即用,不用太麻烦的衔接。扩展性强,只需要增加DataNode就可以增加存储空间 丰富的“简洁,高效”API ,提供了Thrift/REST API,Java API等方式对HBase进行访问 块缓存 , 布隆过滤器 ,可以高效的列查询优化 操作管理 ,Hbase提供了内置的web界面来操作

分布式计算框架MapReduce

风格不统一 提交于 2019-12-27 18:10:10
MapReduce概述 MapReduce源自Google的MapReduce论文,论文发表于2004年12月。Hadoop MapReduce可以说是Google MapReduce的一个开源实现。MapReduce优点在于可以将海量的数据进行离线处理,并且MapReduce也易于开发,因为MapReduce框架帮我们封装好了分布式计算的开发。而且对硬件设施要求不高,可以运行在廉价的机器上。MapReduce也有缺点,它最主要的缺点就是无法完成实时流式计算,只能离线处理。 MapReduce属于一种编程模型,用于大规模数据集(大于1TB)的并行运算。概念"Map(映射)"和"Reduce(归约)",是它们的主要思想,都是从函数式编程语言里借来的,还有从矢量编程语言里借来的特性。它极大地方便了编程人员在不会分布式并行编程的情况下,将自己的程序运行在分布式系统上。 当前的软件实现是指定一个Map(映射)函数,用来把一组键值对映射成一组新的键值对,指定并发的Reduce(归约)函数,用来保证所有映射的键值对中的每一个共享相同的键组。 MapReduce官方文档地址如下: https://hadoop.apache.org/docs/stable/hadoop-mapreduce-client/hadoop-mapreduce-client-core/MapReduceTutorial

大数据篇[Hadoop]-01

我的梦境 提交于 2019-12-24 14:48:50
如约而至,你们好我是AC,就是啊晨的意思, 今天讲hadoop,是大数据开发工程师必备技术之一 好吧,废话不多说,跟我一起,先入个hadoop的门吧 文章目录 什么是Hadoop? 简单叙述: 发展历史 Hadoop特点 核心组成 HDFS架构概述 一、HDFS简介 二、HDFS组成结构以及各部分作用 1.Client(客户端) 2.NameNode(书的目录) 3.DataNode(实际的内容) 4.Secondary NameNode(辅助NameNode) YARN架构概述 MapReduce架构概述 大数据生态体系(了解知识扩展) 什么是Hadoop? 简单叙述: 为了方便理解简单叙述,关于正式介绍,百度了解即可,我就稍微总结下吧 由Apache基金会所开发的分布式系统基础架构,广泛的概念-hadoop生态圈 架构:项目整体的布局方式 集群:多个机器共同完成一件事 分布式:多个集群做不同的事 集群不一定是分布式,分布式一定是集群 主要解决:海量数据的存储和海量数据的分析计算问题。 发展历史 Lucene–Doug Cutting开创的开源软件,用Java书写代码,实现与Google类似的全文搜索功能,它提供了全文检索引擎的架构,包括完整的查询引擎和索引引擎 2001年年底成为apache基金会的一个子项目 可以说Google是hadoop的思想之源

Windows上搭建hadoop开发环境

自古美人都是妖i 提交于 2019-12-24 10:54:47
前言 Windows下运行 Hadoop ,通常有两种方式:一种是用VM方式安装一个 Linux 操作系统 ,这样基本可以实现全Linux环境的Hadoop运行;另一种是通过Cygwin模拟Linux环境。后者的好处是使用比较方便,安装过程也简单,本篇文章是介绍第二种方式Cygwin模拟Linux环境。 准备工作 (1)安装JDK1.6或更高版本,安装时注意,最好不要安装到带有空格的路径名下,例如:Programe Files,否则在配置Hadoop的配置文件时会找不到JDK。 (2)hadoop官网下载hadoop http://hadoop.apache.org/releases.html 。 安装Cygwin Cygwin是Windows平台下模拟Unix环境的工具,需要在安装Cygwin的基础上安装Hadoop,下载地址: http://www.cygwin.com/ 根据操作系统的需要下载32位或64的安装文件。 一、双击下载好的安装文件,点击下一步进入程序引导安装页,这里有三个选项,选择第一项网络安装: 网络安装:通过网络下载并安装软件包 下载但不安装:通过网络下载软件包 本地安装:是用本地软件包安装 二、选择install from internet 三、选择安装路径 三、选择local Package Directory 四、选择您的Internet连接方式 五

大数据面试题

房东的猫 提交于 2019-12-20 03:38:01
第一部分选择题 1. 下面哪个程序负责 HDFS 数据存储。 答案C DataNode a)NameNode b)Jobtracker c)DataNode d)secondaryNameNode e)tasktracker NameNode:负责调度,比如你需要存一个640m的文件 如果按照64m分块 那么namenode就会把这10个块(这里不考虑副本)分配到集群中的datanode上 并记录对于关系 。当你要下载这个文件的时候namenode就知道在哪些节点上给你取这些数据了。。。它主要维护两个map 一个是文件到块的对应关系 一个是块到节点的对应关系。(文件分成哪些块,这些块分别在哪些节点) 2. HDfS 中的 block 默认保存几份? 答案A默认3分 a)3 份 b)2 份 c)1 份 d)不确定 3. 下列哪个程序通常与 NameNode 在一个节点启动? 答案D a)SecondaryNameNode b)DataNode c)TaskTracker d)Jobtracker 此题分析: hadoop的集群是基于master/slave模式,namenode和jobtracker属于master,datanode和tasktracker属于slave,master只有一个,而slave有多个SecondaryNameNode内存需求和NameNode在一个数量级上

大数据之hadoop

試著忘記壹切 提交于 2019-12-18 22:19:45
1.大数据概念 大数据:指无法在一定时间范围内用常规软件工具进行捕捉、管理和处理的数据集合,是需要新处理模式才能具有更强的决策力、洞察发现力和流程优化能力的海量、高增长率和多样化的信息资产 主要解决的是 海量数据的存储、海量数据的分析计算、统一资源管理调度 大数据特点:1、volume(大量) 2、velocity(高速) 3、variety(多样) 4、value(低价值密度) 2.Hadoop 1、Hadoop是一个由Apache基金会所开发的分布式系统基础架构。 2、主要解决,海量数据的存储和海量数据的分析计算问题。 3、广义上来说,Hadoop通常是指一个更广泛的概念——Hadoop生态圈 2.1三大发行版本 Apache 最原始的版本,对于入门学习最好 Cloudera 在大型互联网企业中用的比较多 Hortonworks 文档较好 2.2Hadoop的优势(4高) 1、高可靠性:Hadoop底层维护多个数据副本,所以即使Hadoop某个计算元素或存储出现故障,也不会导致数据的丢失。 2、高扩展性:在集群间分配任务数据,可方便的扩展数以千计的节点。 3、高效性:在MapReduce的思想下,Hadoop是并行工作的,以加快任务处理速度。 4、高容错性:能够自动将失败的任务重新分配 2.3Hadoop组成 在Hadoop1.x时代

搭建Hadoop2.0(二)hadoop环境配置

最后都变了- 提交于 2019-12-18 04:29:58
1.Hadoop2.0 简述 [1] 与之前的稳定的hadoop-1.x相比,Apache Hadoop 2.x有较为显著的变化。这里给出在HDFS和MapReduce两方面的改进。   HDFS:为了保证name服务器的规模水平,开发人员使用了多个独立的Namenodes和Namespaces。这些Namenode是联合起来的,它们之间不需要相互协调。Datanode可以为所有Namenode存放数据块,每个数据块要在平台上所有的Namenode上进行注册。Datenode定期向Namenode发送心跳信号和数据报告,接受和处理Namenodes的命令。   YARN(新一代MapReduce):在hadoop-0.23中介绍的新架构,将JobTracker的两个主要的功能:资源管理和作业生命周期管理分成不同的部分。新的资源管理器负责管理面向应用的计算资源分配和每个应用的之间的调度及协调。   每个新的应用既是一个传统意义上的MapReduce作业,也是这些作业的 DAG(Database Availability Group数据可用性组),资源管理者(ResourcesManager)和管理每台机器的数据管理者(NodeManager)构成了整个平台的计算布局。   每一个应用的应用管理者实际上是一个架构的数据库,向资源管理者(ResourcesManager)申请资源