642
阿里云
2.1 数据库/表组/表/分区__第二章 基本概念_使用手册_分析型数据库-阿里云
在传统的关系数据库系统中,表隶属于某个数据库。而分析型数据库为了方便的进行数据的关联的管理,以及进行资源分配,引入了表组的概念。
数据库
在分析型数据库中,数据库是用户和系统管理员的管理职权的分界点。
系统管理员:可管理的最小范围即数据库粒度的参数,但未经授权无法查看和管理数据库内部的结构和信息。
用户:对于数据库级别的参数,默认只能查看而不能修改。
在分析型数据库中,一个数据库对应一个用于访问的域名和端口号,同时有且只有一个onwer即数据库的创建者。
- 分析型数据库是以数据库为粒度对用户的宏观资源进行配置,因此创建数据库时用户需要输入业务预估的QPS、数据量、Query类型等信息 用于智能的判断初始的资源分配。
- 分析型数据库的用户不能直接通过CREATE DATABASE的DDL语句创建数据库,只能通过DMS控制台界面来创建需要的业务数据库。
表组
表组是一系列可发生关联的数据表的集合。分析型数据库采用关系模型存储数据,也就是使用二维表来进行数据的组织和存储。分析型数据库为了管理相关联的数据表,引入了表组的概念。
- 表组是数据库的下一级实体,也是表的上一级。
- 在分析型数据库中一个表必须从属于一个表组。
分析型数据库中表组分为两类:维度表组和普通表组。
- 维度表组,用于存放维度表,目前有且仅有一个,在数据库建立时会自动创建(表组名称:”数据库名_dimension_group”),用户不可修改和删除。(维度表特征上是一种数据量较小但是需要和任何表进行关联的表。)
- 普通表组,有如下特征:
- 表组是数据物理分配的最小单元,数据的物理分布情况通常无需用户关心,但是数据的副本数必须在表组上进行设定,一个表组所有表副本数一致。注:副本数指数据在分析型数据库中同时存在的份数。
- 同一个表组内的普通表才能进行快速的hash join。(0.9版本之前分析型数据库对普通表仅支持同表组内join。0.9.5版本后支持不同普通表组内的普通表进行join)
- 一个表组的表可以共享一些配置,例如查询超时时间,如果表组中的单表也进行了这些配置的个性化,那么进行表关联时会通表组级别的配置进行覆盖。
- 一个表组中的所有表的一级Hash分区的分区数建议一致,但非强制性要求。
表
分析型数据库中表分为维度表和普通表,普通表也称实时表或分区表。
- 维度表可以和任意表组的任意表进行关联,并且创建时不需要配置分区信息,但是对单表数据量大小有所限制,并且需要消耗更多的存储资源。(一般要求维度表单表不超过1000万)
- 普通表创建时至少要指定一级分区列和相关分区信息,并且指定存放在一个表组中。
分区
在分析型数据库中,维度表无分区,普通表的分区目前最多为两级。
分区种类有Hash分区和List分区两种。目前分析型数据库支持将普通表的一级分区设置为Hash分区,二级分区设置为List分区,即可支持 Hash join又可支持增量数据导入。
Hash分区是根据导入数据时已有的一列的内容进行散列后进行分区的,目前多张事实表进行快速的Hash Join时JoinKey必须有分区列参与,同时这些表的Hash分区数必须一致。仅采用Hash分区的数据表,在数据装载时,将进行全量覆盖历史数据。
注:0.9版本之前,不支持事实表在没有Hash分区键参与关联条件的情况下进行关联,0.9.5版本后,通 过Full MPP Mode或小表广播进行计算时无此限制,关于 join的详细内容请看《多计算引擎和Hint》章 节。
List分区是根据导入操作时所填写的分区列值来进行分区的,即一次导入的数据会进入同一个List分区中,因此List分区是支持增量的数据导入的。
注:无论采用何种分区形态,分析型数据库均不需要在用户查询时指定分区列,但是指定分区列或分区列的范围进行查询可能会提高查询性能。
根据表的更新方式不同,分析型数据库的表分为离线批量更新的表和实时更新的表:
- 离线批量更新的表,适合从离线系统如MaxCompute(原ODPS)产出的数据结果导入到分析型数据库供在线系统使用。
- 实时更新的表,可以直接insert/delete单条数据,适合业务系统直接写入数据。同时实时更新的表不提供二级分区功能(因为默认支持增量,无需二级分区)。
注意,分析型数据库不支持读写事务,并且数据实时更新时一分钟左右才可查询,另外在一致性方面分 析型数据库遵循最终一致性。
最后更新:2016-12-06 11:56:38
上一篇:
1.1 开通服务__第一章 快速开始_使用手册_分析型数据库-阿里云
下一篇:
2.2 数据类型支持__第二章 基本概念_使用手册_分析型数据库-阿里云
创建APP__快速开始_移动数据分析-阿里云
峰值690G!阿里云协助警方破获国内最大黑客攻击案
获取作业描述__SDK接口说明_Java版SDK_批量计算-阿里云
阿里云发布Link物联网平台,库伟:未来五年将推动服务100万的开发者
跨阿里云账号的ECS自建数据库迁移至RDS__最佳实践_数据传输-阿里云
服务配置__产品管理_控制台使用手册_阿里云物联网套件-阿里云
类型3:视音频点播加速__用户指南_CDN-阿里云
RTMP推流上传__上传文件_开发人员指南_对象存储 OSS-阿里云
示例一__快速开始_Quick BI-阿里云
订阅关系一致__最佳实践_消息队列 MQ-阿里云
相关内容
常见错误说明__附录_大数据计算服务-阿里云
发送短信接口__API使用手册_短信服务-阿里云
接口文档__Android_安全组件教程_移动安全-阿里云
运营商错误码(联通)__常见问题_短信服务-阿里云
设置短信模板__使用手册_短信服务-阿里云
OSS 权限问题及排查__常见错误及排除_最佳实践_对象存储 OSS-阿里云
消息通知__操作指南_批量计算-阿里云
设备端快速接入(MQTT)__快速开始_阿里云物联网套件-阿里云
查询API调用流量数据__API管理相关接口_API_API 网关-阿里云
使用STS访问__JavaScript-SDK_SDK 参考_对象存储 OSS-阿里云