Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/database/9.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Database 查询配置单元处理的大量数据_Database_Hadoop_Hive_Bigdata - Fatal编程技术网

Database 查询配置单元处理的大量数据

Database 查询配置单元处理的大量数据,database,hadoop,hive,bigdata,Database,Hadoop,Hive,Bigdata,假设我在HDFS中有大约10-20GB的数据作为配置单元表。这是在几个Map Reduce作业并连接两个独立的数据集之后获得的。我需要让这个用户可以查询。我有什么选择 用于将数据从HDFS传输到RDS,如Postgresql。但我想避免在数据传输上花费太多时间。我刚刚在同一AWS区域使用Sqoop测试了HDFS->RDS,800mb的数据需要4-8分钟。因此,您可以想象~60gb的数据将是无法管理的。这将是我最后的选择 根据用户请求直接从我的Web服务器查询配置单元。我从来没有像这样使用过蜂箱的

假设我在HDFS中有大约10-20GB的数据作为配置单元表。这是在几个Map Reduce作业并连接两个独立的数据集之后获得的。我需要让这个用户可以查询。我有什么选择

  • 用于将数据从HDFS传输到RDS,如Postgresql。但我想避免在数据传输上花费太多时间。我刚刚在同一AWS区域使用Sqoop测试了HDFS->RDS,800mb的数据需要4-8分钟。因此,您可以想象~60gb的数据将是无法管理的。这将是我最后的选择
  • 根据用户请求直接从我的Web服务器查询配置单元。我从来没有像这样使用过蜂箱的头部,所以我对此表示怀疑。这让我震惊,因为我刚刚发现,在EMR集群上进行端口转发之后,您可以远程查询配置单元表。但作为大(ish)数据的新手,我不太确定与此相关的风险。这样做很平常吗
  • 另一个解决方案——人们通常是如何做这种事情的?这似乎是一项相当普通的任务
  • 为了完整起见,我的数据如下所示:

    id     time             cat1    cat2    cat3    metrics[200]
    A123   1234212133        12     ABC      24      4,55,231,34,556,123....(~200)
    .
    .
    .
    
    (时间就是时代)

    我的查询如下所示:

    id     time             cat1    cat2    cat3    metrics[200]
    A123   1234212133        12     ABC      24      4,55,231,34,556,123....(~200)
    .
    .
    .
    
    按cat1从tablename组中选择cat1、corr(度量[2]、度量[3])、corr(度量[2]、度量[4])、corr(度量[2]、度量[5])、corr(度量[2]、度量[6])


    我需要相关函数,这就是我选择postgresql而不是MySQL的原因。

    您在以下位置有相关函数:

    corr(第1列,第2列)


    返回组中一对数字列的皮尔逊相关系数。

    您只需通过odbc连接到hiveserver端口并执行查询即可。 以下是一个例子:

    蜂巢用户体验(hue)有一个蜂蜡查询编辑器,专门设计用于向熟悉SQL的最终用户公开蜂巢。这样,他们就可以对驻留在配置单元中的数据运行特别查询,而无需将其移动到其他位置。您可以在此处看到蜂蜡查询编辑器的示例:


    这对你有用吗?

    从上面的问题中我可以理解的是,你有一些数据(20GB)存储在hdfs中并使用hive。现在,您希望访问这些数据以执行某种统计功能,如相关性和其他功能

    • 您在配置单元中具有执行关联的函数
    • 否则,您可以使用RHive直接将R连接到hive,甚至可以使用datasource将excel连接到hive
    • 另一个解决方案是安装配置单元编辑器附带的色调,您可以在其中直接查询配置单元

    我意识到这是可能的,但这是好的做法吗?我从来没有听说过蜂箱被这样使用。当然。我认为这是使用蜂箱的主要方式。配置单元应该向用户和机器公开,以便从远程服务器执行ETL和分析等。用户通常通过Hue或任何支持ODBC和JDBC的查询软件(如DBVisualizer)访问它。此外,使用JDBC,您可以从Java访问它,并创建通过配置单元实现ETL作业的软件。以上所有这些都是很常见的。但请看一看这一点:。表示
    配置单元不是为在线事务处理而设计的,不提供实时查询
    。想法?这意味着hive不支持事务(现在在0.13中有点支持),并且只要您使用map reduce,这是正确的,您就不会得到实时查询,因为存在恒定的开销。这并不意味着你不应该查询,只是它是为更具分析性和健壮性的查询而构建的。是的,我知道这一点,但我主要想知道这样使用蜂巢是否是一种好的做法。。。