阿里云-AnalyticDB【分析型数据库】总结介绍

2023-10-22 06:45

本文主要是介绍阿里云-AnalyticDB【分析型数据库】总结介绍,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

一、背景
随着企业IT和互联网系统的发展,产生了越来越多的数据。数据量的积累带来了质的飞跃,使得数据应用从业务系统的一部分演变得愈发独立。物流、交通、新零售等越来越多的行业需要通过OLAP做到精细化运营,从而调控生产规则、运营效率、企业决策等。

在业务系统中,我们通常使用的是OLTP数据存储,例如MySQL,PostgreSQL等。上述关系数据库系统擅长事务处理,能够很好的支持频繁数据插入和修改。一旦需要计算的数据量过大,例如数千万甚至数十亿条,或者需要进行非常复杂的计算,此时OLTP数据库系统便力不从心了。这个时候,我们便需要OLAP系统来进行处理。

分析型数据库MySQL版是云端托管的PB级高并发实时数据仓库,是专注于服务OLAP领域的数据仓库。在数据存储模型上,采用关系模型进行数据存储,可以使用SQL进行自由灵活的计算分析,无需预先建模。利用云端的无缝伸缩能力,分析型数据库MySQL版在处理百亿条甚至更多量级的数据时真正实现毫秒级计算。

分析型数据库MySQL版支持通过SQL来构建关系型数据仓库。具有管理简单、节点数量伸缩方便、灵活升降实例规格等特点,而且支持丰富的可视化工具以及ETL软件,极大的降低了企业建设数据化的门槛。

分析型数据库MySQL版为精细化运营而生,实时洞现数据价值,持续推进企业数据化变革转型。

关于OLAP和OLTP请访问我的另一篇博客 数据的两种处理方式 OLAP、OLTP

二、AnalyticDB能干啥?
阿里云分析型数据库是一项在云中提供的实时在线分析 (OLAP) 托管数据库服务,可处理海量数据。作为一项快速灵活的数据库服务,分析型数据库从云中提供数据分析服务,它兼容 MySQL 协议,包括元数据信息。

阿里云分析型数据库是一个基于云的数据库解决方案,它能实现实时处理海量数据,并可帮助实现基于数据分析的业务转型。快速查询响应时间让您能够以毫秒级的时间计算十亿级的数据。分析型数据库比标准数据库的可扩展性更高 - 非常适合为项目、报告和高级分析部署业务分析、大数据云解决方案。

阿里云分析型数据库可以轻松地将它与您的应用集成以便快速分析大量数据,凭借其高级分析和数据挖掘解决方案、内建的安全性和优化的查询处理,阿里云分析型数据库可助您轻松实现复杂的业务目标。

三、ADB的优势是啥?
3.1、高计算能力
3.1.1、高级功能

兼容 SQL 以提供多维度分析、数据透视和数据筛选
支持标准 SQL 的数据定义、操作和控制。例如 DDL、DML 和 DCL。
支持 JOIN、HAVING、DISTINCT 等函数。
执行对任意字段的组合查询。
支持常规的聚合函数以及个性化的分段、抽样等统计函数。
3.1.2、快速导出

支持快速转储功能,可将海量数据快速转储到云上的另一系统中。
提供每秒超过 100 万行的高速转储。
3.2、高性能
数十亿字节的数据多维度透视。
支持毫秒级的多个大表关联计算。
使用全自动功能为每一列数据建立最合适的索引格式。
计算引擎对用户查询进行智能优化,以增强性能并降低成本。
3.3、可用性保障
凭借数据多副本存储和动态资源管理机制提供了高可用性和冗余。
3.4、安全可靠
实施权限管理机制以确保数据安全性。

利用公钥/私钥机制增强数据安全性。

3.5、易用性
3.5.1、兼容 MySQL
全面兼容 MySQL 协议(包括数据元素信息)。
天生具备与商业分析工具、应用的兼容性。
自带对快速访问各种类型的数据来源的支持。
降低了业务系统和商业软件的接入成本。
3.5.2、简单易用
提供易用的图形化管理控制台和完善的文档与手册,并提供快速开始指南。
采用灵活的计费方式,您只需为实际使用的资源付费。
3.6、特色功能
可使用地理 LBI 功能圈选地理坐标数据,无需空间索引。

