Hadoop Ecosystem解决方案---数据仓库
个人总结的一套基于hadoop的海量数据挖掘的开源解决方案.
BI系统:
Pentaho
pentaho是开源的BI系统中做得算顶尖的了.
提供的核心功能如下:
报表功能: 可视化(client, web)的报表设计.
分析功能: 可以生成分析视图,作数据作动态分析.
Dashboard功能: 可以定制动态图表(image/flash)页面.
调度功能: 可对指定的任务进行crontab式调度. e.g.: 定期发送日/周/月报
工作流: 任意组合复杂的任务流程.
ETL: 原生提供在各种数据库之间进行数据提取/转换/导入,可以自行扩展数据源.
webservice接口: 可由任意外部程序进行调用.可以很好的结合进SOA架构.
海量数据收集系统
推荐我的开源项目Cloudscribe: http://code.google.com/p/cloudscribe.
特点: CAP特征: 弱C强A强P.
与zookeeper集成,统一的组管理功能.
数据仓库
Hive VS. Cloudbase VS. Pig
Pig:
优点: 特定场景下使用性能较好.发展趋势良好
缺点: 生僻的语法难以入手.
Cloudbase:
缺点: 设计过于简单,性能一般.
优点: 完全遵照SQL规范.比较容易上手.适合入门级使用.
Hive:
优点: 设计较好.关注点分离到位.并在不断演化中.发展趋势良好
缺点: 稍微有别正统SQL.
综合来讲,个人推荐Hive.
基础存储和计算框架
Hadoop MapReduce:
如果选择Hive, 就基本绑定了Hadoop MapReduce.
Hadoop HDFS VS KFS
KFS采用C++实现.HDFS采用Java,与Hadoop整个生态系统结合紧密. 从效率上来讲, KFS要略胜一筹.
综合考虑,个人还是推荐HDFS.
Hadoop当前有3种版本:
官方版本 & Yahoo版本 & Cloudera版本
个人推荐熟手研究并采用Cloudera的版本. Cloudera的版本提供了一些很好的拓展机制.并且也是开源的.
管理平台
推荐cloudera Hadoop desktop.
它提供了一个针对hadoop的统一管理平台. 可基于WEB进行文件系统操作,MapReduce Job管理,提交,浏览. 还有监控图表功能.
监控平台
推荐采用Ganglia对hadoop进行监控.结合Nagios进行告警.
拓展话题
关于hadoop的部署:
分为两种情况:
即时架构:
可采用捆绑VM的方式,例如Cloudera为Amazon EC2制作的AMI. 此方案适合instant架构, 适合在租用计算的场景. 数据不是locality的.
稳定架构:
固定的集群,locality计算.部署方案:
1). 可以针对不同配置采用带本地缓存+autofs的NFS统一部署方案.
2). 软件分发.
配置注意事项:
namenode: 带RAID,多磁盘存储文件系统元信息.
secondary namenode与namenode等同配置(尤其是内存).
namenode与jobtracker分离.
datanode: 不带RAID, 双网卡: 一个用于内部数据传输,一个用于外部数据传输.
tasktracker与datanode配对.
hadoop的运营核心问题
Part1: HDFS系统
namenode:
资源限制:
由于文件系统元信息是全量存放在namenode.所以文件数量是有上限的.
同时,某datanode意外失效后,其所有block都会在namenode中待备份队列中排队,也会临时占用很多内存.
负载限制:
随着集群规模的增长带给namenode更多负载:
1. client与namenode之间的元信息操作;
2. namenode与datanode之间的通信.
所以说,集群规模也是有上限的.
对于庞大的hadoop集群,重启恢复时间也会非常缓慢, 所以, 尽量存储较大的文件.
解决方案:
垂直扩展:
1. 配置更好的硬件,网络. 优化单机程序性能.(Google GFS也做过一段这样的努力).
2. 功能垂直分离: 通过功能垂直划分来构建多个专有master.(Google GFS同样做过类似方案)
垂直扩展总终究会面临极限.
水平扩展:
通过在master前端引入一个Router, 来虚拟出一个更抽象的文件系统namespace, Router后端挂接多个Hadoop Cluster.(Google GFS也作过类似方案).
namenode的单点失效(SPOF)问题:
解决方案
namenode多元数据目录, 配备secondary namenode:
一致性: 延迟一致.
可靠性: 有少许丢失.
failover: 手工.
可用性: 故障恢复时间: 1 ~ 2小时.
性能: 无损失
复杂性: 低
Linux Heartbeat + TCP Bonding + DRBD网络RAID:
一致性: 可调节,可完全一致.
可靠性: 可调节,可完全一致.
failover: 自动.
可用性: 自动切换. 故障恢复时间: 0~30min
性能: 有损
复杂性: 中等
Paxos分布式仲裁方案(hadoop + bookkeeper + zookeeper):
一致性: 理论完全一致.
可靠性: 理论完全一致.
failover: 自动.
可用性: 自动切换. 故障恢复时间: 0~30min
性能: 较少损
复杂性: 高
DataNode:
文件存储目录结构, IO Handler数量, ulimit设置等.
Part 2: MapReduce
意外非预期故障导致Job失效:
磁盘满,只读磁盘等. 解决方式是采用0.21之后的health.check脚本进行定期检测和黑名单上报.
Job恢复: 采用0.19之后原生提供的job recover机制.
JobTracker单点问题:
hadoop后续版本准备把JobTracker与zookeeper结合.
高级优化措施
改造KFS,采用UDT传输协议.加速高带宽时延积下的网络传输.
转载于:https://www.cnblogs.com/OnlyXP/archive/2009/10/14/1583450.html
Hadoop Ecosystem解决方案---数据仓库相关推荐
- Hadoop专业解决方案-第1章 大数据和Hadoop生态圈
一.前言: 非常感谢Hadoop专业解决方案群:313702010,兄弟们的大力支持,在此说一声辛苦了,经过两周的努力,已经有啦初步的成果,目前第1章 大数据和Hadoop生态圈小组已经翻译完成,在此 ...
- Hadoop技术(三)数据仓库工具Hive
数据仓库工具Hive 第一章 hive是什么 一 数据仓库工具Hive 二 hive架构 三 Hive执行流程 第二章 Hive的搭建 一 Hive的搭建模式介绍 二 单用户模式搭建 三 多用户模式搭 ...
- 初识大数据(三. Hadoop与MPP数据仓库)
MPP代表大规模并行处理,这是网格计算中所有单独节点参与协调计算的方法. 是将任务并行的分散到多个服务器和节点上,在每个节点上计算完成后,将各自部分的结果汇总在一起得到最终的结果. MPP DBMS是 ...
- EDW on Hadoop(Hadoop上的数据仓库)技术选型和实践思考
在这篇文章中, 将讨论EDW on Hadoop 有哪些备选方案, 以及我个人的倾向性, 最后是建构方法. 欢迎转载, 但必须注明原贴(刘忠武, http://www.cnblogs.com/ha ...
- 大数据学习(08)--Hadoop中的数据仓库Hive
文章目录 目录 1.什么是数据仓库? 1.1数据仓库概念 1.2传统数据仓库面临的挑战 1.3 Hive介绍 1.4 Hive与传统数据库的对比 1.5 Hive在企业中的部署与应用 2.Hive系统 ...
- Hadoop ecosystem
How did it all start- huge data on the web! Nutch built to crawl this web data Huge data had to save ...
- 几篇关于Hadoop+Hive数据仓库的入门文章
Hadoop计算平台和Hadoop数据仓库的区别 http://datasearch.ruc.edu.cn/~boliangfeng/blog/?tag=%E6%95%B0%E6%8D%AE%E4%B ...
- 基于SQL on Hadoop的数据仓库技术
http://www.uspeed.com.cn/958.html 数据仓库是企业统一的数据管理的方式,将不同的应用中的数据汇聚,然后对这些数据加工和多维度分析,并最终展现给用户.它帮助企业将纷繁浩杂 ...
- 【大数据入门】Hadoop技术原理与应用之基于Hadoop的数据仓库Hive
基于Hadoop的数据仓库Hive 文章目录 基于Hadoop的数据仓库Hive @[toc] 6.1 概述 6.1.1 数据仓库概念 6.1.2 传统数据仓库面临的挑战 6.1.3 Hive简介 6 ...
最新文章
- iOS中UITableViewCell的重用问题解决方案
- 【Groovy】自定义 Xml 生成器 BuilderSupport ( 构造 Xml 节点类 | 封装节点名称、节点值、节点属性、子节点 | 将封装的节点数据转为 Xml 字符串 )
- Spring MVC控制器的单元测试:REST API
- 一些不起眼但非常有用的 Vim 命令
- Exchange server 2013(十三)AD RMS客户端故障排除
- 解决cxgrid主从表数据显示不全的问题
- 碳中和数据集 1991-2020全球中国省级地级市县级市区各行业碳中和二氧化碳排放量碳封存 能源消费能源消耗能源结构数据大全
- 新手必备的15款渲染器,超级干货不要错过
- scrapy创建爬虫项目
- [转] 你没看过的囧人囧事大集合
- linux下几款可用网盘对比
- php后门 佛像,亲人离世之后,供奉的一些佛像以及神灵物品如何处理
- Java企业工商信息查询
- hibernate mysql 外键_如何在hibernate中设置关联会在数据库中生成外键
- 65款实用Chrome插件推荐
- webconfig配置详解--转
- 维度建模——维度建模与数据仓库概述
- 本科学历马斯克当选美国工程院院士!张宏江、萨蒂亚:“我们都有美好的未来”...
- 用Excel编辑SQL脚本
- 新加坡金融科技节之声|蚂蚁金服CTO程立:面向全球开放能力
热门文章
- C 常见的面试知识点(上)
- 纯净pe工具_微PE工具箱2.0
- mysql锁表查询_Mysql数据库锁情况下开启备份导致数据库无法访问处理分享
- support v4官方下载_掌心长兴客户端下载-掌心长兴ap下载v4.1.4 安卓官方版
- 敲代码时如何快速移动光标_如何用 Linux 技巧大大提高工作效率?
- 【渝粤教育】电大中专电商运营实操 (25)作业 题库
- android studio怎么回退,如何回滚已经commit的代码(Android Studio)
- 奥鹏计算机基础18秋在线作业答案,18秋华师《计算机基础》在线作业1(标准答案).doc...
- spss三次指数平滑_17 统计学:SPSS基础
- 微软新浏览器_要超越Chrome?微软新发布的这款浏览器,有翻天覆地的变化!