既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,涵盖了95%以上大数据知识点,真正体系化!
由于文件比较多,这里只是将部分目录截图出来,全套包含大厂面经、学习笔记、源码讲义、实战项目、大纲路线、讲解视频,并且后续会持续更新
- 高效的数据存储:当查询特定列的数据(字段)时,数据库可以直接访问这部分连续存储的数据。(相当于索引)
- 对于复杂的分析查询通常只关注数据集中的特定几列,列式存储能够只读取必要的列。
- 压缩与优化:同类型的数据便于压缩与优化。
- 减少冗余:如果存在某部分列数据缺失,则可以在列存储时不存储该部分的值。
HBase 列族:列族是列的逻辑分组,同个列族的所有列存储在一起。
二、了解NoSQL的概念
NoSQL(Not Only SQL):非关系型数据库
NoSQL 与 RDBMS 的区别:
- 数据模型
- 非关系型 VS 关系型
- 查询语言
- 不使用SQL,有独特指令。
- 可【伸缩性】和【可用性】问题
- 伸缩性
- 数据分裂【伸】和 分布式架构
- 文件合并【缩】
- 数据分裂
- 数据分裂是HBase中自动管理数据存储容量的一种机制。
- 当表初始创建时,可能只有一个Region。随着数据量的不断增加,一个HBase表的数据量可能会增长到超出单个Region的承载能力。
- 为了有效管理这种情况,HBase通过数据分裂自动地将表分割为N部分,每个Region包含一部分的数据。
- Region:
- HBase的基本存储单元,由一系列行组成,内部的数据是按照行键(row key)排序的。
- 自动分裂:
- Region大小达到的分裂阈值、RegionServer的数量都可以进行配置。(RegionServer的数量可以进行手动添加)
- 得到的新Region可以被分配到新的RegionServer上(保证负载均衡)
- 分裂的缺陷:分裂阶段处于阻塞状态,往里面写数据可能会导致数据丢失。
- 【优化:可以通过预分裂的方式确定数据规模大概需要分为多少个Region,并在相应的HRegionServer中提前建好Region,就无需做分裂了。能够大大提高写的效率】
- 分裂的过程是由HMaster主导,告诉该台HRegionServer应该迁移到哪一台不同的服务器上面
- 数据分裂
- 伸缩性