快速入门数据仓库服务GaussDB(DWS) 沙箱实战【这次高斯不是数学家】

举报
gentle_zhou 发表于 2022/05/21 20:54:07 2022/05/21
【摘要】 借助本次沙箱实战,我们可以熟悉华为云GaussDB(DWS)云服务购买及数据库连接的操作,掌握OBS外表数据导入和查询操作

“本实验指导用户云上快速创建GaussDB(DWS)数据仓库集群,并将OBS源数据导入数据仓库,完成数据的简易查询。”

借助本次沙箱实战,我们可以熟悉华为云GaussDB(DWS)云服务购买及数据库连接的操作,掌握OBS外表数据导入和查询操作。

本文根据沙箱实验摘要,进行分解,会有如下几个步骤:
1.创建虚拟私有云(VPC)
2.创建数据仓库服务(DWS)
3.上传数据到OBS桶
4.下载gsql客户端并连接DWS数据库
5.导入OBS桶数据并进行查询

本次实践的沙箱链接:https://lab.huaweicloud.com/testdetail_1661?ticket=ST-2423534-kHna66NRCmdk3XMobtmiWo3G-sso

1.创建虚拟私有云(VPC)

首先进入本次实践沙箱首页(链接在上方),点击开始试验按钮:
image.png

进入实验首页,会显示一个实验手册和实验桌面与华为云VPC的关系图:
image.png

我们把实验手册页面往下滑,来到第一步“创建虚拟私有云(VPC)”。虚拟私有云(Virtual Private Cloud)是用户在华为云上申请的隔离的、私密的虚拟网络环境。用户可以自由配置VPC内的IP地址段、子网、安全组等子服务,也可以申请弹性带宽和弹性IP搭建业务系统。

点击页面中间偏左位置的电脑图标,进入虚拟电脑界面:
image.png

在界面里,选择chrome浏览器,会自动进入华为云控制台界面(非常nice的一点:已经在虚拟界面里,把你的沙箱实验账号自动登录上去了),选择左侧栏的虚拟私有云:
image.png

点击右上角的创建虚拟私有云按钮,根据实验手册填写vpc的基本信息:
image.png

创建完毕之后,进入VPC列表就可以查看到已创建的VPC:
image.png

2.创建数据仓库服务(DWS)

DWS是什么呢?Data Warehouse Service,数据仓库服务,是完全托管的PB级高性能、高扩展、安全可靠的企业级融合分析数据仓库。基于华为自研LibrA企业级数据仓库内核,兼容PostgreSQL生态,用户可以基于标准SQL,结合商业智能(BI)工具,经济高效的对海量数据进行挖掘和分析。

ok,介绍完DWS,我们继续实战:在这里创建3节点规模的DWS集群。

登录华为云控制台,鼠标移动到云桌面浏览器页面中左侧菜单栏,点击服务列表->“大数据”->“数据仓库服务GaussDB(DWS)”,进入左侧栏“数据仓库服务”页面:
image.png

点击右上角的“创建数据仓库集群”红色按钮,并按沙箱的实验手册内信息来做配置(注:这里一定要保障参数配置与实验手册相符,否则系统会自动清理创建的资源):
image.png
image.png
image.png

信息核对无误,单击“立即创建”,此时,页面右上角提示【权限不足】可忽略,直接单击“提交”;创建DWS需要等待较长时间,此时我们可以继续后面的操作:
image.png
image.png

3.上传数据到OBS桶

什么是OBS桶呢?桶(Bucket)是OBS中存储对象的容器。对象存储提供了基于桶和对象的扁平化存储方式,桶中的所有对象都处于同一逻辑层级,去除了文件系统中的多层级树形目录结构。每个桶都有自己的存储类别、访问权限、所属区域等属性。

登录华为云控制台,鼠标移动到云桌面浏览器页面中左侧菜单栏,点击服务列表->“存储”->“对象存储服务 OBS”,进入左侧栏“对象存储服务”页面:
image.png

单击页面右上角【创建桶】按钮,参照实验手册里的参数进行配置:
image.png
image.png

单击【立即创建】按钮,OBS桶创建很快,一下子就成功了:
image.png

创建成功后,左侧选择“桶列表”,单击新创建的obs-demo桶名进入桶的页面:
image.png

左侧导航选择“对象”,单击“新建文件夹”,文件夹名称为“input_data”,单击“确定”:
image.png

创建文件

接着我们需要把txt文件上传到OBS桶里,在实验室桌面上双击【Xfce终端】,打开Terminal终端,执行命令vim /home/user/Desktop/product_info0.csv新建一个product_info0.csv数据文件:
image.png

并把实验手册里的内容黏贴进去,搞定之后,按ESC退出编辑模式,并输入:wq!退出:

