数据仓库服务,数据仓库服务快速入门文档版本

保存文件 12
发布日期 102021-10-29 华为技术有限公司 版权所有©华为技术有限公司2021。
保留一切权利。
非经本公司书面许可,任何单位和个人不得擅自摘抄、复制本文档内容的部分或全部,并不得以任何形式传播。
商标声明 和其他华为商标均为华为技术有限公司的商标。
本文档提及的其他所有商标或注册商标,由各自的所有人拥有。
注意您购买的产品、服务或特性等应受华为公司商业合同和条款的约束,本文档中描述的全部或部分产品、服务或特性可能不在您的购买或使用范围之内。
除非合同另有约定,华为公司对本文档内容不做任何明示或暗示的声明或保证。
由于产品版本升级或其他原因,本文档内容会不定期进行更新。
除非另有约定,本文档仅作为使用指导,本文档中的所有陈述、信息和建议不构成任何明示或暗示的担保。
文档版本10(2021-10-29) 版权所有©华为技术有限公司 i 数据仓库服务快速入门 目录 目录 1快速创建GaussDB(DWS)集群并导入和测试TPC-DS数据..................................................1 2使用CDM将MySQL数据迁移至GaussDB(DWS)集群.......................................................5 3

创建集群并连接集群................................................................................................................

18 3.1第1

步:入门前准备.............................................................................................................................................................

183.2第2步:创建集群..................................................................................................................................................................19
3.3第3步:连接集群..................................................................................................................................................................22
3.4第4

步:导入样例数据并查询............................................................................................................................................

263.4.1

交通卡口通行车辆分析......................................................................................................................................................

263.4.2

某公司供应链需求分析......................................................................................................................................................

313.4.3

零售业百货公司经营状况分析.........................................................................................................................................

393.5第5

步:查看其它资料并清理资源...................................................................................................................................

47 4

数据库使用入门........................................................................................................................

49 4.1

从这里开始...............................................................................................................................................................................

494.2

创建和管理数据库..................................................................................................................................................................

514.3规划存储模型...........................................................................................................................................................................53
4.4创建和管理表...........................................................................................................................................................................55
4.4.1

创建表....................................................................................................................................................................................

554.4.2

向表中插入数据...................................................................................................................................................................

554.4.3

更新表中数据.......................................................................................................................................................................

584.4.4

查看数据................................................................................................................................................................................

594.4.5

删除表中数据.......................................................................................................................................................................

594.5加载示例数据...........................................................................................................................................................................60
4.6

查看系统表...............................................................................................................................................................................

814.7创建和管理

schema...............................................................................................................................................................

834.8

创建和管理分区表..................................................................................................................................................................

854.9

创建和管理索引......................................................................................................................................................................

874.10

创建和管理视图....................................................................................................................................................................

904.11

创建和管理序列....................................................................................................................................................................

914.12

创建和管理定时任务...........................................................................................................................................................

93 5

导入数据入门示例....................................................................................................................

96 文档版本10(2021-10-29) 版权所有©华为技术有限公司 ii 数据仓库服务快速入门 1快速创建GaussDB(DWS)集群并导入和测试TPC-DS数据 1快速创建GaussDB(DWS)集群并导入和测试TPC-DS数据 本入门提供创建GaussDB(DWS)集群并使用gsql工具导入和测试TPC-DS数据集的指导。
说明 当前仅“华北-北京一”区域的GaussDB(DWS)集群支持TPC-DS数据测试,其他区域暂不支持。
本入门的基本内容如下所示:
1.获取AK和SK2.创建GaussDB(DWS)集群
3.创建弹性云服务器
4.下载gsql客户端
5.使用gsql导入并测试TPC-DS数据集 获取AK和SK 参见创建访问密钥(AK和SK)获取华为云帐号的“AK/SK”。
创建GaussDB(DWS)集群 步骤1登录华为云控制台。
步骤2选择“大数据>数据仓库服务GaussDB(DWS)”,进入GaussDB(DWS)服务管理控制台。
步骤3单击“创建数据仓库集群”,参见表1-1填写集群参数。
表1-1集群参数参数名区域可用区 取值华北-北京一可用区1(如果资源售罄则选其他可用区) 文档版本10(2021-10-29) 版权所有©华为技术有限公司
1 数据仓库服务快速入门 1快速创建GaussDB(DWS)集群并导入和测试TPC-DS数据 参数名产品类型CPU架构节点规格存储类型每节点可用存储节点数量集群名称管理员用户管理员密码确认密码数据库端口虚拟私有云 子网安全组公网访问企业项目高级配置 取值云数仓X86dwsx2.2xlarge超高I/O100GB3dws-demodbadminDwstest@123Dwstest@1238000vpc-01(此为举例,选择与后续的ECS在同一个虚拟私有云即可,如果没有,则需跳转到虚拟私有云控制台进行创建)-demo(192.168.0.0/24)自动创建安全组暂不使用default默认配置 步骤4单击“立即创建”。
核对参数无误,单击“提交”。
等待约10分钟,集群创建成功。
步骤5单击集群名称进入“基本信息”,记录集群的“内网IP”。
----结束 创建弹性云服务器 步骤1参见快速购买弹性云服务器购买ECS,需填写如表1-2几个参数。
文档版本10(2021-10-29) 版权所有©华为技术有限公司
2 数据仓库服务快速入门 1快速创建GaussDB(DWS)集群并导入和测试TPC-DS数据 表1-2弹性云服务器 参数名 取值 区域 华北-北京
镜像 CentOS7.664bit(40GB) 网络 vpc-01(确保与数据仓库集群在同一个虚拟私有云) 弹性公网IP 现在购买 登录凭证 密码 步骤2单击“立即购买”。
等待约1分钟,弹性云服务器创建成功。
步骤3为弹性云服务器设置安全组,允许客户端主机IP访问。
----结束 下载gsql客户端 步骤1进入GaussDB(DWS)服务管理控制台,左侧单击“连接管理”。
步骤2选择适配ECS镜像的版本(本入门选择“Redhatx86_64”),单击“下载”。
步骤3使用SFTP工具将下载的客户端上传至弹性云服务器的/opt目录下。
----结束 使用gsql导入并测试TPC-DS数据集 步骤1使用SSH工具以root用户登录弹性服务器,密码为创建弹性云服务器时设置的root密码。
步骤2进入/opt目录,解压下载客户端文件,以dws_client_8.1.x_redhat_x64.zip为例。
cd/optunzipdws_client_8.1.x_redhat_x64.zip步骤3执行以下命令,切换到/opt/sample目录下,并设置用户导入样例数据的用户密钥和OBS访问地址。
其中请替换为获取AK和SK获取的AK/SK值。
cdsample/bin/bashsetup.sh-ak-sk-obs_location系统显示以下信息表示设置成功: setupessfully!
步骤4返回上一级目录,执行gsql环境变量。
cd.. sourcegsql_env.sh 文档版本10(2021-10-29) 版权所有©华为技术有限公司
3 数据仓库服务快速入门 1快速创建GaussDB(DWS)集群并导入和测试TPC-DS数据 步骤5执行以下命令,进入gsql命令目录,将样例数据导入数据仓库。
cdbin gsql-dgaussdb-h192.168.1.10-Udbadmin-p8000-f/opt/sample/tpcds_load_data_from_obs.sql-r ●-d:连接的数据库名称,默认使用系统数据库gaussdb。
●-h:表示GaussDB(DWS)集群连接地址,从步骤5获取。
●-U:连接数据库的用户名,默认使用dbadmin连接。
●-f:表示SQL脚本所在路径,本例为:/opt/sample/tpcds_load_data_from_obs.sql。
根据界面提示输入管理员密码,成功连接集群数据库后,系统会自动创建样例数据对应的外表用于关联集群外的数据,然后再创建存放样例数据的目标表,最后通过外表将数据导入到目标表中。
由于数据集较大,导入时间取决于当前DWS集群规格,一般为10~20分钟左右,等待系统显示如下执行时间信息表示导入成功,如下时间仅为示例。
Time:1845600.524ms 步骤6导入成功后,执行以下命令连接gaussdb数据库,按提示输入数据库管理员dbadmin密码。
gsql-dgaussdb-h192.168.1.10-Udbadmin-p8000-r 步骤
7 切换到tpcds的schema,并查询表数据,确认TPC-DS数据已默认导入到tpcds的schema下。
setcurrent_schema=tpcds;\d 步骤8退出数据库连接,回到linux窗口。
\q 步骤9执行以下命令,切换到指定查询目录下并查询样例数据。
cd/opt/sample/query_sql/ /bin/bashtpcds100x.sh 步骤10 根据命令提示,输入集群公网访问地址的IP地址、数据库端口、数据库名称、数据库访问用户以及用户密码。
●数据库名称默认为“gaussdb”。
●数据库访问用户和密码使用创建集群时配置的管理员用户和密码。
查询完成后,在当前查询目录,如“sample/query_sql/”下面会生成一个存放查询结果的目录,命名如“query_output_20170914_072341”。
----结束 文档版本10(2021-10-29) 版权所有©华为技术有限公司
4 数据仓库服务快速入门 2使用CDM将MySQL数据迁移至GaussDB(DWS)集群 2使用CDM将MySQL数据迁移至GaussDB(DWS)集群 场景描述 本入门提供通过云数据迁移服务CDM将MySQL数据批量迁移到GaussDB(DWS)集群的指导。
本入门的基本内容如下所示:
1.迁移前数据检查
2.创建GaussDB(DWS)集群
3.创建CDM集群
4.创建连接
5.新建作业和迁移
6.迁移后数据一致性验证 图2-1迁移场景 主要包括云上和云下的MySQL数据迁移,支持整库迁移或者单表迁移,本文以云下MySQL的整库迁移为例。
●云下MySQL数据迁移: 文档版本10(2021-10-29) 版权所有©华为技术有限公司
5 数据仓库服务快速入门 2使用CDM将MySQL数据迁移至GaussDB(DWS)集群 CDM通过公网IP访问MySQL数据库,CDM与GaussDB(DWS)在同一个VPC下,CDM分别与MySQL和DWS建立JDBC连接。
●云上RDS-MySQL数据迁移:RDS、CDM和GaussDB(DWS)均在同一个VPC下,CDM分别与MySQL和DWS建立JDBC连接。
如果云上RDS与DWS不在一个VPC,则CDM通过弹性公网IP访问RDS。
迁移前数据检查 步骤1连接MySQL实例,查看MySQL数据库情况。
mysql-h-P-u-p--ssl-ca= 表2-1表2参数说明 参数 说明 MySQL数据库连接地址。
数据库端口,默认3306。
MySQL管理员帐号,默认为root。
CA证书路径,该文件需放在执行该命令的路径下。
出现如下提示时,输入数据库帐号对应的密码: Enterpassword: 步骤2分析需要迁移的数据库名及编码、待迁移的表名、表属性。
例如,查询出待迁移的MySQL目标库为test01、test02以及数据库编码。
其中test01库里包括orders、persons、persons_b三张表和一张视图persons_beijing,test02库里包括一张表persons_c。

