我有一个有三个部分分区的蜂巢表 的(DT,SERVICE_TYPE,PV)
我想在不同的数据库中创建一个新表,其中包含来自此原始表的过滤数据。 (按用于分区的列过滤)
所以我使用SELECT查询数据如下,并将结果保存在HFDS
中INSERT OVERWRITE DIRECTORY '/user/atscale/filterd-ratlog' SELECT * FROM rat_log_normalized WHERE dt >= '2016-05-01' AND dt <='2016-05-31' AND service_type='xxxxx_jp' AND event_type='yy';
这是HDFS中的结果文件夹结构。它被分成531个文件:
hdfs dfs -ls / user / atscale / filterd-ratlog
找到531项 -rwxr-xr-x 3 atscale atscale 8838075079 2016-08-18 06:20 / user / atscale / filterd-ratlog / 000000_0 -rwxr-xr-x 3 atscale atscale 8879084968 2016-08-18 06:15 / user / atscale / filterd-ratlog / 000001_0 -rwxr-xr-x 3 atscale atscale 8821619748 2016-08-18 06:20 / user / atscale / filterd-ratlog / 000002_0 -rwxr-xr-x 3 atscale atscale 8724063719 2016-08-18 06:20 / user / atscale / filterd-ratlog / 000003_0。 。 。 -rwxr-xr-x 3 atscale atscale 6878819716 2016-08-18 06:42 / user / atscale / filterd-ratlog / 000527_0 -rwxr-xr-x 3 atscale atscale 5461395906 2016-08-18 06:27 / user / atscale / filterd-ratlog / 000528_0 -rwxr-xr-x 3 atscale atscale 6222887747 2016-08-18 06:26 / user / atscale / filterd-ratlog / 000529_0 -rwxr-xr-x 3 atscale atscale 692289350 2016-08-18 06:37 / user / atscale / filterd-ratlog / 000530_0
现在,哇,我可以将HDFS文件中的数据加载到我的新表中吗?我也想保留分区..
答案 0 :(得分:2)
我猜您正在寻找外部表:
<script>
var data = '${raw(data as String)}';
var json = JSON.parse(data);
alert(json.type);
var authorization = json.key;
</script>