摘要:
hadoop生态系统的组件hdfs,mapreduce,hive,pig,zookeeper,hbase大家应该都比较熟了,这里简单总结一下其他不太常用的组件的作用。OozieOozie是可扩展可伸缩的工作流协调管理器。Oozie协调的作业属于一次性的非循环作业,例如MapReduce, Streaming, Pipes, Pig, Hive, Sqoop等等都是。Oozie将要调度的作业作为一个单一的作业来管理。Oozie的调度基于时间跟数据可用性。具有数据感知功能,可以协调作业之间的依赖关系.FlumeFlume是一个类似facebook的scribe的分布式,高可靠,高可用,高效的数据收 阅读全文
摘要:
高可用hdfs部署当你使用hadop进入一段时间后,你可能会碰到更高的要求。系统稳定吗?uptime时间能达到100%?为了能够安抚这类担忧情绪你需要做更多的工作.在集群里hadoop的NameNode是SPOF模式,加上backup namenode保证namenode数据在硬盘正确完整的存储,但一旦进程或者服务器挂掉,以及不得不进行的硬件更换升级导致停机,集群一样会处于不可用状态,这也是运行中的hadoop生态系统最麻烦的事情。这时候你就只能重启,或者在另外一个服务器上启动一个namenode.为保证高可用性,我们必须有1台StandbyNamenode角色的服务器,它能够随时保持与nam 阅读全文
摘要:
部署zookeeperzookeeper可以存储类似于文件系统的目录节点树方式的数据,主要通过维护和监控你存储的数据的状态变化,触发事件,从而进行基于数据的集群管理,zookeeper的用法,就类似如目录节点树的操作,首先创建一个目录节点,给某个目录节点设置数据,获取某个目录节点的所有子目录节点,给某个目录节点设置权限和监控这个目录节点的状态变化,通知目录节点的拥有者。zookeeper作为一个集群系统以外的管理系统,它对所管理的集群是无耦和的,它提供一个存储和管理数据场所,集群系统将它的管理模块入驻其中,一旦数据的状态发生变化,Zookeeper就将负责通知相应的住户作出反应,从而实现管理M 阅读全文
摘要:
我们会添加export HADOOP_HOME=hadoop的目录需要运行yarn的程序,如 Pig, Hive, Sqoop都必须添加环境变量export HADOOP_MAPRED_HOME=yarn的目录 阅读全文
摘要:
service启动与/etc/init.d启动的细小区别service启动pwd为/,只传递 LANG和TERM 2个环境变量./etc/init.d 传递全部 阅读全文
摘要:
hive的一些设计机制hive的管理接口hive的管理接口有三个:CLI,Client和 WUI。其中最常用的是 CLI,Cli是本地的命令行接口。Client是Hive的客户端,连接Hive Server。WUI是通过web方式访问 Hive。hive元数据存储Hive的元数据可以存储在多种数据库里如mysql、derby、oracle、pgsql。一般选择是免费开源历史长的mysql。当然现在有通过hdfs本身来存储这些元数据的方案。有机会可以去试试,也希望有人能提供经验。HiveServer2与 HiveServer简单说, HiveServer2是 HiveServer的升级版本,主要 阅读全文
摘要:
pig的一些设计机制Pig LatinPig Latin是pig的脚本语言,由operation 和 transformation 组成。每个操作或变换都是对输入进行数据处理,然后产生输出结果。这些操作整体上描述了一个数据流的输入输出。Pig内部,这些变换操作被转换成一系列的MapReduce 作业。与MapReduce一样,Pig是为数据批处理而设计的,操作对象至少是一个整个的文件。同时pig的每次输出位置必须是一个全新的文件夹Pig scripts类似sql的存储过程,pig支持把一系列命令放到一个文件中,使用命令 “pig ”运行。Pig scripts可以指定local或者mapred 阅读全文
摘要:
hbase的一些设计机制zookeeper与hbasehbase依赖zookeeper来管理它的HRegionServers,zookeeper存储的数据结构类似于文件系统的目录节点树模型,主要通过维护和监控你存储的数据的状态变化,触发事件,从而进行基于数据的集群管理,zookeeper的用法,就类似如目录节点树的操作,首先创建一个目录节点,给某个目录节点设置数据,获取某个目录节点的所有子目录节点,给某个目录节点设置权限和监控这个目录节点的状态变化,通知目录节点的拥有者。zookeeper作为一个集群系统的管理系统,它对所管理的集群是无耦和的,它提供一个存储和管理数据场所,集群系统将它的管理模 阅读全文
摘要:
mapreduce的过程介绍注意:下面的内容中RM=ResourceManager ,NM=NodeManagerstep 1: client -> RM这是提交job的流程,client端先向RM申请一个ApplicationId,RM进行内部处理包括资源分配,优先级设定之类的准备工作.等到ApplicationId后,client端提交程序到RM执行。 这个提交过程会指明localfile,jars ,输入,输出,环境变量等参数,实际上跟命令行bin/hadoop jar执行的东西一样.RM接收到提交后,根据资源(CPU,内存,硬盘,网络 ) 来进行调度.RM的调度流程是:RM不断接 阅读全文
摘要:
在hadoop生态系统中,hadoop核心包括了hdfs以及mapreduce.hadoop的一些设计机制机架感知rack-aware使得master能够获取整个集群的基于网络ip地址或者主机名的分布图。通过一个脚本实现,脚本耦合少,参数只有网络ip地址或者主机名。相关配置项 topology.script.file.namehealth-checker健康检查的模块类似hadoop这种组件繁多的生态系统,精简耦合是必须的,这个检查模块做得真是很小巧,它只通过脚本的返回的结果中有没有ERROR这个字符串来判断健康状态。相关配置项 yarn.NM.health-checker 开头的都是slav 阅读全文
摘要:
64位php4的openssl模块的代码是不能编译通过的。必须替换文件openssl.c为下面的内容:/* +----------------------------------------------------------------------+ | PHP Version 4 | +----------------------------------------------------------------------+ | Copyright (c) 199... 阅读全文
摘要:
一般的php编译问题,都可以通过下载安装依赖库的dev包,或者下载源码的方式解决。但是odbc模块比较特殊。必须在每次configure成功之后,手动修改生成的Makefile文件。以unixODBC为列子,修改方式如下:找到以开头的行,在最后面添加:-lodbcpsql -lodbc 阅读全文