HANA入门 列式存储优势

HANA,英文翻译是High-PerformanceAnalytic Appliance,即高性能分析分析设备。

对于HANA这个内存式数据库虽然已经发布五年左右,但是IT界对于HANA数据库的了解知之间甚少,甚至很多人没有听过。想必大家都熟知的数据库如MySQL和Oracle,HANA和这两种数据库一样都是数据关系型数据库。

因为大家想必都对mysql比较熟悉,我在这里就拿mysql为例,以mysql为代表对比着讲解一下HANA。

想必大家都知道现今数据库分为两种,关系型数据库和非关系型数据库。常见的关系型数据库就是Mysql、Oracle等,非关系型数据库如HBase、Redis。其中HBase和传统的关系型数据库不同之处并不仅仅是是否为关系型数据库,还有一点和关系型数据库例如MySQL不一样,那就是HBase是列式存储,而MySQL是行式存储。

那么现在大家就有疑问了,为什么要用列式存储?有什么优势相比较行式存储?现在我们来看一下行式存储和列式存储不同之处。如图所示为行式存储和列式存储在内存地址实际


的存储情况,如图可以看出行式存储是以行为单位在数据库里面存储,而列式存储是以列为单位进行存储的。当我们向数据库一行行插数据的时候行式存储很明显会有优势,而当我们一行行从数据库里面读数据的时候也是行式存储占优势。假如当我们并不想取出一个完整行的时候,假如select一列那么列式存储就占优势,而且在我们作聚合运算的时候也是以列为单位的。在现在的大型企业里面,曾经有人统计过数据库里面的列将近35%是用不到的,所以当我们进行数据分析的时候用行式存储效率比之列式存储低。

为什么列式存储在数据分析方面效率较高?原因之一是在进行查询的时候不必要的列可以不查询出来,减少了数据的传输;原因之二是既然是数据分析那么必然要进行聚合操作,如max,min等,而进行聚合操作时在列上进行的,列式存储是以列为单位存储的,所以在进行数据分析时效率较行式存储高。

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值