1.查询数据库名。
showdatabases;
2.查询数据库编码。
use;status; 文档版本10(2021-10-29) 版权所有©华为技术有限公司
6 数据仓库服务快速入门 2使用CDM将MySQL数据迁移至GaussDB(DWS)集群
3.查询库表。
use;showfulltables; 须知 –由于GaussDB(DWS)数据库对表名大小写不敏感,如果原MySQL数据库中存在大小写混用的表名或者纯大写的表名,例如Table01、TABLE01,需要先修改表名为纯小写后才支持迁移,否则会导致迁移后,GaussDB(DWS)无法识别该表。
–建议将MySQL也设置成大小写不敏感模式,修改方法:修改/etc/f参数lower_case_table_names=
1,并重启MySQL服务。
文档版本10(2021-10-29) 版权所有©华为技术有限公司
7 数据仓库服务快速入门 2使用CDM将MySQL数据迁移至GaussDB(DWS)集群
4.查看各个表的属性,以备迁移后对比。
use;desc; ----结束 创建GaussDB(DWS)集群 步骤1参见快速创建GaussDB(DWS)集群并导入和测试TPC-DS数据进行创建,区域可选择“华北-北京四”。
说明 确保GaussDB(DWS)集群与CDM集群在同一区域,同一个VPC下。
步骤2参见快速创建GaussDB(DWS)集群并导入和测试TPC-DS数据使用gsql连接DWS集群。
步骤
3 创建迁移前数据检查的目标数据库test01和test02,确保与原MySQL的数据库同名,数据库编码一致。
createdatabasetest01withencoding'UTF-8'patibility'mysql'templatetemplate0;createdatabasetest02withencoding'UTF-8'patibility'mysql'templatetemplate0; ----结束 创建CDM集群 步骤1登录华为云控制台。
步骤2选择“迁移>云数据迁移CDM”进入CDM管理控制台。
步骤3单击“购买云数据迁移集群”,按以下参数填写。
文档版本10(2021-10-29) 版权所有©华为技术有限公司
8 数据仓库服务快速入门 2使用CDM将MySQL数据迁移至GaussDB(DWS)集群 表2-2CDM集群参数 参数名 取值 当前区域 华北-北京四(与DWS选择在同一区域) 可用区 可用区1(如果资源售罄则选其他可用区) 集群名称 CDM-demo 实例类型 cdm.large(如售罄请选择其他规格) 虚拟私有云 demo-vpc(与DWS选择在同一个VPC) 子网 -f377(10.1.0.0/24)(示例) 安全组 - 企业项目 default 自动关机 关闭 定时开机 关闭 定时关机 关闭 消息通知 关闭 步骤4
单击“立即购买”,核对参数无误,单击“提交”。
步骤5回到CDM管理控制台的“集群管理”页面,等待约5分钟,集群创建成功后,单击集 群名称右侧的“绑定弹性IP”。
步骤6勾选可用的弹性IP,单击“确认”。
如果没有弹性IP,需要跳转到弹性IP界面,购买弹 性IP。
----结束 创建连接 步骤1初次创建MySQL连接,需要上传驱动。

1.访问MySQL驱动,选择“5.1.48”版本下载。

2.下载到本地,解压后,获取mysql-connector-java-xxx.jar。
文档版本10(2021-10-29) 版权所有©华为技术有限公司
9 数据仓库服务快速入门 2使用CDM将MySQL数据迁移至GaussDB(DWS)集群
3.回到CDM管理控制台的“集群管理”页面,单击集群名称右侧的“作业管理”,选择“连接管理>驱动管理”。

4.单击“MySQL”右侧的“上传”,选择mysql-connector-java-xxx.jar,单击“上传文件”。
步骤
2 创建MySQL连接。

1.在CDM管理控制台的“集群管理”页面,单击集群名称右侧的“作业管理”,选择“连接管理>新建连接”。