内建的动态分段、快速聚合等多种函数方便了 OLAP 基于服务器的应用的开发。

四、如何使用ADB?
1、购买(选择你需要的)…

2、连接ADB

2.1、通过代码连接
2.2、阿里的控制台(提供连接地址和端口)
2.3、一些客户端(DataGrip或者Navicat之类的)
3、创建表组

命名规则:
表组名以字母开头,字母或数字结尾(不能以下划线结尾);可包含字母、数字或下划线(_),长度不超过64个字符;
表组名中不能包含双下划线(__)。
同一个数据库中,表组名唯一。
4、创建表(命名和表组名的规则类似)

5、加载数据

6、使用数据(增删改查之类的)

概念介绍:
1、ECU:弹性计算单元(Elastic compute units 简写ECU)是AnalyticDB用来衡量实例计算能力的元单位。一个数据库由若干个同一类型的ECU节点组成,例如数据库A,可能由4个C8组成,或者6个S2N组成,每个ECU节点配备有固定的磁盘和内存资源。

2、表组:表组是一系列可发生关联的数据表的集合,AnalyticDB为了管理相关联的数据表,引入了表组的概念。表组类似于传统数据库schema的概念,AnalyticDB表组分为两类:

维度表组(系统自带):自带维度概念的表,可以放到维度表组下。
普通表组: 一般会把需要关联的普通表放在相同普通表组中,建议这个表组中的所有普通表的一级分区数一致,join性能会有很大提升。
3、表: 在表组之下是表的概念,AnalyticDB提供两种类型的表:

维度表: 带有维度概念的表,又称为复制表。默认每个ECU节点放置一份全量的维度表数据,所以维度表可以和任何普通表进行关联。由于维度表会消耗更多的存储资源,所以维度表的数据量大小有限制,一般要求维度表单表不超过5000万行。
普通表: 普通表就是分区表,为充分利用分布式系统的查询能力而设计的一种表。普通表默认是指一级分区表,如果有增量数据导入需求,可以创建二级分区表。
4、分区: 普通表才有分区的概念,AnalyticDB支持两级分区策略:一级分区采用hash算法,单表数据量在60亿以内,我们推荐您使用一级分区,通常一级分区已足够。二级分区采用list算法,二级分区部分见最佳实践章节。

5、主键: AnalyticDB的的表必须包含主键字段,通过主键进行记录的唯一性判断。主键由业务id、一级分区键组成,有些情况业务id与一级分区相同。对于记录量特别大的表,从存储空间和insert性能考虑,一定要减少主键的字段数。

支持的数据类型介绍:
boolean布尔类型,值只能是0或1。取值0的逻辑意义为假,取值1的逻辑意义为真,存储字节数1比特位。

tinyint微整数类型,取值范围-128到127,存储字节数1字节。

smallint整数类型,取值范围-32768到32767,存储字节数2字节。

int整数类型,取值范围-2147483648到2147483647,存储字节数4字节。

bigint大整数类型,取值范围-9223372036854775808到9223372036854775807,存储字节数8字节。

float单精度浮点数,取值范围-3.402823466E+38到-1.175494351E-38, 0, 1.175494351E-38到 3.402823466E+38,IEEE标准,存储字节数4字节。

double双精度浮点数,取值范围-1.7976931348623157E+308到-2.2250738585072014E-308, 0, 2.2250738585072014E-308 到 1.7976931348623157E+308,IEEE标准,存储字节数8字节。。

varchar变长字符串类型。varchar长度不得超过16KB,否则可能会出现字段为null。可以设置该列去掉索引或者设置为全文索引。去掉索引后建议该列不要在查询中进行筛选和计算。

date日期类型,取值范围'1000-01-01' 到 '9999-12-31',支持的数据格式为 'YYYY-MM-DD',存储字节数为4字节。

time 时间类型,取值范围'00:00:00' 到 '23:59:59',支持的数据格式为'HH:MM:SS',存储字节数为4字节。

timestamp时间戳类型, 取值范围'1970-01-01 00:00:01'UTC到 '2038-01-19 03:14:07' UTC,支持的的数据格式为'YYYY-MM-DD HH:MM:SS',存储字节数为4字节。

语法介绍:
1、ADB全面兼容MySQL和SQL2003,所以很多语法都是和MySQL类似的。
2 、 注 意 : A B D 

