假设我有大约10-20GB的HDFS数据作为Hive表。这是在几个Map-Reduce作业之后获得的,并通过两个单独的数据集进行联接。我需要让这个Queryable给用户。我有什么选择?查询Hive处理的大量数据
- 使用Sqoop将数据从HDFS传输到像Postgresql这样的RDS。但我想避免在数据传输上花费太多时间。我只是使用Sqoop在同一AWS区域测试HDFS-> RDS,而800mb的数据需要4-8分钟。所以你可以想象〜60GB的数据会非常难以管理。这将是我最后的手段。
- 根据用户请求直接从Web服务器查询Hive。我从来没有像这样使用Hive的头,所以我对此持怀疑态度。这让我感到震惊,因为我发现你可以在EMR集群上进行一些端口转发之后远程查询配置单元表。但是对于大数据我是不太清楚与此相关的风险。这样做常见吗?
- 其他一些解决方案 - 人们通常如何做这种事情?看起来像一个很常见的任务。
只是为了完整性的缘故,我的数据是这样的:
id time cat1 cat2 cat3 metrics[200]
A123 1234212133 12 ABC 24 4,55,231,34,556,123....(~200)
.
.
.
(时间是划时代)
我的查询是这样的:
select cat1, corr(metrics[2],metrics[3]),corr(metrics[2],metrics[4]),corr(metrics[2],metrics[5]),corr(metrics[2],metrics[6]) from tablename group by cat1;
我需要的相关函数,这就是为什么我选择了cho在MySQL上使用postgresql。
是的我意识到这一点,但我主要想知道是否使用像这样的Hive是好的做法或不... – user1265125 2014-10-28 19:30:36