Hadoop 与PostgreSQL相比,配置单元索引重建太慢

Hadoop 与PostgreSQL相比,配置单元索引重建太慢,hadoop,hive,Hadoop,Hive,我正在尝试比较我的PostgreSQL数据仓库和新创建的Hive数据仓库在相同数据和相同表结构的相同框上的相同功能。我试图了解蜂巢的好处,但是。。。尽管数据加载到PostgreSQL的速度慢了3倍——在PostgreSQL上创建/重建索引的速度快了20倍,但不需要像在Hive中那样每次都重建索引。 我的问题是:我在蜂巢配置中缺少什么 我的设置是: 创建表mytable ( aa int, bb串 ) 以“\t”结尾的行格式分隔字段 位置“/data/spaces/hadoop/hadoopfs”

我正在尝试比较我的PostgreSQL数据仓库和新创建的Hive数据仓库在相同数据和相同表结构的相同框上的相同功能。我试图了解蜂巢的好处,但是。。。尽管数据加载到PostgreSQL的速度慢了3倍——在PostgreSQL上创建/重建索引的速度快了20倍,但不需要像在Hive中那样每次都重建索引。 我的问题是:我在蜂巢配置中缺少什么

我的设置是: 创建表mytable ( aa int, bb串 ) 以“\t”结尾的行格式分隔字段 位置“/data/spaces/hadoop/hadoopfs”

将数据本地INPATH'/DATA/Informix94/spaces/postgres/myfile_big'覆盖加载到表mytable中

在表mytable(aa)上创建索引mytable_indx,名为“org.apache.hadoop.hive.ql.INDEX.compact.CompactIndexHandler”,带有延迟重建位置“/data/spaces/hadoop/hadoopfs”

设置hive.optimize.autoindex=true; 设置hive.optimize.index.filter=true

在mytable重建上更改索引mytable_indx

我的盒子是带有3g内存的虚拟机,上面运行的是PostgreSQL,占用了~1g内存。他担任元数据存储。我使用的是CentOS、Hadoop和Hive的最新稳定版本,除了matadata存储位置和统计信息禁用外,没有更改Hive的默认设置

结果是:
在260.000.000行上重建索引需要4798秒,在5.000.000行上重建索引需要80秒。

Hive仅在数据不再适合单个计算机时才能正常工作。因此,您看到的结果是预期结果。所以,一旦你收集了数TB或数PB的数据,你就会对hive感到非常高兴。在您描述的用例中,PostgreSQL将是一个更好的匹配