2.连接器类型勾选“MySQL”,单击“下一步”。
(如果是云上RDS,则勾选“云数据库MySQL”。

3.按表2-3填写连接信息,填写后单击“测试”,测试成功后,单击“保存”。
说明 如测试不通过,请确认CDM是否以公网IP方式连接MySQL数据库,如果是公网IP方式,请参见步骤5绑定公网IP。
表2-3MySQL连接信息 参数项 取值 名称 MySQL 文档版本10(2021-10-29) 版权所有©华为技术有限公司 10 数据仓库服务快速入门 参数项数据库服务器 端口数据库名称用户名密码使用本地API使用Agent 2使用CDM将MySQL数据迁移至GaussDB(DWS)集群 取值192.168.1.100(示例,请填写云下MySQL实际的公网IP,要确保MySQL服务器已放开白名单访问)3306test01rootroot用户密码否否 文档版本10(2021-10-29) 版权所有©华为技术有限公司 11 数据仓库服务快速入门 2使用CDM将MySQL数据迁移至GaussDB(DWS)集群 步骤
3 创建DWS连接。

1.在CDM管理控制台的“集群管理”页面,单击集群名称右侧的“作业管理”,选择“连接管理>新建连接”。

2.连接器类型勾选“数据仓库服务(DWS)”,单击“下一步”。
文档版本10(2021-10-29) 版权所有©华为技术有限公司 12 数据仓库服务快速入门 2使用CDM将MySQL数据迁移至GaussDB(DWS)集群
3.按表2-4填写连接信息,填写后单击“测试”,测试成功后,单击“保存”。
表2-4DWS连接信息 参数项 取值 名称 DWS-test01 数据库服务器 单击“选择”,从集群列表中选择要连接的DWS集群。
说明系统会自动刷出同一个区域、同一个VPC下的DWS集群,如果没有,则需要手动填写网络已连通的DWS的访问IP。
端口 8000 数据库名称 test01(参见步骤3确保GaussDB(DWS)已手动创建了对应的数据库) 用户名 dbadmin 密码 dbadmin用户密码 使用Agent 否 文档版本10(2021-10-29) 版权所有©华为技术有限公司 13 数据仓库服务快速入门 2使用CDM将MySQL数据迁移至GaussDB(DWS)集群
4.重复3.1~3.3,创建DWS-test02连接。
----结束 新建作业和迁移 步骤1在CDM管理控制台的“集群管理”页面,单击集群名称右侧的“作业管理”,选择“整库迁移>新建作业”。
步骤
2 填写如下参数后,单击“下一步”。
●作业名称:MySQL-DWS-test01●源端作业配置: –源连接名称:MySQL 文档版本10(2021-10-29) 版权所有©华为技术有限公司 14 数据仓库服务快速入门 2使用CDM将MySQL数据迁移至GaussDB(DWS)集群 –模式或表空间:test01●目的端作业配置: –目的连接名称:DWS-test01–模式或表空间:public–自动创表:不存在时创建–是否压缩:是–存储模式:列模式–其他选项:保持默认 步骤3勾选所有表,单击,单击“下一步”。
文档版本10(2021-10-29) 版权所有©华为技术有限公司 15 数据仓库服务快速入门 2使用CDM将MySQL数据迁移至GaussDB(DWS)集群 步骤4参数保持默认即可,单击“保存并运行”。
步骤5查看作业运行情况,状态为“eeded”,表示迁移成功。
步骤6重复执行步骤1~步骤
5,,迁移数据库test02的所有表 须知在新建作业时,目标源的DWS库,需选择对应到test02。
----结束 文档版本10(2021-10-29) 版权所有©华为技术有限公司 16 数据仓库服务快速入门 2使用CDM将MySQL数据迁移至GaussDB(DWS)集群 迁移后数据一致性验证 步骤1参见快速创建GaussDB(DWS)集群并导入和测试TPC-DS数据使用gsql连接DWS的test02集群。
gsql-dtest01-h数据库主机IP-p8000-Udbadmin-W数据库用户密码-r; 步骤2查询test01库的表。
select*frompg_tableswhereschemaname='public'; 步骤
3 查询每个表的数据是否齐全,字段是否完整。
selectcount(*)fromtablename;\d+tablename; 步骤4抽样检查,验证表数据是否正确。
select*frompersonswherecity=‘Beijing'orderbyid_p; 步骤5重复执行步骤2~步骤4查看其它库和表数据是否正确。
----结束 文档版本10(2021-10-29) 版权所有©华为技术有限公司 17 数据仓库服务快速入门 3创建集群并连接集群 3创建集群并连接集群 3.1第1步:入门前准备 本指南是一个入门教程,向您演示如何创建示例GaussDB(DWS)集群,连接示例GaussDB(DWS)集群数据库、导入存储在OBS中的示例数据和分析示例数据的流程。
您可以使用该入门教程评估GaussDB(DWS)服务。
在开始创建GaussDB(DWS)集群之前,请确保您已完成如下前提条件: ●注册并实名认证公有云帐户●确定集群端口 注册并实名认证公有云帐户 如果您还没有公有云帐户,则必须先注册一个。
如果您已有实名认证的帐户,则可以跳过此步骤,并使用您已有的帐户。

1.打开公有云服务网址/,单击页面右上方的“注册”,进入注册页面。

2.按照页面要求填写用户信息完成注册。

3.单击右上角用户名,进入基本信息页面,单击“实名认证”,进入实名认证页 面。

4.按照页面提示完成实名认证。
说明 开通云服务需要先进行实名认证。
确定集群端口 ● ● ● 在创建GaussDB(DWS)集群时需要指定一个端口供SQL客户端或应用程序通过该端口访问集群。
如果您的客户端机器位于防火墙之后,则您需要有一个可用的开放端口,这样才能从SQL客户端工具连接到集群并进行查询分析。
如果您不了解可用的开放端口,则请联系网络管理员,在您的防火墙中确定一个开放端口。
GaussDB(DWS)支持的端口范围为8000~30000。
文档版本10(2021-10-29) 版权所有©华为技术有限公司 18 数据仓库服务快速入门 3创建集群并连接集群 ●在集群创建之后无法更改集群的端口号,请务必确保在集群创建过程中指定的端口为可用的开放端口。
3.2第2步:创建集群 在使用GaussDB(DWS)执行数据分析任务前,您首先要创建一个集群,一个GaussDB(DWS)集群由多个在相同子网中的节点组成,共同提供服务。
请参考以下指导创建集群。
创建集群 步骤1登录GaussDB(DWS)管理控制台。
步骤2单击左侧导航栏的“集群管理”。
步骤3在“集群管理”页面,单击右上角“创建数据仓库集群”。
步骤
4 选择待创建的集群所属的区域。
●区域:选择“华北-北京四”。
●可用区:默认即可。
步骤
5 选择主机规格。
●产品类型:根据客户需求选择,例如“标准数仓”类型。
●CPU架构:根据客户需求选择,例如“X86”架构。
●节点规格:默认即可。
●节点数量:默认即可,至少3个。
图3-1配置主机规格 步骤
6 填写集群配置参数。
●集群名称:输入“dws-demo”。
●集群版本:显示为当前集群版本,暂不支持修改。
●默认数据库:显示为“gaussdb”。
暂不支持修改。
●管理员用户:默认为“dbadmin”,使用默认值即可。
集群创建成功后,客户端 连接集群数据库时将使用该管理员用户及其密码。
文档版本10(2021-10-29) 版权所有©华为技术有限公司 19 数据仓库服务快速入门 3创建集群并连接集群 ●管理员密码:输入密码。
●确认密码:重复输入一次管理员密码。
●数据库端口:默认即可。
客户端或应用程序将通过该端口连接集群中的数据库。
图3-2集群配置 步骤
7 配置网络参数。
●虚拟私有云:可以在下拉框中选择已有的虚拟私有云,如果未配置过虚拟私有云,可以单击“查看虚拟私有云”进入虚拟私有云管理控制台,新创建一个虚拟私有云例如“vpc-dws”。
然后回到GaussDB(DWS)管理控制台的创建集群页 面,单击“虚拟私有云”下拉框旁边的云。
进行刷新,再选择新创建虚拟私有 ●子网:创建虚拟私有云时会默认创建一个子网,您可以选择对应的子网名。
●安全组:选择“自动创建安全组”。
自动创建的安全组,将被命名为“GaussDB(DWS)-<集群名称>-”,出方向允许所有访问,入方向只开放“数据库端口”以允许来自客户端或应用程序的访问。
如果您选择的是自定义创建的安全组,则需要在该安全组中添加一条入方向的规则,向访问GaussDB(DWS)的客户端主机开放GaussDB(DWS)集群的“数据库端口”,如表3-1所示。
添加入规则的具体操作请参见《虚拟私有云用户指南》中的添加安全组规则章节。
表3-1安全组入规则配置样例 参数名 样例值 协议/应用 TCP 文档版本10(2021-10-29) 版权所有©华为技术有限公司 20 数据仓库服务快速入门 参数名端口 源地址 3创建集群并连接集群 样例值 8000 说明输入创建GaussDB(DWS)集群时设置的“数据库端口”,这个端口是GaussDB(DWS)用于接收客户端连接的端口,默认为8000。
选择“IP地址”,输入访问GaussDB(DWS)的客户端主机的IP地址和子网掩码,例如“192.168.0.10/16”。
●公网访问:选择“现在购买”为集群购买一个弹性IP作为集群公网IP。
并且,在“带宽”参数中设置弹性IP的带宽。
图3-3网络参数 步骤8配置集群所属的“企业项目”。
已开通企业项目管理服务的用户才可以配置该参数。
默认值为default。
企业项目是一种云资源管理方式,企业项目管理服务提供统一的云资源按项目管理,以及项目内的资源管理、成员管理。
您可以选择默认的企业项目“default”或其他已有的企业项目。
如果要创建新的企业项目,请登录企业管理控制台进行创建,详细操作请参考《企业管理用户指南》。
步骤
9 高级配置,在本示例中,选择“默认配置”即可。
●默认配置:表示以下几项高级配置使用系统默认的配置。
–自动快照:默认开启自动生成集群快照的策略。
–CN部署量:CN即协调节点,默认部署2个CN节点。
–参数模板:默认将系统默认的数据库参数模板与集群相关联。
–标签:默认未给集群添加标签。
–加密数据库:默认为关闭,表示不对数据库进行加密。
●自定义:选择该选项时页面上将显示自动快照、CN部署量、参数模板、标签、加密数据库这几项高级配置,需要用户进行自定义设置。
步骤10单击“立即创建”,进入“规格详情”页面。
步骤11单击“提交”。
文档版本10(2021-10-29) 版权所有©华为技术有限公司 21 数据仓库服务快速入门 3创建集群并连接集群 提交成功后开始创建。
单击“返回集群列表”返回集群管理页面,所创集群的初始状态为“创建中”,集群创建需要时间,请等待一段时间。
创建成功后状态更新为“可用”,用户可以开始使用集群。
----结束 3.3第3步:连接集群 操作场景 您在创建好数据仓库集群,开始使用数据库服务前,需要使用数据库客户端连接到GaussDB(DWS)集群中的数据库。
本示例将使用DataStudio客户端工具通过公网地址连接GaussDB(DWS)集群中的数据库。
您也可以使用其他SQL客户端连接集群,更多连接方式请参见《数据仓库服务管理指南》中的“连接集群”章节。

1.获取所要连接的数据库名称、用户名和密码。
首次使用客户端连接集群时,您需使用第2步:创建集群时设置的管理员用户和密码连接到默认数据库“gaussdb”。

2.获取集群公网访问地址:通过集群公网访问地址连接数据库。

3.使用DataStudio连接到集群数据库:下载配置DataStudio客户端并连接集群数据库。
获取集群公网访问地址 步骤1登录GaussDB(DWS)管理控制台。
步骤2在左侧导航栏中,单击“集群管理”。
步骤3在集群列表中,选中已创建集群(如dws-demo),单击“集群名称”前面的向下展开 按钮,获取并保存公网访问地址。
该公网访问地址将在使用DataStudio连接到集群数据库时使用。
图3-4集群管理 ----结束 文档版本10(2021-10-29) 版权所有©华为技术有限公司 22 数据仓库服务快速入门 3创建集群并连接集群 使用DataStudio连接到集群数据库 步骤1GaussDB(DWS)提供了基于Windows平台的DataStudio图形界面客户端,该工具依赖JDK,请先在客户端主机上安装Java1.8.0_141或以上版本的JDK。
在Windows操作系统中,您可以访问JDK官网,下载符合操作系统版本的JDK,并根据指导进行安装。
步骤2登录GaussDB(DWS)管理控制台。
步骤3单击“连接管理”。
步骤
4 在“下载客户端和驱动”页面,下载“DataStudio图形界面客户端”。
●请根据操作系统类型,选择“Windowsx86”或“Windowsx64”,再单击“下载”,可以下载与现有集群版本匹配的DataStudio工具。
如果同时拥有不同版本的集群,单击“下载”时会下载与集群最低版本相对应的DataStudio工具。
如果当前没有集群,单击“下载”时将下载到低版本的DataStudio工具。
GaussDB(DWS)集群可向下兼容低版本的DataStudio工具。
●单击“历史版本”可根据集群版本下载相应版本的DataStudio工具,建议按集群版本下载配套的工具。
图3-5下载客户端 如果同时拥有不同版本的集群,系统会弹出对话框,提示您选择“集群版本”然后下载与集群版本相对应的客户端。
在“集群管理”页面的集群列表中,单击指定集群的名称,再选择“基本信息”页签,可查看集群版本。
步骤5解压下载的客户端软件包(32位或64位)到需要安装的路径。
步骤6打开安装目录,双击DataStudio.exe,启动DataStudio客户端,如图3-6所示。
文档版本10(2021-10-29) 版权所有©华为技术有限公司 23 数据仓库服务快速入门 图3-6启动客户端 3创建集群并连接集群 步骤7在主菜单中选择“文件>新建连接”,如图3-7所示。
图3-7新建连接 步骤8在弹出的“新建/选择数据库连接”页面中,如下图所示,输入连接参数。
图3-8配置连接参数 文档版本10(2021-10-29) 版权所有©华为技术有限公司 24 数据仓库服务快速入门 3创建集群并连接集群 表3-2配置连接参数 字段名称 说明 数据库类型选择“HUAWEICLOUDDWS”。
名称主机名端口号数据库用户名密码保存密码 启用SSL 连接名称。
所要连接的集群IP地址(IPv4)或域名。
数据库端口。
数据库名称。
所要连接数据库的用户名。
所要连接数据库的登录密码。
在下拉列表中选择:●“仅当前会话”:仅在当前会话中保存密 码。
●“不保存”:不保存密码。
启用时,客户端将使用SSL加密连接方式。
SSL连接方式安全性高于普通模式,建议开启。
举例HUAWEICLOUDDWSdws-demo8000gaussdb- - 当“启用SSL”设置为开启时,请先参见下载SSL证书下载SSL证书,并解压证书文件。
然后,在如图3-8所示的窗口中单击“SSL”页签,设置如下参数: 表3-3配置SSL参数 字段名称 说明 客户端SSL证书 选择SSL证书解压目录下的“sslcert\client.crt”文件。
客户端SSL密钥 客户端SSL秘钥只支持PK8格式,请选择SSL证书解压目录下的“sslcert\client.key.pk8”文件。
根证书 SSL密码SSL模式 当“SSL模式”设为“verify-ca”时,必须设置根证书,请选择SSL证书解压目录下的“sslcert\cacert.pem”文件。
客户端pk8格式SSL秘钥密码。
GaussDB(DWS)支持的SSL模式有:●require●verify-caGaussDB(DWS)不支持“verify-full”模式。
文档版本10(2021-10-29) 版权所有©华为技术有限公司 25 数据仓库服务快速入门 图3-9配置SSL参数 3创建集群并连接集群 步骤9单击“确定”建立数据库连接。
如果启用了SSL,在弹出的“连接安全告警”提示对话框中单击“继续”。
登录成功后,将弹出“最近登录活动”提示框,表示DataStudio已经连接到数据库。
用户即可在DataStudio界面的“SQL终端”窗口中执行SQL语句。
图3-10登录成功 欲详细了解DataStudio其他功能的使用方法,请按“F1”查看DataStudio用户手册。
----结束 3.4第4步:导入样例数据并查询 本文档为您提供了3个相互独立的入门样例,您可以根据需要选择其中一个或几个样例进行体验。
3.4.1交通卡口通行车辆分析 本实践将演示交通卡口车辆通行分析,将加载8.9亿条交通卡口车辆通行模拟数据到数据仓库单个数据库表中,并进行车辆精确查询和车辆模糊查询,展示GaussDB(DWS)对于历史详单数据的高性能查询能力。
文档版本10(2021-10-29) 版权所有©华为技术有限公司 26 数据仓库服务快速入门 支持区域 3创建集群并连接集群 说明 ●GaussDB(DWS)已预先将样例数据上传到OBS桶的“traffic-data”文件夹中,并给所有华为云用户赋予了该OBS桶的只读访问权限。
●GaussDB(DWS)集群暂不支持跨区域访问OBS桶数据,当前已上传OBS桶数据的区域如支持区域所示,非以下区域的集群暂不支持该实验。
本实践预计时长40分钟,基本流程如下:
1.准备工作
2.步骤一:创建集群
3.步骤二:使用DataStudio连接集群
4.步骤三:导入交通卡口样例数据
5.步骤四:车辆分析 当前已上传OBS数据的区域如表3-4所示。
表3-4区域和OBS桶名区域华北-北京一华北-北京二华北-北京四华北-乌兰察布一华东-上海一华东-上海二华南-广州中国-香港亚太-新加坡亚太-曼谷拉美-圣地亚哥 OBS桶名dws-demo-north-2-north-4-north-9-east-3-east-2-south-1dws-demo-ap-southeast-1dws-demo-ap-southeast-3dws-demo-ap-southeast-2dws-demo-la-south-
2 准备工作 ●已注册华为云帐号,且在使用GaussDB(DWS)前检查帐号状态,帐号不能处于欠费或冻结状态。
●参见创建访问密钥(AK和SK)获取此帐号的“AK/SK”。
文档版本10(2021-10-29) 版权所有©华为技术有限公司 27 数据仓库服务快速入门 3创建集群并连接集群 步骤一:创建集群 步骤1登录华为云管理控制台。
步骤2在“服务列表”中,选择“大数据>数据仓库服务”。
步骤3左侧导航栏单击“集群管理”,进入页面后,单击右上角的“创建数据仓库集群”按 钮。
步骤4参见表3-5进行参数配置。
表3-5软件配置 参数名称配置方式 区域 选择“华北-北京四”。
说明本指导以“华北-北京四”为例进行介绍,如果您需要选择其他区域进行操作,请确保所有操作均在同一区域进行。
可用区 可用区
2 产品类型标准数仓 CPU架构X86 节点规格 dws2.m6.4xlarge.8(16vCPU|128GB|2000GBSSD) 说明如规格售罄,可选择其他可用区或规格。
节点数量
3 集群名称dws-demo 管理员用户dbadmin 管理员密码- 确认密码- 数据库端口8000 虚拟私有云vpc-default 子网 -default(192.168.0.0/24) 安全组 自动创建安全组 公网访问现在购买 宽带 1Mbit/s 高级配置默认配置 步骤5信息核对无误,单击“立即购买”,单击“提交”。
步骤6等待约6分钟,待集群创建成功后,单击集群名称前面的,弹出集群信息,记录下“公网访问地址”,例如。
文档版本10(2021-10-29) 版权所有©华为技术有限公司 28 数据仓库服务快速入门 3创建集群并连接集群 ----结束 步骤二:使用DataStudio连接集群 步骤1请确保客户端主机已安装JDK1.8.0以上版本,并进入“此电脑>属性>高级系统设置>环境变量”设置JAVA_HOME(例如C:\ProgramFiles\Java\jdk1.8.0_191),并在变量path中添加“;%JAVA_HOME%\bin”。
步骤2在GaussDB(DWS)控制台的“连接管理”页面,下载DataStudio客户端。
步骤3解压下载的DataStudio软件包,进入解压目录后,双击DataStudio.exe启动客户端。
步骤4在DataStudio主菜单中选择“文件>新建连接”,并在弹出框中参照表3-6所示配置。
表3-6DataStudio软件配置 参数名称 配置方式 数据库类型GaussDB(DWS) 名称 dws-demo 主机 与步骤一:创建集群查询到的“公网访问地址”一致。
端口 8000 数据库 gaussdb 用户名 dbadmin 密码 - 启用SSL 不启用 步骤5单击“确定”。
----结束 文档版本10(2021-10-29) 版权所有©华为技术有限公司 29 数据仓库服务快速入门 3创建集群并连接集群 步骤三:导入交通卡口样例数据 使用SQL客户端工具连接到集群后,就可以在SQL客户端工具中,执行以下步骤导入交通卡口车辆通行的样例数据并执行查询。
步骤1执行以下语句,创建traffic数据库。
createdatabasetrafficencoding'utf8'templatetemplate0; 步骤
2 执行以下步骤切换为连接新建的数据库。

1.在DataStudio客户端的“对象浏览器”窗口,右键单击数据库连接名称,在弹出菜单中单击“刷新”,刷新后就可以看到新建的数据库。

2.右键单击“traffic”数据库名称,在弹出菜单中单击“打开连接”。

3.右键单击“traffic”数据库名称,在弹出菜单中单击“打开新的终端”,即可打开连接到指定数据库的SQL命令窗口,后面的步骤,请全部在该命令窗口中执行。
步骤
3 执行以下语句,创建用于存储卡口车辆信息的数据库表。
createschematraffic_data;setcurrent_schema=traffic_data;droptableifexistsGCJL;CREATETABLEGCJL( kkbhVARCHAR(20),hphmVARCHAR(20),gcsjDATE,cplxVARCHAR
(8),cllxVARCHAR
(8),csysVARCHAR
(8))with(orientation=column,COMPRESSION=MIDDLE)distributebyhash(hphm); 步骤4创建外表。
外表用于识别和关联OBS上的源数据。
须知 ●其中,代表OBS桶名,仅支持部分区域,当前支持的区域和对应的OBS桶名请参见支持区域。
GaussDB(DWS)集群不支持跨区域访问OBS桶数据。
●本实践以“华北-北京四”地区为例,可填入-north-
4,替换为实际值,在准备工作获取。
createschematpchobs;setcurrent_schema='tpchobs';dropFOREIGNtableifexistsGCJL_OBS;CREATEFOREIGNTABLEGCJL_OBS( liketraffic_data.GCJL)SERVERgsmpp_serverOPTIONS( encoding'utf8',location'obs:///traffic-data/gcxx',format'text',delimiter',',ess_key'',secret_ess_key'',chunksize'64',IGNORE_EXTRA_DATA'on'); 文档版本10(2021-10-29) 版权所有©华为技术有限公司 30 数据仓库服务快速入门 3创建集群并连接集群 步骤5执行以下语句,将数据从外表导入到数据库表中。
insertintotraffic_data.GCJLselect*fromtpchobs.GCJL_OBS; 导入数据需要一些时间,请耐心等待。
----结束 步骤四:车辆分析
1.执行Analyze用于收集与数据库中普通表内容相关的统计信息,统计结果存储在系统表PG_STATISTIC中。
执行计划生成器会使用这些统计数据,以生成最有效的查询执行计划。
执行以下语句生成表统计信息: Analyze;
2.查询数据表中的数据量执行如下语句,可以查看已加载的数据条数。
setcurrent_schema=traffic_data;Selectcount(*)fromtraffic_data.gcjl;
3.车辆精确查询执行以下语句,指定车牌号码和时间段查询车辆行驶路线。
GaussDB(DWS)在应对点查时秒级响应。
setcurrent_schema=traffic_data;selecthphm,kkbh,gcsjfromtraffic_data.gcjlwherehphm='YD38641'andgcsjbetween'2016-01-06'and'2016-01-07'orderbygcsjdesc;
4.车辆模糊查询执行以下语句,指定车牌号码和时间段查询车辆行驶路线,GaussDB(DWS)在应对模糊查询时秒级响应。
setcurrent_schema=traffic_data;selecthphm,kkbh,gcsjfromtraffic_data.gcjlwherehphmlike'YA23F%'andkkbhin('508','1125','2120')andgcsjbetween'2016-01-01'and'2016-01-07'orderbyhphm,gcsjdesc; 3.4.2某公司供应链需求分析 本实践将演示从OBS加载样例数据集到GaussDB(DWS)集群中并查询数据的流程,从而向您展示GaussDB(DWS)在数据分析场景中的多表分析与主题分析。
说明 ●GaussDB(DWS)已经预先生成了1GB的TPC-H-1x的标准数据集,已将数据集上传到了OBS桶的tpch文件夹中,并且已赋予所有华为云用户该OBS桶的只读访问权限,用户可以方便的进行导入。
●GaussDB(DWS)集群暂不支持跨区域访问OBS桶数据,当前已上传OBS桶数据的区域如支持区域所示,非以下区域的集群暂不支持该实验。
支持区域 当前已上传OBS数据的区域如表3-7所示。
文档版本10(2021-10-29) 版权所有©华为技术有限公司 31 数据仓库服务快速入门 表3-7区域和OBS桶名区域华北-北京一华北-北京二华北-北京四华北-乌兰察布一华东-上海一华东-上海二华南-广州中国-香港亚太-新加坡亚太-曼谷拉美-圣地亚哥 3创建集群并连接集群 OBS桶名dws-demo-north-2-north-4-north-9-east-3-east-2-south-1dws-demo-ap-southeast-1dws-demo-ap-southeast-3dws-demo-ap-southeast-2dws-demo-la-south-
2 场景描述准备工作 本实践预计时长60分钟,基本流程如下:
1.准备工作
2.步骤一:导入公司样例数据
3.步骤二:多表分析与主题分析 目的:了解GaussDB(DWS)的基本功能和数据导入,对某公司与供应商的订单数据分析,分析维度如下:
1.分析某地区供应商为公司带来的收入,通过该统计信息可用于决策在给定的区域 是否需要建立一个当地分配中心。

2.分析零件/供货商关系,可以获得能够以指定的贡献条件供应零件的供货商数量, 通过该统计信息可用于决策在订单量大,任务紧急时,是否有充足的供货商。

3.分析小订单收入损失,通过查询得知如果没有小量订单,平均年收入将损失多 少。
筛选出比平均供货量的20%还低的小批量订单,如果这些订单不再对外供货,由此计算平均一年的损失。
●已注册华为云帐号,且在使用GaussDB(DWS)前检查帐号状态,帐号不能处于欠费或冻结状态。
●参见创建访问密钥(AK和SK)获取此帐号的“AK/SK”。
●已创建集群,并已使用DataStudio连接集群,参见交通卡口通行车辆分析。
文档版本10(2021-10-29) 版权所有©华为技术有限公司 32 数据仓库服务快速入门 3创建集群并连接集群 步骤一:导入公司样例数据 使用SQL客户端工具连接到集群后,就可以在SQL客户端工具中,执行以下步骤导入TPC-H样例数据并执行查询。
步骤1创建数据库表。
TPC-H样例包含8张数据库表,其关联关系如图3-11所示。
图3-11TPC-H数据表 复制并执行下列表创建语句,在gaussdb数据库中创建对应的数据表。
CREATEschematpch;setcurrent_schema=tpch; droptableifexistsregion;CREATETABLEREGION( R_REGIONKEYINTNOTNULL,R_NAMECHAR(25)NOTNULL,R_COMMENTVARCHAR(152))with(orientation=column,COMPRESSION=MIDDLE)distributebyreplication; droptableifexistsnation;CREATETABLENATION 文档版本10(2021-10-29) 版权所有©华为技术有限公司 33 数据仓库服务快速入门 (N_NATIONKEYINTNOTNULL,N_NAMECHAR(25)NOTNULL,N_REGIONKEYINTNOTNULL,N_COMMENTVARCHAR(152) )with(orientation=column,COMPRESSION=MIDDLE)distributebyreplication; droptableifexistssupplier;CREATETABLESUPPLIER( S_SUPPKEYBIGINTNOTNULL,S_NAMECHAR(25)NOTNULL,S_ADDRESSVARCHAR(40)NOTNULL,S_NATIONKEYINTNOTNULL,S_PHONECHAR(15)NOTNULL,S_ACCTBALDECIMAL(15,2)NOTNULL,S_COMMENTVARCHAR(101)NOTNULL)with(orientation=column,COMPRESSION=MIDDLE)distributebyhash(S_SUPPKEY); droptableifexistscustomer;CREATETABLECUSTOMER( C_CUSTKEYBIGINTNOTNULL,C_NAMEVARCHAR(25)NOTNULL,C_ADDRESSVARCHAR(40)NOTNULL,C_NATIONKEYINTNOTNULL,C_PHONECHAR(15)NOTNULL,C_ACCTBALDECIMAL(15,2)NOTNULL,C_MKTSEGMENTCHAR(10)NOTNULL,C_COMMENTVARCHAR(117)NOTNULL)with(orientation=column,COMPRESSION=MIDDLE)distributebyhash(C_CUSTKEY); droptableifexistspart;CREATETABLEPART( P_PARTKEYBIGINTNOTNULL,P_NAMEVARCHAR(55)NOTNULL,P_MFGRCHAR(25)NOTNULL,P_BRANDCHAR(10)NOTNULL,P_TYPEVARCHAR(25)NOTNULL,P_SIZEBIGINTNOTNULL,P_CONTAINERCHAR(10)NOTNULL,P_RETAILPRICEDECIMAL(15,2)NOTNULL,P_COMMENTVARCHAR(23)NOTNULL)with(orientation=column,COMPRESSION=MIDDLE)distributebyhash(P_PARTKEY); droptableifexistspartsupp;CREATETABLEPARTSUPP( PS_PARTKEYBIGINTNOTNULL,PS_SUPPKEYBIGINTNOTNULL,PS_AVAILQTYBIGINTNOTNULL,PS_SUPPLYCOSTDECIMAL(15,2)NOTNULL,PS_COMMENTVARCHAR(199)NOTNULL)with(orientation=column,COMPRESSION=MIDDLE)distributebyhash(PS_PARTKEY); droptableifexistsorders;CREATETABLEORDERS( 文档版本10(2021-10-29) 版权所有©华为技术有限公司 3创建集群并连接集群34 数据仓库服务快速入门 O_ORDERKEYBIGINTNOTNULL, O_CUSTKEYBIGINTNOTNULL, O_ORDERSTATUSCHAR
(1)NOTNULL, O_TOTALPRICEDECIMAL(15,2)NOTNULL, O_ORDERDATEDATENOTNULL, O_ORDERPRIORITYCHAR(15)NOTNULL, O_CLERK CHAR(15)NOTNULL, O_SHIPPRIORITYBIGINTNOTNULL, O_COMMENTVARCHAR(79)NOTNULL ) with(orientation=column,COMPRESSION=MIDDLE) distributebyhash(O_ORDERKEY); 步骤
2 droptableifexistslineitem; CREATETABLELINEITEM ( L_ORDERKEYBIGINTNOTNULL, L_PARTKEYBIGINTNOTNULL, L_SUPPKEYBIGINTNOTNULL, L_LINENUMBERBIGINTNOTNULL, L_QUANTITYDECIMAL(15,2)NOTNULL, L_EXTENDEDPRICEDECIMAL(15,2)NOTNULL, L_DISCOUNTDECIMAL(15,2)NOTNULL, L_TAX DECIMAL(15,2)NOTNULL, L_RETURNFLAGCHAR
(1)NOTNULL, L_LINESTATUSCHAR
(1)NOTNULL, L_SHIPDATEDATENOTNULL, L_COMMITDATEDATENOTNULL, L_RECEIPTDATEDATENOTNULL, L_SHIPINSTRUCTCHAR(25)NOTNULL, L_SHIPMODECHAR(10)NOTNULL, L_COMMENTVARCHAR(44)NOTNULL ) with(orientation=column,COMPRESSION=MIDDLE) distributebyhash(L_ORDERKEY); 创建外表。
外表用于识别和关联OBS上的源数据。
3创建集群并连接集群 须知 ●其中,代表OBS桶名,仅支持部分区域,当前支持的区域和对应的OBS桶名请参见支持区域。
GaussDB(DWS)集群不支持跨区域访问OBS桶数据。
●本实践以“华北-北京四”地区为例,可填入-north-
4,替换为实际值,在准备工作获取。
CREATEschematpchobs;setcurrent_schema='tpchobs';dropFOREIGNtableifexistsregion;CREATEFOREIGNTABLEREGION( liketpch.region)SERVERgsmpp_serverOPTIONS( encoding'utf8',location'obs:///tpch/region.tbl',format'text',delimiter'|',ess_key'',secret_ess_key'',chunksize'64',IGNORE_EXTRA_DATA'on'); 文档版本10(2021-10-29) 版权所有©华为技术有限公司 35 数据仓库服务快速入门 dropFOREIGNtableifexistsnation;CREATEFOREIGNTABLENATION( liketpch.nation)SERVERgsmpp_serverOPTIONS( encoding'utf8',location'obs:///tpch/nation.tbl',format'text',delimiter'|',ess_key'',secret_ess_key'',chunksize'64',IGNORE_EXTRA_DATA'on'); dropFOREIGNtableifexistssupplier;CREATEFOREIGNTABLESUPPLIER( liketpch.supplier)SERVERgsmpp_serverOPTIONS( encoding'utf8',location'obs:///tpch/supplier.tbl',format'text',delimiter'|',ess_key'',secret_ess_key'',chunksize'64',IGNORE_EXTRA_DATA'on'); dropFOREIGNtableifexistscustomer;CREATEFOREIGNTABLECUSTOMER( liketpch.customer)SERVERgsmpp_serverOPTIONS( encoding'utf8',location'obs:///tpch/customer.tbl',format'text',delimiter'|',ess_key'',secret_ess_key'',chunksize'64',IGNORE_EXTRA_DATA'on');dropFOREIGNtableifexistspart;CREATEFOREIGNTABLEPART(liketpch.part )SERVERgsmpp_serverOPTIONS( encoding'utf8',location'obs:///tpch/part.tbl',format'text',delimiter'|',ess_key'',secret_ess_key'',chunksize'64',IGNORE_EXTRA_DATA'on');dropFOREIGNtableifexistspartsupp;CREATEFOREIGNTABLEPARTSUPP 文档版本10(2021-10-29) 版权所有©华为技术有限公司 3创建集群并连接集群36 数据仓库服务快速入门 3创建集群并连接集群 (liketpch.partsupp )SERVERgsmpp_serverOPTIONS( encoding'utf8',location'obs:///tpch/partsupp.tbl',format'text',delimiter'|',ess_key'',secret_ess_key'',chunksize'64',IGNORE_EXTRA_DATA'on');dropFOREIGNtableifexistsorders;CREATEFOREIGNTABLEORDERS(liketpch.orders)SERVERgsmpp_serverOPTIONS(encoding'utf8',location'obs:///tpch/orders.tbl',format'text',delimiter'|',ess_key'',secret_ess_key'',chunksize'64',IGNORE_EXTRA_DATA'on');dropFOREIGNtableifexistslineitem;CREATEFOREIGNTABLELINEITEM(liketpch.lineitem)SERVERgsmpp_serverOPTIONS(encoding'utf8',location'obs:///tpch/lineitem.tbl',format'text',delimiter'|',ess_key'',secret_ess_key'',chunksize'64',IGNORE_EXTRA_DATA'on'); 步骤3复制并执行以下语句,将外表数据导入到对应的数据库表中。
将OBS外表的数据通过insert命令导入GaussDB(DWS)的数据库表中,数据库内核对应的操作为OBS数据高速并发导入GaussDB(DWS)。
insertintotpch.lineitemselect*fromtpchobs.lineitem;insertintotpch.partselect*fromtpchobs.part;insertintotpch.partsuppselect*fromtpchobs.partsupp;insertintotpch.customerselect*fromtpchobs.customer;insertintotpch.supplierselect*fromtpchobs.supplier;insertintotpch.nationselect*fromtpchobs.nation;insertintotpch.regionselect*fromtpchobs.region;insertintotpch.ordersselect*fromtpchobs.orders; 导入数据需要约10分钟,请耐心等待。
----结束 步骤二:多表分析与主题分析 以下以TPC-H标准查询为例,演示在GaussDB(DWS)中进行的基本数据查询。
文档版本10(2021-10-29) 版权所有©华为技术有限公司 37 数据仓库服务快速入门 3创建集群并连接集群 在进行数据查询之前,请先执行“Analyze”命令生成与数据库表相关的统计信息。
统计信息存储在系统表PG_STATISTIC中,执行计划生成器会使用这些统计数据,以生成最有效的查询执行计划。
查询示例如下: ●某地区供货商为公司带来的收入查询(TPCH-Q5) 通过执行TPCH-Q5查询语句,可以查询到通过某个地区零件供货商获得的收入(收入按sum(l_extendedprice*(1-l_discount))计算)统计信息。
该统计信息可用于决策在给定的区域是否需要建立一个当地分配中心。
复制并执行以下TPCH-Q5语句进行查询。
该语句的特点是:带有分组、排序、聚集操作并存的多表连接查询操作。
setcurrent_schema='tpch';Selectn_name,sum(l_extendedprice*(1-l_discount))fromcustomer,orders,lineitem,supplier,nation,regionwherec_custkey=o_custkeyandl_orderkey=o_orderkeyandl_suppkey=s_suppkeyandc_nationkey=s_nationkeyands_nationkey=n_nationkeyandn_regionkey=r_regionkeyandr_name='ASIA'ando_orderdate>='1994-01-01'::dateando_orderdate<'1994-01-01'::date+groupbyn_nameorderbyrevenuedesc; asrevenueinterval'1year' ●零件/供货商关系查询(TPCH-Q16) 通过执行TPCH-Q16查询语句,可以获得能够以指定的贡献条件供应零件的供货商数量。
该信息可用于决策在订单量大,任务紧急时,是否有充足的供货商。
复制并执行以下TPCH-Q16语句进行查询,该语句的特点是:带有分组、排序、聚集、去重、NOTIN子查询操作并存的多表连接操作。
setcurrent_schema='tpch';selectp_brand,p_type,p_size,count(distinctps_suppkey)astfrompartsupp,partwherep_partkey=ps_partkeyandp_brand<>'Brand#45'andp_typenotlike'MEDIUMPOLISHED%'andp_sizein(49,14,23,45,19,3,36,9)andps_suppkeynotin( selects_suppkeyfromsupplierwherementlike'%Customer%Complaints%' 文档版本10(2021-10-29) 版权所有©华为技术有限公司 38 数据仓库服务快速入门 3创建集群并连接集群 )groupbyp_brand,p_type,p_sizeorderbytp_brand,p_type,p_sizelimit100; desc, ●小订单收入损失查询(TPCH-Q17) 通过查询得知如果没有小量订单,平均年收入将损失多少。
筛选出比平均供货量的20%还低的小批量订单,如果这些订单不再对外供货,由此计算平均一年的损失。
复制并执行以下TPCH-Q17语句进行查询,该语句的特点是:带有聚集、聚集子查询操作并存的两表连接操作。
setcurrent_schema='tpch';selectsum(l_extendedprice)/7.0asavg_yearlyfromlineitem,partwherep_partkey=l_partkeyandp_brand='Brand#23'andp_container='MEDBOX'andl_quantity<( select0.2*avg(l_quantity)fromlineitemwherel_partkey=p_partkey); 3.4.3零售业百货公司经营状况分析 零售业百货公司样例简介 本实践将演示以下场景:从OBS加载各个零售商场每日经营的业务数据到数据仓库对应的表中,然后对商铺营业额、客流信息、月度销售排行、月度客流转化率、月度租售比、销售坪效等KPI信息进行汇总和查询。
本示例旨在展示在零售业场景中GaussDB(DWS)数据仓库的多维度查询分析的能力。
说明 ●GaussDB(DWS)已预先将样例数据上传到OBS桶的“retail-data”文件夹中,并给所有华为云用户赋予了该OBS桶的只读访问权限。
●GaussDB(DWS)集群暂不支持跨区域访问OBS桶数据,当前已上传OBS桶数据的区域如支持区域所示,非以下区域的集群暂不支持该实验。
本实践预计时长60分钟,基本流程如下:
1.准备工作
2.步骤一:导入零售业百货公司样例数据
3.步骤二:经营状况分析 支持区域 当前已上传OBS数据的区域如表3-8所示。
文档版本10(2021-10-29) 版权所有©华为技术有限公司 39 数据仓库服务快速入门 表3-8区域和OBS桶名区域华北-北京一华北-北京二华北-北京四华北-乌兰察布一华东-上海一华东-上海二华南-广州中国-香港亚太-新加坡亚太-曼谷拉美-圣地亚哥 3创建集群并连接集群 OBS桶名dws-demo-north-2-north-4-north-9-east-3-east-2-south-1dws-demo-ap-southeast-1dws-demo-ap-southeast-3dws-demo-ap-southeast-2dws-demo-la-south-
2 准备工作 ●已注册华为云帐号,帐号不能处于欠费或冻结状态。
●参见创建访问密钥(AK和SK)获取此帐号的“AK/SK”。
●已创建集群,并已使用DataStudio连接集群,参见步骤一:创建集群和步骤二:使用DataStudio连接集群。
步骤一:导入零售业百货公司样例数据 使用SQL客户端工具连接到集群后,就可以在SQL客户端工具中,执行以下步骤导入零售业百货公司样例数据并执行查询。
步骤1执行以下语句,创建retail数据库。
createdatabaseretailencoding'utf8'templatetemplate0; 步骤2执行以下步骤切换为连接新建的数据库。

1.在DataStudio客户端的“对象浏览器”窗口,右键单击数据库连接名称,在弹出菜单中单击“刷新”,刷新后就可以看到新建的数据库。

2.右键单击“retail”数据库名称,在弹出菜单中单击“打开连接”。

3.右键单击“retail”数据库名称,在弹出菜单中单击“打开新的终端”,即可打开 连接到指定数据库的SQL命令窗口,后面的步骤,请全部在该命令窗口中执行。
步骤3创建数据库表。
样例数据包含10张数据库表,其关联关系如图3-12所示。
文档版本10(2021-10-29) 版权所有©华为技术有限公司 40 数据仓库服务快速入门 图3-12百货公司样例数据表 3创建集群并连接集群 复制并执行以下语句,创建零售业百货公司信息数据库表。
createschemaretail_data;setcurrent_schema='retail_data'; DROPTABLEIFEXISTSSTORE;CREATETABLESTORE( IDINT,STORECODEVARCHAR(10),STORENAMEVARCHAR(100),FIRMIDINT,FLOORINT,BRANDIDINT,RENTAMOUNTNUMERIC(18,2),RENTAREANUMERIC(18,2))WITH(ORIENTATION=COLUMN,COMPRESSION=MIDDLE)DISTRIBUTEBYREPLICATION; DROPTABLEIFEXISTSPOS;CREATETABLEPOS( IDINT,POSCODEVARCHAR(20),STATUSINT,MODIFICATIONDATEDATE)WITH(ORIENTATION=COLUMN,COMPRESSION=MIDDLE)DISTRIBUTEBYREPLICATION; DROPTABLEIFEXISTSBRAND;CREATETABLEBRAND( IDINT,BRANDCODEVARCHAR(10),BRANDNAMEVARCHAR(100),SECTORIDINT)WITH(ORIENTATION=COLUMN,COMPRESSION=MIDDLE)DISTRIBUTEBYREPLICATION; DROPTABLEIFEXISTSSECTOR;CREATETABLESECTOR( IDINT,SECTORCODEVARCHAR(10),SECTORNAMEVARCHAR(20),CATEGORYIDINT)WITH(ORIENTATION=COLUMN,COMPRESSION=MIDDLE)DISTRIBUTEBYREPLICATION; 文档版本10(2021-10-29) 版权所有©华为技术有限公司 41 数据仓库服务快速入门 3创建集群并连接集群 DROPTABLEIFEXISTSCATEGORY;CREATETABLECATEGORY( IDINT,CODEVARCHAR(10),NAMEVARCHAR(20))WITH(ORIENTATION=COLUMN,COMPRESSION=MIDDLE)DISTRIBUTEBYREPLICATION; DROPTABLEIFEXISTSFIRM;CREATETABLEFIRM( IDINT,CODEVARCHAR
(4),NAMEVARCHAR(40),CITYIDINT,CITYNAMEVARCHAR(10),CITYCODEVARCHAR(20))WITH(ORIENTATION=COLUMN,COMPRESSION=MIDDLE)DISTRIBUTEBYREPLICATION; DROPTABLEIFEXISTSDATE;CREATETABLEDATE( IDINT,DATEKEYDATE,YEARINT,MONTHINT,DAYINT,WEEKINT,WEEKDAYINT)WITH(ORIENTATION=COLUMN,COMPRESSION=MIDDLE)DISTRIBUTEBYREPLICATION; DROPTABLEIFEXISTSPAYTYPE;CREATETABLEPAYTYPE( IDINT,CODEVARCHAR(10),TYPEVARCHAR(10),SIGNDATEDATE)WITH(ORIENTATION=COLUMN,COMPRESSION=MIDDLE)DISTRIBUTEBYREPLICATION; DROPTABLEIFEXISTSSALES;CREATETABLESALES( IDINT,POSIDINT,STOREIDINT,DATEKEYINT,PAYTYPEINT,TOTALAMOUNTNUMERIC(18,2),DISCOUNTAMOUNTNUMERIC(18,2),ITEMCOUNTINT,PAIDAMOUNTNUMERIC(18,2))WITH(ORIENTATION=COLUMN,COMPRESSION=MIDDLE)DISTRIBUTEBYHASH(ID); DROPTABLEIFEXISTSFLOW;CREATETABLEFLOW( IDINT,STOREIDINT,DATEKEYINT,INFLOWVALUEINT)WITH(ORIENTATION=COLUMN,COMPRESSION=MIDDLE)DISTRIBUTEBYHASH(ID); 步骤4创建外表。
外表用于识别和关联OBS上的源数据。
文档版本10(2021-10-29) 版权所有©华为技术有限公司 42 数据仓库服务快速入门 3创建集群并连接集群 须知 ●其中,代表OBS桶名,仅支持部分区域,当前支持的区域和对应的OBS桶名请参见支持区域。
GaussDB(DWS)集群不支持跨区域访问OBS桶数据。
●本实践以“华北-北京四”地区为例,可填入-north-
4,替换为实际值,在准备工作获取。
createschemaretail_obs_data;setcurrent_schema='retail_obs_data';dropFOREIGNtableifexistsSALES_OBS;CREATEFOREIGNTABLESALES_OBS( likeretail_data.SALES)SERVERgsmpp_serverOPTIONS( encoding'utf8',location'obs:///retail-data/sales',format'csv',delimiter',',ess_key'',secret_ess_key'',chunksize'64',IGNORE_EXTRA_DATA'on',header'on'); dropFOREIGNtableifexistsFLOW_OBS;CREATEFOREIGNTABLEFLOW_OBS( likeretail_data.flow)SERVERgsmpp_serverOPTIONS( encoding'utf8',location'obs:///retail-data/flow',format'csv',delimiter',',ess_key'',secret_ess_key'',chunksize'64',IGNORE_EXTRA_DATA'on',header'on'); dropFOREIGNtableifexistsBRAND_OBS;CREATEFOREIGNTABLEBRAND_OBS( likeretail_data.brand)SERVERgsmpp_serverOPTIONS( encoding'utf8',location'obs:///retail-data/brand',format'csv',delimiter',',ess_key'',secret_ess_key'',chunksize'64',IGNORE_EXTRA_DATA'on',header'on'); dropFOREIGNtableifexistsCATEGORY_OBS; 文档版本10(2021-10-29) 版权所有©华为技术有限公司 43 数据仓库服务快速入门 CREATEFOREIGNTABLECATEGORY_OBS( likeretail_data.category)SERVERgsmpp_serverOPTIONS( encoding'utf8',location'obs:///retail-data/category',format'csv',delimiter',',ess_key'',secret_ess_key'',chunksize'64',IGNORE_EXTRA_DATA'on',header'on'); dropFOREIGNtableifexistsDATE_OBS;CREATEFOREIGNTABLEDATE_OBS( likeretail_data.date)SERVERgsmpp_serverOPTIONS( encoding'utf8',location'obs:///retail-data/date',format'csv',delimiter',',ess_key'',secret_ess_key'',chunksize'64',IGNORE_EXTRA_DATA'on',header'on'); dropFOREIGNtableifexistsFIRM_OBS;CREATEFOREIGNTABLEFIRM_OBS( likeretail_data.firm)SERVERgsmpp_serverOPTIONS( encoding'utf8',location'obs:///retail-data/firm',format'csv',delimiter',',ess_key'',secret_ess_key'',chunksize'64',IGNORE_EXTRA_DATA'on',header'on'); dropFOREIGNtableifexistsPAYTYPE_OBS;CREATEFOREIGNTABLEPAYTYPE_OBS( likeretail_data.paytype)SERVERgsmpp_serverOPTIONS( encoding'utf8',location'obs:///retail-data/paytype',format'csv',delimiter',',ess_key'',secret_ess_key'',chunksize'64',IGNORE_EXTRA_DATA'on', 文档版本10(2021-10-29) 版权所有©华为技术有限公司 3创建集群并连接集群44 数据仓库服务快速入门 header'on'); 3创建集群并连接集群 dropFOREIGNtableifexistsPOS_OBS;CREATEFOREIGNTABLEPOS_OBS( likeretail_data.pos)SERVERgsmpp_serverOPTIONS( encoding'utf8',location'obs:///retail-data/pos',format'csv',delimiter',',ess_key'',secret_ess_key'',chunksize'64',IGNORE_EXTRA_DATA'on',header'on'); dropFOREIGNtableifexistsSECTOR_OBS;CREATEFOREIGNTABLESECTOR_OBS( likeretail_data.sector)SERVERgsmpp_serverOPTIONS( encoding'utf8',location'obs:///retail-data/sector',format'csv',delimiter',',ess_key'',secret_ess_key'',chunksize'64',IGNORE_EXTRA_DATA'on',header'on'); dropFOREIGNtableifexistsSTORE_OBS;CREATEFOREIGNTABLESTORE_OBS( likeretail_data.store)SERVERgsmpp_serverOPTIONS( encoding'utf8',location'obs:///retail-data/store',format'csv',delimiter',',ess_key'',secret_ess_key'',chunksize'64',IGNORE_EXTRA_DATA'on',header'on'); 步骤
5 复制并执行以下语句,导入外表数据到集群。
insertintoretail_data.storeselect*fromretail_obs_data.STORE_OBS;insertintoretail_data.sectorselect*fromretail_obs_data.SECTOR_OBS;insertintoretail_data.paytypeselect*fromretail_obs_data.PAYTYPE_OBS;insertintoretail_data.firmselect*fromretail_obs_data.FIRM_OBS;insertintoretail_data.flowselect*fromretail_obs_data.FLOW_OBS;insertintoretail_data.categoryselect*fromretail_obs_data.CATEGORY_OBS;insertintoretail_data.dateselect*fromretail_obs_data.DATE_OBS;insertintoretail_data.posselect*fromretail_obs_data.POS_OBS; 文档版本10(2021-10-29) 版权所有©华为技术有限公司 45 数据仓库服务快速入门 3创建集群并连接集群 insertintoretail_data.brandselect*fromretail_obs_data.BRAND_OBS;insertintoretail_data.salesselect*fromretail_obs_data.SALES_OBS; 导入数据需要一些时间,请耐心等待。
步骤
6 复制并执行以下语句,创建视图v_sales_flow_details。
set
current_schema='retail_data';CREATEVIEWv_sales_flow_detailsASSELECTFIRM.IDFIRMID,FIRM.NAMEFIRNAME,FIRM.CITYCODE,CATEGORY.IDCATEGORYID,CATEGORY.NAMECATEGORYNAME,SECTOR.IDSECTORID,SECTOR.SECTORNAME,BRAND.IDBRANDID,BRAND.BRANDNAME,STORE.IDSTOREID,STORE.STORENAME,STORE.RENTAMOUNT,STORE.RENTAREA,DATE.DATEKEY,SALES.TOTALAMOUNT,DISCOUNTAMOUNT,ITEMCOUNT,PAIDAMOUNT,FROMSALESINNERJOINSTOREONSALES.STOREID=STORE.IDINNERJOINFIRMONSTORE.FIRMID=FIRM.IDINNERJOINBRANDONSTORE.BRANDID=BRAND.IDINNERJOINSECTORONBRAND.SECTORID=SECTOR.IDINNERJOINCATEGORYONSECTOR.CATEGORYID=CATEGORY.IDINNERJOINDATEONSALES.DATEKEY=DATE.IDINNERJOINFLOWONFLOW.DATEKEY=DATE.IDANDFLOW.STOREID=STORE.ID; INFLOWVALUE ----结束 步骤二:经营状况分析 以下以零售百货公司标准查询为例,演示在GaussDB(DWS)中进行的基本数据查询。
在进行数据查询之前,请先执行“Analyze”命令生成与数据库表相关的统计信息。
统计信息存储在系统表PG_STATISTIC中,执行计划生成器会使用这些统计数据,以生成最有效的查询执行计划。
查询示例如下: ●查询各商铺的总营业额 复制并执行以下语句查询各商铺的总营业额。
setcurrent_schema='retail_data';SELECTDATE_TRUNC('month',datekey)ATTIMEZONE'UTC'AS__timestamp,SUM(paidamount)ASsum__paidamountFROMv_sales_flow_detailsGROUPBYDATE_TRUNC('month',datekey)ATTIMEZONE'UTC'ORDERBYSUM(paidamount)DESC; ●查询各门店营收及租售比状况 复制并执行以下语句进行营收及租售比状况查询。
setcurrent_schema='retail_data';SELECTfirnameASfirname,storenameASstorename,SUM(paidamount)ASsum__paidamount,AVG(RENTAMOUNT)/SUM(PAIDAMOUNT)ASrentamount_sales_rateFROMv_sales_flow_detailsGROUPBYfirname,storenameORDERBYSUM(paidamount)DESC; ●各省营业汇总分析 复制并执行以下语句进行汇总分析查询。
setcurrent_schema='retail_data';SELECTcitycodeAScitycode, 文档版本10(2021-10-29) 版权所有©华为技术有限公司 46 数据仓库服务快速入门 3创建集群并连接集群 SUM(paidamount)ASsum__paidamountFROMv_sales_flow_detailsGROUPBYcitycodeORDERBYSUM(paidamount)DESC; ●各门店租售比和客流转化率对比分析 setcurrent_schema='retail_data';SELECTbrandnameASbrandname,firnameASfirname,SUM(PAIDAMOUNT)/AVG(RENTAREA)ASsales_rentarea_rate,SUM(ITEMCOUNT)/SUM(INFLOWVALUE)ASposcount_flow_rate,AVG(RENTAMOUNT)/SUM(PAIDAMOUNT)ASrentamount_sales_rateFROMv_sales_flow_detailsGROUPBYbrandname,firnameORDERBYsales_rentarea_rateDESC; ●品牌业态分析 setcurrent_schema='retail_data';SELECTcategorynameAScategoryname,brandnameASbrandname,SUM(paidamount)ASsum__paidamountFROMv_sales_flow_detailsGROUPBYcategoryname,brandnameORDERBYsum__paidamountDESC; ●查询各品牌每日营业状况 setcurrent_schema='retail_data';SELECTbrandnameASbrandname,DATE_TRUNC('day',datekey)ATTIMEZONE'UTC'AS__timestamp,SUM(paidamount)ASsum__paidamountFROMv_sales_flow_detailsWHEREdatekey>='2016-01-0100:00:00'ANDdatekey<='2016-01-3000:00:00'GROUPBYbrandname,DATE_TRUNC('day',datekey)ATTIMEZONE'UTC'ORDERBYsum__paidamountASCLIMIT50000; 3.5第5步:查看其它资料并清理资源 查看其它资料 完成如上操作步骤后,我们推荐您可以参考如下资料继续对数据仓库服务进行更详细深入的了解: ●《数据仓库服务管理指南》:本指南在此入门的基础上,对创建、管理、监控以及连接集群的概念和相关操作提供全面详细的信息。
●《数据仓库服务数据库开发指南》:本指南在此入门的基础上,为数据库开发人员提供全面详细的信息,帮助他们了解如何构建、管理和查询GaussDB(DWS)数据库,包括SQL语法、用户管理、数据导入导出等指导。
清理资源 当完成快速入门的样例后,如果您不再需要使用本样例创建的样例数据、集群、ECS以及VPC时,您可以删除这些资源,以免资源浪费或占用您的配额。
步骤1删除GaussDB(DWS)集群。
在GaussDB(DWS)管理控制台,单击“集群管理”,在集群列表中集群“dwsdemo”所在行,单击“更多>删除”。
然后在弹出对话框中勾选“释放与集群绑定的弹性IP”,单击“确定”。
文档版本10(2021-10-29) 版权所有©华为技术有限公司 47 数据仓库服务快速入门 3创建集群并连接集群 如果待删除集群使用了自动创建的安全组,且该自动创建的安全组没有被别的集群使用,删除集群时,该安全组也会一起被自动删除。
步骤2删除子网。
删除前请先确保该子网未被其他资源绑定。
登录虚拟私有云管理控制台,在左侧导航树单击“虚拟私有云”,在虚拟私有云列表中,单击名称“vpc-dws”,然后在子网列表中“-dws”所在行单击“删除”。
步骤3删除虚拟私有云。
删除前请先确保该虚拟私有云未被其他资源绑定。
登录虚拟私有云管理控制台,在虚拟私有云列表中,找到虚拟私有云“vpc-dws)”,单击其所在行的“删除”。
具体步骤,请参见《虚拟私有云用户指南》中“虚拟私有云和子网>删除虚拟私有云”章节。
----结束 文档版本10(2021-10-29) 版权所有©华为技术有限公司 48 数据仓库服务快速入门 4数据库使用入门 4数据库使用入门 4.1从这里开始 通过本小节您可以快速完成创建数据库、创建表及向表中插入数据和查询表中数据。
本章的子节更详细地讲解数据库使用的一些常用步骤。
数据库基本操作 步骤1创建数据库用户。
默认只有创建集群时生成的管理员用户可以访问初始数据库。
要向其他用户授予访问权限,必须创建新的用户帐户。
CREATEUSERjoeWITHPASSWORD"Bigdata@123"; 当结果显示为如下信息,则表示创建成功。
CREATEUSER 上面,创建了一个用户名为joe,密码为Bigdata@123的用户。
新创建的用户帐户默认具有所有数据库的登录权限和创建表、视图、索引等的权限及对这些自己所建对象的操作权限。
更多信息请参见用户。
步骤
2 创建数据库。
CREATEDATABASEmytpcds;CREATEDATABASE 有关数据库管理的更多操作指导,请参考创建和管理数据库。
步骤3(可选)创建schema。
schema又称作模式。
通过schema,允许多个用户使用同一数据库而不相互干扰。
执行如下命令来创建一个schema。
CREATESCHEMAmyschema; 当结果显示如下信息,则表示成功创建一个名为myschema的schema。
CREATESCHEMA schema创建成功后,就可以在该schema下创建对象了。
但是,请确保在创建对象前使用如下两种方式之一将对象创建到对应的schema下。
文档版本10(2021-10-29) 版权所有©华为技术有限公司 49 数据仓库服务快速入门 4数据库使用入门 先将数据库的search_path设成对应schema,然后再创建对象。
SETSEARCH_PATHTOmyschema;CREATETABLEmytable(firstcolint); 在创建对象时指定由“模式名称+对象名称”组成的完整对象名称,中间由符号“.”隔开。
例如: CREATETABLEmyschema.mytable(firstcolint); 如果在创建对象时不指定schema,则会将对象创建在当前的schema下。
查询当前schema的办法为: showsearch_path;search_path---------------"$user",public(1row) 创建完mytpcds数据库后,就可以按如下方法退出gaussdb数据库。
\q 有关schema的更多信息请参考创建和管理schema。
步骤
4 创建表。
●创建一个名称为mytable,只有一列的表。
字段名为firstcol,字段类型为integer。
mytpcds=>CREATETABLEmytable(firstcolint); 未使用“DISTRIBUTEBY”指定分布列时,系统默认会使用第一个符合分布列数据类型要求的列为分布列,且给出提示。
系统返回信息以“CREATETABLE”结束,表示创建表成功。
NOTICE:The'DISTRIBUTEBY'clauseisnotspecified.Using'firstcol'asthedistributioncolumnbydefault.HINT:Pleaseuse'DISTRIBUTEBY'clausetospecifysuitabledatadistributioncolumn.CREATETABLE PG_TABLES系统表包含集群中所有表的有关信息。
通过SELECT命令可以在此系统表中查看表的属性。
SELECT*FROMPG_TABLESWHERETABLENAME='mytable'; ●向表中插入数据: mytpcds=>INSERTINTOmytablevalues(100);INSERT01 INSERT命令可向数据库表插入各个行。
要进行标准的批量加载,请参阅关于OBS并行导入。
●查看表中数据: mytpcds=>SELECT*frommytable;firstcol---------- 100(1row) 文档版本10(2021-10-29) 版权所有©华为技术有限公司 50 数据仓库服务快速入门 4数据库使用入门 说明 ●默认情况下,新的数据库对象是创建在“public”模式下的,例如刚刚新建的表。
关于模式的更多信息请参考创建和管理schema。
●关于创建表的更多信息请参见创建表。
●除了创建的表以外,数据库还包含很多系统表。
这些系统表包含集群安装信息以及 GaussDB(DWS)上运行的各种查询和进程的信息。
可以通过查询系统表来收集有关数据库的信息。
请参见查看系统表。
●GaussDB(DWS)支持行列混合存储,为各种复杂场景下的交互分析提供更好的查询性能,关于存储模型的选择,请参考规划存储模型。
----结束 加载示例数据 本手册中大部分示例均使用在gaussdb数据库中创建TPC-DS示例表。
如果希望通过您的SQL查询工具按照示例操作,请先创建TPC-DS示例表,然后为示例表加载示例数据。
OBS桶中提供了示例数据,该存储桶向所有经过身份验证的云用户提供了读取权限。
有关创建表和加载示例数据的步骤,请参考加载示例数据。
释放资源 如果为完成本节的练习部署了集群,那么应在完成练习后删除该集群。