100,XHDK-A,2017-09-01,A,2017 Shirt Women,red,M,328,2017-09-04,715,good!
205,KDKE-B,2017-09-01,A,2017 T-shirt Women,pink,L,584,2017-09-05,40,very good!
300,JODL-X,2017-09-01,A,2017 T-shirt men,red,XL,15,2017-09-03,502,Bad.
310,QQPX-R,2017-09-02,B,2017 jacket women,red,L,411,2017-09-05,436,It's nice.
150,ABEF-C,2017-09-03,B,2017 Jeans Women,blue,M,123,2017-09-06,120,good.

重复执行以上(1)到(3)操作,生成“product_info1.csv”和“product_info2.csv”另外两个数据文件。 分别复制实验手册里提供的不同内容到数据文件中:
image.png

执行以下2条命令,确认3个csv文件都已准备好:

cd /home/user/Desktop/
ll

ll显示的内容:
image.png

上传文件

回到桌面浏览器的OBS管理控制台,单击进入“input_data”文件夹,之后单击【上传对象】按钮:
image.png

上传对象里选中这三个文件,然后点击上传按钮:
image.png
image.png
image.png

4.下载gsql客户端并连接DWS数据库

我们接下去需要下载gsql客户端;鼠标移动到云桌面浏览器页面中左侧菜单栏,点击服务列表->“大数据”->“数据仓库服务GaussDB(DWS)”:
image.png

进入“数据仓库服务”页面,在左侧导航里选择“连接管理”,选择gsql命令行客户端的OS版本:Redhat x86_64,单击“下载”按钮:
image.png

我们再回【Xfce终端】界面,执行以下命令cp /home/user/Downloads/dws_client_8.1.x_redhat_x64.zip /opt将下载的包dws_client_8.1.x_redhat_x64.zip 拷贝到/opt目录下;要是显示权限不够的话,继续往下看。

那我们就手动自己移~ 在桌面空白处点击鼠标右键,选择应用程序-文件管理器:
image.png

打开文件管理器图形界面,找到相对应位置的压缩包,复制一下,尝试黏贴到opt文件夹内,也失败了(说明虚拟机对opt文件夹的权限没开放,那我们就先不管了):
image.png

我后来把这个压缩包放到桌面上了。

连接DWS数据库

切换到DWS管理控制台,在左侧导航栏选择“集群管理”连接,单击“dws-demo”集群名称,记录DWS的公网IP:
image.png

接着在【实验操作桌面】,我们双击“Xfce终端”,进入Terminal命令行窗口(默认应该就是在Desktop目录,而我们的压缩包也就在上面上),然后执行命令unzip dws_client_8.1.x_redhat_x64.zipsource gsql_env.sh
image.png

image.png

输入以下命令连接DWS到数据库。其中,<DWS的公网IP>由上面步骤获取,<dbadmin密码>在前序创建DWS步骤时设置,默认设置为Bigdata_2013:
gsql -d gaussdb -h <DWS的公网IP> -U dbadmin -p 8000 -r -W <用户dbadmin密码>;
image.png

5.导入OBS桶数据并进行查询

切换回浏览器的管理控制台页面,鼠标停留在右上角用户名,单击“我的凭证”:
image.png

左侧导航单击“访问密钥”,单击“新增访问密钥”,单击“确定”,单击“立即下载”:
image.png
直接点击确定就可以了:
image.png
点击立即下载按钮:
image.png

回到【实验室桌面】,重新双击【Xfce终端】,打开一个新的Terminal(原来的连接DWS数据的Terminal会话保留,不要去动);执行以下命令获取AK和SK值:
cat /home/user/Downloads/credentials.csv

获取到的结果有用户名,AK, SK信息:
image.png

接着回到Terminal命令行窗口,执行SQL语句创建OBS外表、普通表,并从OBS外表导入数据:
INSERT INTO product_info SELECT * FROM product_info_ext;

当看到如下提示,表示导入成功了(如果有错误信息,很有可能是AK/SK和OBS桶命没有替换正确。尤其注意:注意SK值,不包括“user”字段,我就一开始把它算进来了):
image.png

最后实验还会有几个SQL命令来对数据进行增删改查。

实验总结

通过实验室的linux环境,下载DWS的客户端gsql并移动到linux的/desktop目录下,通过弹性公网IP,连接到DWS集群,完成DWS的数据导入和简单查询分析。通过本实验后,能熟悉掌握DWS的连接和数据导入方法。

征文活动

【这次高斯不是数学家】有奖征文火热进行中:https://bbs.huaweicloud.com/blogs/345260

【版权声明】本文为华为云社区用户原创内容,转载时必须标注文章的来源(华为云社区)、文章链接、文章作者等基本信息, 否则作者和本社区有权追究责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。