上海博为峰软件技术股份有限公司旗下的职业教育培训品牌学掌门以企业需求为导向,已开设软件测试、数据分析、Web前端开发、Java、Java+大数据、超全栈开发(web前端+Java+python)、Python全栈开发与人工智能、Python大数据分析、BI商业数据分析、移动端开发、大数据等热门技术领域就业课程、进阶课程以及认证与培训服务。
【超全栈开发】是学掌门打造的一款用于职业培训的IT教育产品。
包括但不限于 Web前端、Java、Pyhton、大数据、人工智能等。进步开发水平、具备解决“跨前后端、跨平台、跨语言”等多种开发技术难题的能力。从而真正完成“内在能力+外在薪酬”全方位的提升。
采用“ 分层设计、分段教学 ”为学员提供个性化、差异化的教学方案。为学员继续提供终身职业护航体系。
全栈Java+大数据学习路线
课程以前端全栈项目的设计和研发为主线
经典案例40个
Java Web及Java框架20+个、Java微服务5+个、大数据案例3+个、其他经典案例共10+
小项目5+个
设计多线程网络、数据库持久化、微服务架构、Java分布式、大数据开发等
中等项目3+个
CRM客户关系、垂直问答平台、智能办公系统的实战演练
大项目3个
移动电商平台、智能公寓、大数据分析、前端可视化

大数据开发-HBase关系对比
今天给大家带来的是大数据开发-HBase关系对比,相信大家也都发现了,有很多框架的用处都差不多,为什么只用这个而不用那个呢?这就是两者之间的一些不同之处的对比,然后选择一个较适用的,本期就是关系对比,为什么它较适用!
一、HBase基础知识
(1)HBase依赖和NoSQL
HBase 依赖于 HDFS 做底层的数据存储,BigTable 依赖 Google GFS 做数据存储
HBase 依赖于 MapReduce 做数据计算,BigTable 依赖 Google MapReduce 做数据计算
HBase 依赖于 ZooKeeper 做服务协调,BigTable 依赖 Google Chubby 做服务协调
NoSQL = NO SQL
NoSQL = Not Only SQL:会有一些把 NoSQL 数据的原生查询语句封装成 SQL,比如 HBase 就有 Phoenix 工具关系型数据库 和 非关系型数据库的典型代表
NoSQL:hbase, redis, mongodb
RDBMS:mysql,oracle,sql server,db2
(2)NoSQL 数据库的要点:
1.它介于 NoSQL 和 RDBMS 之间,仅能通过主键(rowkey)和主键的 range 来检索数据
2. HBase 查询数据功能很简单,不支持 join 等复杂操作
3. 不支持复杂的事务,只支持行级事务(可通过 hive 支持来实现多表 join 等复杂操作)。
4. HBase 中支持的数据类型:byte[](底层所有数据的存储都是字节数组)
5.主要用来存储结构化和半结构化的松散数据。
(3)结构化、半结构化和非结构化区别:
结构化:数据结构字段含义确定,清晰,典型的如数据库中的表结构
半结构化:具有一定结构,但语义不够确定,典型的如 HTML 网页,有些字段是确定的(title), 有些不确定(table)
非结构化:杂乱无章的数据,很难按照一个概念去进行抽取,无规律性与 Hadoop 一样,HBase 目标主要依靠横向扩展,通过不断增加廉价的商用服务器,来增加 计算和存储能力。
二、HBase与Hadoop的关系
(1)HDFS
1.为分布式存储提供文件系统
2.针对存储大尺寸的文件进行优化,不需要对HDFS上的文件进行随机读写
3.直接使用文件
4.数据模型不灵活
5.使用文件系统和处理框架
6.优化一次写入,多次读取的方式
(2)HBase
1.提供表状的面向列的数据存储
2.针对表状数据的随机读写进行优化
3.使用key-value操作数据
4.提供灵活的数据模型
5.使用表状存储,支持MapReduce,依赖HDFS
6.优化了多次读,以及多次写
三、RDBMS与HBase的对比
关系型数据库
(1)结构:
1.数据库以表的形式存在
2.支持FAT、NTFS、EXT、文件系统
3.使用Commit log存储日志
4.参考系统是坐标系统
5.使用主键(PK)
6.支持分区
7.使用行、列、单元格
(2)功能:
1.支持向上扩展
2.使用SQL查询
3.面向行,即每一行都是一个连续单元
4.数据总量依赖于服务器配置
5.具有D支持
6.适合结构化数据
7.传统关系型数据库一般都是中心化的
8.支持事务
9.支持Join
HBase
(1)结构:
1.数据库以region的形式存在
2.支持HDFS文件系统
3.使用WAL(Write-Ahead Logs)存储日志
4.参考系统是Zookeeper
5.使用行键(row key)
6.支持分片
7.使用行、列、列族和单元格
(2)功能:
1.支持向外扩展
2.使用API和MapReduce来访问HBase表数据
3.面向列,即每一列都是一个连续的单元
4.数据总量不依赖具体某台机器,而取决于机器数量
5.HBase不支持D(Atomicity、Consistency、Isolation、Durability)
6.适合结构化数据和非结构化数据
7.一般都是分布式的
8.HBase不支持事务
9.不支持Join
好了以上就是本期的所有内容了,大数据开发的关系对比了解的清楚才能更好的选择适合自己的,知己知彼百战百胜。