我在学习Hadoop /大数据技术。我想将数据大量摄入蜂巢。我开始使用一个简单的CSV文件,当我尝试使用INSERT
命令通过记录加载每个记录时,一个记录插入本身需要大约1分钟。当我将文件放入HDFS并使用LOAD
命令时,它是即时的,因为它只是将文件复制到配置单元的仓库中。我只是想知道当他们选择LOAD
而不是INSERT
时必须面对什么样的折衷。Hive insert vs Hive Load:什么是折衷?
3
A
回答
5
加载 - Hive在向表中加载数据时不执行任何转换。加载操作目前是纯粹的复制/移动操作,将数据文件移动到与Hive表对应的位置。
插入 -Query结果可以通过使用insert子句插入到表中,然后依次运行map reduce作业,因此需要一段时间才能执行。
在情况下,如果你想优化/调整插入statements.Below一些技巧:
1.设置执行引擎在蜂巢-site.xml中以TEZ(如果已安装)
set hive.execution.engine=tez;
2.使用ORCFILE
CREATE TABLE A_ORC (
customerID int, name string, age int, address string
) STORED AS ORC tblproperties (“orc.compress" = “SNAPPY”);
INSERT INTO TABLE A_ORC SELECT * FROM A;
3.兼职在蜂巢可以节省整体工作运行时间。为了实现这一目标蜂房default.xml中,下面的配置需要运行改变:
set hive.exec.parallel=true;
set hive.exec.parallel.thread.number=<your value>;
欲了解更多信息,可以访问http://hortonworks.com/blog/5-ways-make-hive-queries-run-faster/ 希望这有助于。
相关问题
- 1. 是什么HIVE
- 2. Hive over HBase vs Hive over HDFS
- 3. Hive insert query like SQL
- 4. load ntuser.dat hive with delphi
- 5. 什么是Object vs的折衷?在泛型参数?
- 6. 在这里做的折衷是什么? (push vs. Array)
- 7. Hive中的单个vs多个分区
- 8. Hive“insert into ... select ... limit”很慢
- 9. HDFS vs HIVE分区
- 10. HIVE - INSERT OVERWRITE与DROP TABLE + CREATE TABLE + INSERT INTO
- 11. 性能:Pig vs Hive
- 12. Apache Phoenix vs Hive-Spark
- 13. Hive查询失败INSERT OVERWRITE
- 14. UIViews太多了吗?什么是成本,什么是折衷?
- 15. 什么是拳击和拆箱,什么是折衷?
- 16. 什么是Hive常见用例?
- 17. Hive - CLIDriver.java的用途是什么?
- 18. Hive中的默认模式是什么?
- 19. Apache Hive的安全措施是什么
- 20. Hive执行“insert into ... values ...”很慢
- 21. Hive分区vs多个表,有什么区别?
- 22. 什么是在HTMLUnit中禁用CSS的折衷?
- 23. 小堆栈边界的折衷是什么?
- 24. 在HIVE
- 25. 这在HIVE
- 26. Hive由vs分配而没有分配
- 27. 在Hive中执行LOAD DATA时,它是否复制数据?
- 28. 为什么Hive表会突然消失?
- 29. RDBMS和Hive有什么不同?
- 30. Hadoop,Hive,Pig,HBase,Cassandra - 什么时候用?
同意。使用INSERT vs LOAD可能会“卡住”的一个折衷方案是如果用户没有权限将文件放在HDFS上但具有Hive用户/密码。如果HiveQL是你唯一的选择,那么你需要使用INSERT。 – mattyb