开发者学堂课程【实时数仓 Hologres 实战课程:快速上手 Hologres(一)】学习笔记,与课程紧密联系,让用户快速学习知识。
课程地址:https://developer.aliyun.com/learning/course/904/detail/14389
快速上手 Hologres(一)
目录:
一、如何购买 Hologres
二、Hologres 的一些基本操作
三、Hologres 相关概念
四、连接工具
五、创建基本表
六、Hologres 数据类型简介
七、Hologres 常见的基本设置
八、性能调优实操演示
一、如何购买 Hologres
l 登录阿里云官网:aliyun.com/
l 搜索交互式分析产品便可以找到 Hologres
l 进入到 Hologres 购买产品页面后用户需要选择自己购买的商品类型(包年包月:按量付费)
l 选择相应的地域,将与在阿里云购买的其他产品放在同一个地域下,如此有益于将数据传送造成的损耗降到最低,提高系统性能。
l 用户需要根据自身的实际情况来选择对应的规格(服务器有提供多种规格)
l 购买的最后一步,用户在购买页面输入一个实例名称便完成了整个购买流程。
二, Hologres 的一些基本操作
(1)如何查看购买的 Hologres?
回到交互式分析页面,点击管理控制台
(2)进入管理控制台后,用户可以进行哪些基本操作?
可进行的操作如下:
Ø 管理
² 实例配置(查看用户信息)
² 用户管理(添加和删除用户操作)
² DB管理(查看已经创建的类和进行一些基本操作)
² 监控告警(查看实例的实时使用状况,如 CPU 用量和实例内存用量)
Ø 升配
Ø 减配
Ø 清除
Ø 续费
三, Hologres 相关概念
l 实例∶使用和管理数据库存储服务的实体,一个实例可以看作是多个数据库的合集
l 数据库︰一个模式的合集,用户所有的操作,包括表、函数等都是在数据库里完成。系统会在用户完成实例申请后默认创建一个"postgres"的数据库,该 DB 仅用于运维管理,实际业务需要新建DB
l 表∶表是数据存储单元。它在逻辑上是由行和列组成的二维结构,列的数量和顺序是固定的,并且每一列拥有一个名字。行的数目是变化的,它反映了在一个给定时刻表中存储的数据量。
l 外表:外表是数据实际存储在其他系统里,但是通过 Hologres 来访问的一类表。Hologres 完全兼容 postgres 的 foreign data wrapper。目前内部支持直接访问 MaxComputer 中的数据
四, 连接工具
Hologres 兼容 PostgresQL 生态,提供 JDBC/ODBC Driver,可以连接 PG 的开发工具都能直接连接 Hologres,也提供 Holostudio 和 HoloWeb 开发平台。
Hologres SQL 概览
Hologres 的 SQL 目前兼容开源的 PostgresSQL 11,因此用户可以参照 Postgres 官方文档来编写自己的查询任务
https://www.postgresql.orgldocs/11/index.html
五,创建基本表
创建表
Hologres建表语句是PG的一个子集
CREATE TABLE [IF NOT EXIST5] [ schema_name.]table_name ( [
column_name column_type [ column_constraints,[...]]l table_constraints
l , ...]
)
]) ;
一个简单的创建表的例子如下:
CREATE TABLE IF NOT EXISTS holo_test(
name text,
ds text,age text,price float
PRIMARY KEY ( name));
分区表的创建
l 分区表的创建依然兼容 Postgres 语法,分区表方便用户管理数据,并能通过分区裁剪加快数据的查找
l 不能向父表插入任何数据
l 只有 text/varchar 类型才能作为分区健
l partition by 类型仅支持 list,切 partition list 只能有一个值
l 分区表的数据不会自动删除,需要用户自己管理生命周期
begin;
drop table if exists HOLO_NULTI_PART;
create table HOLO_MULTI_PART(id text not null,pt text not null) PARTITION BY LIST (pt);create table HOLO_MULTI_PART_0 partition of HOLO_MULTI_PART FOR VALUES IN ( '0');
create table HOLO_MULTI_PART_1 partition of HOLO_MULTI_PART FOR VALUES IN ( '1');create table HOLO_MULTI_PART_2 partition of HOLO_MULTI_PART FOR VALUES IN ('2');create table HOLO_MULTI_PART_3 partition of HOLO_MULTI_PART FOR VALUES IN ('3');create table HOLO_MULTI_PART_4 partition of HOLO_MULTI_PART FOR VALUES IN ( ' 4 ');commit;
六,Hologres 数据类型简介
数据类型:
数据类型 |
别名 |
是否支持 |
存储大小 |
范围 |
说明 |
integcr |
int,int4 |
支待 |
4字节 |
-2147483648到+2147483647 |
常用的整数 |
bigint |
int8 |
支持 |
8字节 |
-9223372036854775808到 |
大范园整数 |
boolcan |
bool |
支持 |
1字节 |
Truo / Falsc |
布尔类型 |
float |
float8 |
支持 |
8字节 |
15位十进制敌字精度 |
可变精度。不精确 |
double precision |
|
支持 |
8字节 |
15位十进制数字精度 |
可变精度。不精确 |
text |
varchar |
支持 |
可变长 |
|
可变长度字符串 |
timestampt with time zone |
timestamptz |
支持 |
8字节 |
4713 BC 到294276 AD |
时间戳,包含时区,解析度为1微妙/14位数。示例:“2004-10-1910:23:54+02" |
Date |
Date |
支持 |
4字节 |
4713 BC到5874897 |
单位是一天 |
Decimal |
Numeric |
支持 |
可变长 |
小数点前38位;小数点后38位 |
需要指定precision,scale信息 |