关于这个问题,我认为主要还是问一下关系型数据库与非关系型数据库的不同点。再具体一点就是问mysql与hbase的区别
查阅了很多的资料,自己总结了一下。
1. 数据库的表结构
mysql需要提前定义表结构,并且同时需要定义好每个列所占的存储空间,这样就带来一个问题,那就是受限于表本身的结构,还有就是说如果当前列是null时也会占一部分空间。
hbase可以随意添加字段和值,没受限于表本身的结构,所以很方便,表数据没冗余,所以随着大数据的发展,各式各样结构的数据有很多,所以这就很符合大数据的一些特点。
2. 读写速度
关系型数据库在数据量小的时候是很有优势的,但在集群这种大数据的背景下就会有大量的数据存储,有时候能达到几亿行,而关系型数据库数据量一多的话,就会插入会非常慢,这就显示了如hbase等非关系型数据库的优势了。
3. 集群的扩展
关系型数据库扩展起来是非常麻烦的,而且添加机器的时候要进行rebalance,耗时;但是非关系型数据库扩展起来就很方便了,直接配置几下就可以完成,而且现在的非关系型数据库都是基于内存而设计的,Rebalance之类的会很快