分析型数据库特色功能有什么?-问答-阿里云开发者社区-阿里云

开发者社区> 问答> 正文

分析型数据库特色功能有什么?

2017-10-31 11:29:41 1549 1

为创新型的实时OLAP服务,分析型数据库提供很多独有的特色功能,这里便就其中常用的部分进行简要的介绍。

聚集列


在创建表时,用户可以指定一列或者若干列作为聚集列。
  • 在物理上,一个分区内聚集列内容相同的数据会尽可能的分布在同样的区块内存放。因此当用户的查询Query的条件指定了聚集列的内容或范围时,查询性能会有较大的提升。
  • 需要注意的是如果用户指定多列为聚集列,那么指定的聚集列的顺序就是比较数据是否相同的顺序。
  • 聚集列可以在建表后进行修改,但是目前修改后需重新装载数据完毕后才生效。


多值列


分析型数据库有一个特殊的数据类型:多值列。
  • 多值列可以存入String类型的多个值。在原始数据中多值列为一列用分隔符(默认为半角逗号,也可以建表时进行配置)分隔的String类型。
  • 多值列数据存入分析型数据库后,可使用in,contains条件对该列的单个值进行查询,枚举查询后该列的每个值可像一个普通列一样进行各类操作。但是不允许在没有进行枚举查询时对该列直接select或在groupby中使用该列。

多值列的通常使用场景:
已有一个实体属性表均为普通列并以实体编号为主键的情况下,需要新增一个用于进行实体筛选的属性,而这个属性和实体编号为多对多的对应关系,按照通常的做法,则新建一张该实体编号和属性两列的数据表,和原有的实体属性表进行Join操作查询。而使用多值列后, 性能会被进行Join操作计算高数倍
一个具体的例子如下:
一张用户表中已有用户id和性别、年龄、职业、籍贯的数据。
用户ID性别年龄职业籍贯
bigintvarcharintvarcharvarchar

而现在需要增加用户购买的商品品类的数据用于筛选,于是可以将这个商品的品类id存放在用户表的一个新增的多值列中使用。
用户ID性别年龄职业籍贯购买的商品品类ID
bigintvarcharintvarcharvarcharmultivalue


智能自动索引


分析型数据库拥有智能的自动索引创建机制。
通常情况下,分析型数据库会根据导入的数据的每一列分布情况自动为每一列创建符合该列情况的索引类型,无需用户指定创建索引或索引类型。

注:导入数据每一列分布情况如该列的枚举值数量的多少,该列的数据是连续或离散。

但是,如果用户认为某一列不需要进行筛选查询,可以指定该列不需要创建索引来节省数据存储空间。

注:0.9版本之前如果一个列需要作为表关联的hash 分区列,那么用户需要人工指定该列创建Hash索引。0.9版本已废弃Hash索引,可动态根据JoinSQL进行优化,完全无需用户干预。


查询CBO优化


分析型数据库拥有高度智能的CBO(Cost-Based Optimization)优化策略。
在用户发起的一个Query达到分析型数据库后,分析型数据库会智能的判断该Query涉及的数据的分布情况、索引使用情况、缓存使用情况、Query条件分布等,进行逻辑和物理执行计划优化和重组,尽可能的以最优的路径执行Query查询。
因此大部分情况下用户无需关心Query的具体写法,只要保证语义正确即可。另外分析型数据库提供一些Hint参数,可以在Query时对执行计划进行部分调整,详见《用户指南》的《多计算引擎和Hint》章节。
取消 提交回答
全部回答(1)
相关问答

70

回答

Discuz实现oss云存储

山不周 2015-04-21 11:20:02 66314浏览量 回答数 70

11

回答

在阿里云上安装和运行Node.js全功略

ycwong 2013-09-18 15:17:30 64422浏览量 回答数 11

38

回答

干货分享:DBA专家门诊一期:索引与sql优化问题汇总

xiaofanqie 2014-12-25 15:13:38 92105浏览量 回答数 38

30

回答

云计算之路:为什么要选择云计算

cnblogs 2013-03-27 10:22:27 143164浏览量 回答数 30

8

回答

OceanBase 使用动画(持续更新)

mq4096 2019-02-20 17:16:36 337075浏览量 回答数 8

28

回答

钉钉开放平台“常见问题常见问题常见问题“重要请关注

竹梅 2015-12-03 00:39:14 93839浏览量 回答数 28

13

回答

【云服务器分享】如何节省网站流量

dreamdoo 2012-10-15 10:36:09 80484浏览量 回答数 13

27

回答

阿里云开源软件镜像站点上线啦!!

qilu 2014-01-06 18:14:06 96128浏览量 回答数 27

11

回答

【精品问答合集】MongoDB热门问答

李博 bluemind 2019-05-29 16:50:19 121366浏览量 回答数 11

1

回答

阿里云各种产品使用索引(更新2015.08.17)

梦丫头 2015-07-18 12:19:16 71680浏览量 回答数 1
+关注
716
文章
646
问答
问答排行榜
最热
最新
相关电子书
更多
《2021云上架构与运维峰会演讲合集》
立即下载
《零基础CSS入门教程》
立即下载
《零基础HTML入门教程》
立即下载