这篇关于阿里云-AnalyticDB【分析型数据库】总结介绍的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/259777

相关文章

Python调用Orator ORM进行数据库操作

《Python调用OratorORM进行数据库操作》OratorORM是一个功能丰富且灵活的PythonORM库,旨在简化数据库操作,它支持多种数据库并提供了简洁且直观的API,下面我们就... 目录Orator ORM 主要特点安装使用示例总结Orator ORM 是一个功能丰富且灵活的 python O

Springboot中分析SQL性能的两种方式详解

《Springboot中分析SQL性能的两种方式详解》文章介绍了SQL性能分析的两种方式:MyBatis-Plus性能分析插件和p6spy框架,MyBatis-Plus插件配置简单,适用于开发和测试环... 目录SQL性能分析的两种方式:功能介绍实现方式:实现步骤:SQL性能分析的两种方式:功能介绍记录

使用 sql-research-assistant进行 SQL 数据库研究的实战指南(代码实现演示)

《使用sql-research-assistant进行SQL数据库研究的实战指南(代码实现演示)》本文介绍了sql-research-assistant工具,该工具基于LangChain框架,集... 目录技术背景介绍核心原理解析代码实现演示安装和配置项目集成LangSmith 配置(可选)启动服务应用场景

最长公共子序列问题的深度分析与Java实现方式

《最长公共子序列问题的深度分析与Java实现方式》本文详细介绍了最长公共子序列(LCS)问题,包括其概念、暴力解法、动态规划解法,并提供了Java代码实现,暴力解法虽然简单,但在大数据处理中效率较低,... 目录最长公共子序列问题概述问题理解与示例分析暴力解法思路与示例代码动态规划解法DP 表的构建与意义动

使用Navicat工具比对两个数据库所有表结构的差异案例详解

《使用Navicat工具比对两个数据库所有表结构的差异案例详解》:本文主要介绍如何使用Navicat工具对比两个数据库test_old和test_new,并生成相应的DDLSQL语句,以便将te... 目录概要案例一、如图两个数据库test_old和test_new进行比较:二、开始比较总结概要公司存在多

MySQL数据库函数之JSON_EXTRACT示例代码

《MySQL数据库函数之JSON_EXTRACT示例代码》:本文主要介绍MySQL数据库函数之JSON_EXTRACT的相关资料,JSON_EXTRACT()函数用于从JSON文档中提取值,支持对... 目录前言基本语法路径表达式示例示例 1: 提取简单值示例 2: 提取嵌套值示例 3: 提取数组中的值注意

查询SQL Server数据库服务器IP地址的多种有效方法

《查询SQLServer数据库服务器IP地址的多种有效方法》作为数据库管理员或开发人员,了解如何查询SQLServer数据库服务器的IP地址是一项重要技能,本文将介绍几种简单而有效的方法,帮助你轻松... 目录使用T-SQL查询方法1:使用系统函数方法2:使用系统视图使用SQL Server Configu

SQL Server数据库迁移到MySQL的完整指南

《SQLServer数据库迁移到MySQL的完整指南》在企业应用开发中,数据库迁移是一个常见的需求,随着业务的发展,企业可能会从SQLServer转向MySQL,原因可能是成本、性能、跨平台兼容性等... 目录一、迁移前的准备工作1.1 确定迁移范围1.2 评估兼容性1.3 备份数据二、迁移工具的选择2.1

C#使用DeepSeek API实现自然语言处理,文本分类和情感分析

《C#使用DeepSeekAPI实现自然语言处理,文本分类和情感分析》在C#中使用DeepSeekAPI可以实现多种功能,例如自然语言处理、文本分类、情感分析等,本文主要为大家介绍了具体实现步骤,... 目录准备工作文本生成文本分类问答系统代码生成翻译功能文本摘要文本校对图像描述生成总结在C#中使用Deep

Python中连接不同数据库的方法总结

《Python中连接不同数据库的方法总结》在数据驱动的现代应用开发中,Python凭借其丰富的库和强大的生态系统,成为连接各种数据库的理想编程语言,下面我们就来看看如何使用Python实现连接常用的几... 目录一、连接mysql数据库二、连接PostgreSQL数据库三、连接SQLite数据库四、连接Mo