挂载BOS数据文件
-
BOS 是百度对象存储的简称。关于如何开通和使用BOS,可以参考 这里。
开通BOS之后,创建bucket,将我们要查询的数据进行上传,在BOS中将数据data_survey上传,然后我们再用挂载的方式将数据接入。
-
进入Pingo文件管理,点击挂载,填写bucket信息,进行文件挂载。我们在根目录(可以在有权限的任意目录)下进行挂载,挂载点填写/myfiles,类型为BOS,区域当前只支持北京区域,填写我们要挂载的bucket名称,路径可以填写bucket下的文件夹路径,如果不填,将会挂载bucket下所有的文件和文件夹,填写完AK/SK之后点击确定。详细填写帮助点击这里。
-
挂载确定之后,可以在myfiles文件夹下看到,已经将BOS的文件同步到文件管理,挂载成功。
创建映射表
-
进入数据管理-表管理页面,依次创建命名空间和数据库。
-
选中当前数据库,点击右侧的新建数据表,在建表页面,选择映射表,并指定BOS文件的挂载路径/myfiles。
-
然后点击下一步,输入建表语句然后点击确定。
本示例建表语句如下 :
CREATE TABLE data_bos_survey( age tinyint comment '年龄', gender string comment '性别', education string comment '学历', city string comment '城市', income_permonth string comment '月收入', insu_expend string comment '保险支出占收入', insu_style string comment '保险类型', buy_willing string comment '购买保险意愿', buy_method string comment '购买方式', insu_company string comment '投保公司', key_side string comment '最看重的方面' ) PARTITIONED BY (dt string);
-
点击确定之后,可以在建表页面预览字段。确认无误之后,点击提交,建表完成。
-
创建成功后,可以从表管理的左侧导航树点击查看表的详细信息。
创建表分区
-
打开作业管理-交互分析,新建一个Spark-SQL Notebook。
-
执行SQL语句,在表data_bos_survey中创建分区dt=20191127,并且指定分区路径/myfiles。
执行SQL查询数据
-
打开Notebook,执行SQL查询语句,由查询结果可以看到,我们查询的分区dt=20191127成功关联了BOS数据,返回值为指定分区内的数据查询结果。
-
继续执行SQL查询语句,获取我们想要的查询结果。