要删除集群,请按照删除集群进行操作。
如果要保留集群但清除db_tpcds数据库,请运行如下命令: DROPDATABASEmytpcds; 如果要保留集群和数据库,只清空数据库中的表,请运行如下命令: DROPTABLEmytable; 4.2创建和管理数据库 前提条件 用户必须拥有数据库创建的权限或者是数据库的系统管理员权限才能创建数据库(如何赋予创建数据库的权限请参见用户)。
背景信息 ●初始时,GaussDB(DWS)包含两个模板数据库template0、template1,以及一个默认的用户数据库gaussdb。
●CREATEDATABASE实际上通过拷贝模板数据库来创建新数据库。
默认情况下,拷贝template1。
请避免使用客户端或其他手段连接及操作两个模板数据库。
●GaussDB(DWS)允许创建的数据库总数目上限为128个。
●数据库系统中会有多个数据库,但是客户端程序一次只能连接一个数据库。
也不能在不同的数据库之间相互查询。
一个数据库集群中存在多个数据库时,需要通过-d参数指定相应的数据库实例进行连接。
文档版本10(2021-10-29) 版权所有©华为技术有限公司 51 数据仓库服务快速入门 4数据库使用入门 操作步骤 步骤1创建一个新的数据库db_tpcds。
CREATEDATABASEdb_tpcds; 当结果显示如下信息,则表示创建成功。
CREATEDATABASE 正如背景信息中所说,创建数据库时默认拷贝模板数据库template1。
template1的编码格式为SQL_ASCII。
对于这种编码格式,在创建数据库对象时,如果对象名中含有多字节字符(例如中文),超过数据库对象名长度限制(63字节)的时候,系统会从最后一个字节(而不是字符)截断,可能造成出现半个字符的情况。
针对这种情况,请遵循以下条件: ●保证数据对象的名称不超过限定长度。
●不要使用多字节字符做为对象名。
如果出现因为误操作导致在多字节字符的中间截断进而无法删除数据库对象的现象,请使用截断前的数据库对象名进行删除操作,或将该对象从各个数据库节点的相应系统表中依次删掉。
您也可以通过指示CREATEDATABASE使用template0取代template1进行拷贝,在复制tmplate0时指定新的编码和区域设置。
例如使用utf-8编码集做为数据库的默认存储编码集(server_encoding)。
详细请参见CREATEDATABASE的语法指导。
通过“showserver_encoding”命令可以查看当前数据库存储编码。
说明 ●数据库名称遵循SQL标识符的一般规则。
当前用户自动成为此新数据库的所有者。
●如果一个数据库系统用于承载相互独立的用户和项目,建议把它们放在不同的数据库里。
●如果项目或者用户是相互关联的,并且可以相互使用对方的资源,则应该把它们放在同一个数据库里,但可以规划在不同的Schema中。
Schema只是一个纯粹的逻辑结构,某个Schema的访问

标签: #文件 #电子版 #文件 #换行 #文件 #压缩文件 #众生 #文件