看了《在吗?0代码加速查询MaxCompute请查收!》的朋友们纷纷表示按照文章操作,能够快速查询到MaxCompute中的数据,同时还不需要写建表代码,简单又实用。但是呢,随之而来就会有个问题,业务数据量太大时,直接查询响应也会有点迟缓,依赖HoloStudio的导入查询具体怎么操作?今天小编就来为大家讲解,如何使用HoloStudio用最少的代码导入查询MaxCompute数据,实现秒级交互式响应!(小Tips:直接查询数据仍然存在MaxCompute中,导入查询数据最终存在交互式分析中)
往期精彩传送门:
HoloStudio介绍:《交互式分析六脉神剑》之Dataworks-HoloStudio初体验
DataWorks数据服务:交互式分析加速查询MaxCompute封装API的最佳实践
DataWorks调度:什么?你还不会使用DataWorks调度?
操作步骤
1.准备MaxCompute数据表
准备一张MaxCompute表,本示例直接采用数据地图中的一张表,数据条数约为7600万条
2.HoloStudio新建外部表
在HoloStudio中新建一张外部表,用于做MaxCompute表字段的一一映射。在HoloStudio中选择PG管理--外部表,一键新建外部表。因为是将整张表数据导入进交互式分析,所以字段全部映射(可根据项目情况选择部分字段映射)
若是直接外部表的话,查询20万条数据用时2.5秒
3.HoloStudio新建真实存储表
在HoloStudio中新建一张真实存储表,用于真正接受数据。新建内部表的字段需要一一对应。最简单的建表操作就是复制外部表的建表语句,再修改成对应内部表即可,不需要自己再写建表sql,轻轻松松完成建内部表。
3.导入数据
将数据从MaxCompute中导入至交互式分析中,可以选择部分字段数据导入,也可以选择全部数据导入。若数据量太大,使用SQL Console会报50秒超时的错误,这是DataWorks本身的限制,请使用HoloStudio的终端进行数据导入。示例导入全部数据SQL如下,只需要1行代码即可:
INSERT INTO holo_lineitem92
SELECT * FROM odps_lineitem92;
导入7600万条数据用时15秒
4.查询数据
数据导入完成之后,可以直接查询数据,示例,同样查询20万条数据,用时4毫秒返回。(1行代码)
SELECT * from holo_lineitem92 LIMIT 200000;
结论:通过以上操作步骤,相信大家也都学会了如何在HoloStudio中用最少的代码将MaxCompute中的数据导入查询,具体的操作步骤,大家也可以参考官网文档:离线数据导入分析。
通过两次HoloStudio的查询MaxCompute数据演示,相信大家也能更加直观体会到两种查询方式的区别:小数据量使用直接查询也可以直接获取结果,但是大数据量更建议大家导入查询,查询性能在同等资源条件下也会更优。
同时,使用HoloStudio,能让你用最少的代码,最快的查询MaxCompute中的数据,既解放了双手,又实现了数据的秒级交互响应,两全其美啊!
若大家对交互式分析有任何疑问,欢迎大家进群咨询哦