【Hadoop】-Apache Hive使用语法与概念原理[15]

这篇具有很好参考价值的文章主要介绍了【Hadoop】-Apache Hive使用语法与概念原理[15]。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

一、数据库操作

  • 创建数据库

create database if not exists myhive;

  • 使用数据库

use myhive;

  • 查看数据库详细信息

desc database myhive;

数据库本质上就是在HDFS之上的文件夹。

默认数据库的存放路径是HDFS的:/user/hive/warehouse内

【Hadoop】-Apache Hive使用语法与概念原理[15],hadoop,mysql基础,hadoop,hive,大数据

  • 创建数据库并指定hdfs存储位置

create database myhive2 location '/myhive2';

使用location关键字,可以指定数据库在HDFS的存储路径

【Hadoop】-Apache Hive使用语法与概念原理[15],hadoop,mysql基础,hadoop,hive,大数据

  • 删除一个空数据库,如果数据库下面有数据表,那么就会报错

drop database myhive;

  • 强制删除数据库,包含数据库下面的表一起删除

drop database myhive2 cascade;

二、数据表操作

2.1、数据导入(数据加载)

  • 方式一:从文件向表加载数据

load  data  [local]  inpath  'path'  [overwriteinto  table  tablename;

----如果数据在hdfs,那么源文件会消失(本质上走的mv移动)

----如果数据在本地,需要带local,如果在hdfs就不用带了

----这个加载方式不会走MapReduce,小文件加载数据快 

  • 方式二:从表向其他表加载数据

insert  into | overwrite  table  tablename  select  .......;

2.2、数据导出

  • 方式一:通过insert  overwrite  语句

insert  overwrite  [local directory  'path' 

[row  format  delimited  fields  terminated  by  '']        -----自定义列分隔符

select  .....;

----带local,写入本地

----不带local,写入hdfs

方式二:

# -e  直接执行sql语句,将结果通过linux的重定向符号写入到指定文件中

bin/hive  -e  "sql语句">  result.txt        

# -f  直接执行sql脚本,将结果通过linux的重定向符号写入到指定文件中

bin/hive  -e  "sql脚本文件">  result.txt  

2.3、分区表

在大数据中,最常用的一种思想就是分治,我们可以把大的文件分割成一个个小的文件,这样每次操作一个小的文件就会很容易了。同样的道理,在hive当中也是支持这种思想,就是我们可以把大的数据,按照每天或者每小时进行切分成一个个的小文件,这样去操作小的文件就会容易得多。

  1. 创建分区表
CREATE TABLE test_ext ( id int ) COMMENT 'partitioned table' PARTITION BY ( year string,
month string, day string ) ROW FORMAT DELIMITED FIELDS TERMINATED BY '\t' ;
  • 单分区 

【Hadoop】-Apache Hive使用语法与概念原理[15],hadoop,mysql基础,hadoop,hive,大数据

  • 多分区 

【Hadoop】-Apache Hive使用语法与概念原理[15],hadoop,mysql基础,hadoop,hive,大数据

2.4、分桶表

分桶和分区一样,也是一种通过改变表的存储模式,从而完成对表优化的一种调优方式。

但和分区不同,分区是将表拆分到不同的子文件夹中进行存储,而分桶是将表拆分到固定数量的不同文件中进行存储。

【Hadoop】-Apache Hive使用语法与概念原理[15],hadoop,mysql基础,hadoop,hive,大数据

【Hadoop】-Apache Hive使用语法与概念原理[15],hadoop,mysql基础,hadoop,hive,大数据文章来源地址https://www.toymoban.com/news/detail-860631.html

到了这里,关于【Hadoop】-Apache Hive使用语法与概念原理[15]的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • hive 报错return code 40000 from org.apache.hadoop.hive.ql.exec.MoveTask解决思路

    参考学习 https://github.com/apache/hive/blob/2b57dd27ad61e552f93817ac69313066af6562d9/ql/src/java/org/apache/hadoop/hive/ql/ErrorMsg.java#L47 为啥学习error code 开发过程中遇到以下错误,大家觉得应该怎么办?从哪方面入手呢? 1.百度? 2.源码查看报错地方 3.忽略(这个错是偶发的) 但是这个错是hive的错,

    2024年02月03日
    浏览(66)
  • HiveOnSpark报错Failed toexecutespark taskwithexceptionorg.apache.hadoop.hive.ql.metadata.HiveException

    如果在运行Hive时使用Spark引擎,但是却报了以下错误: Failed to execute spark task, with exception \\\'org.apache.hadoop.hive.ql.metadata.HiveException(Failed to create Spark client for Spark session xxx)\\\' FAILED: Execution Error, return code 30041 from org.apache.hadoop.hive.ql.exec.spark.SparkTask. Failed to create Spark client for Spark se

    2024年02月11日
    浏览(33)
  • 【Hive-Exception】return code 1 from org.apache.hadoop.hive.ql.exec.DDLTaskHIVE

    解决方案: 如果不能设置值,会报错。 Error: Error while processing statement: Cannot modify hive.msck.path.validation at runtime. It is not in list of params that are allowed to be modified at runtime (state=42000,code=1) 在hive-site中添加内容:

    2024年02月09日
    浏览(42)
  • Hive 中执行 SQL语句 报错 :FAILED: SemanticException org.apache.hadoop.hive.ql.metadata.HiveException: java.

    在命令输入 hive 启动后: 解决方案: **错误原因:**服务端未开启服务,在hive服务端使用命令:hive --service metastore 然后再启动hive , 就可以正常使用sql语句了。 **其他原因:**有的是mysql没有启动,下面有完整的hive 启动流程 启动hive 流程(很多问题往往是少了步骤导致的)

    2024年02月15日
    浏览(53)
  • Hadoop、Spark和Hive调优优化原理

    作者:禅与计算机程序设计艺术 随着互联网和大数据的普及以及处理器性能的提升,当时的技术已经远远超过了当时能够想象的范围。这段时间MapReduce计算框架已经成为一个主流的开源计算框架,包括Hadoop、Pig、Hive、Mahout、Storm等。 2010年Apache Spark横空出世,基于内存计算框

    2024年02月06日
    浏览(43)
  • return code 3 from org.apache.hadoop.hive.ql.exec.spark.SparkTask.

    集群环境 错误由来 错误原因 错误分析 解决办法 1、集群环境 CDH集群5.16.1 ,hive的引擎是spark。 2、错误由来 今天在生产环境的集群里跑hive任务,报错 Job failed with org.apache.spark.SparkException: Job aborted due to stage failure: Task 7 in stage 14.0 failed 4 times, most recent failure: Lost task 7.3 in sta

    2024年02月16日
    浏览(43)
  • hive报错——FAILED: Execution Error, return code 1 from org.apache.hadoop.hive.ql.exec.StatsTask

    今天向分区表插入数据 insert into table--------的时候 执行完报错了:FAILED: Execution Error, return code 1 from org.apache.hadoop.hive.ql.exec.StatsTask 重启了电脑也没用, 修改了yarn-site.xml和mapred-site.xml增加yarn和mapreduce可用内存都没用 然后同学让我加了一句话 set set hive.stats.column.autogather=false  

    2024年02月08日
    浏览(44)
  • hive报错:FAILED: Execution Error, return code 1 from org.apache.hadoop.hive.ql.exec.DDLTask.

    使用hive创建表的时候报错:FAILED: Execution Error, return code 1 from org.apache.hadoop.hive.ql.exec.DDLTask. MetaException(message:Got exception: java.net.ConnectException Call From node01/192.168.126.100 to node01:9000 failed on connection exception: java.net.ConnectException: Connection refused; For more details see:  http://wiki.apache.org/ha

    2024年02月09日
    浏览(49)
  • org.apache.hadoop.hive.ql.exec.DDLTask. show Locks LockManager not specified解决

    Error while processing statement: FAILED: Execution Error, return code 1 from org.apache.hadoop.hive.ql.exec.DDLTask. show Locks LockManager not specified解决 当在Hive中执行show locks语句时,出现\\\"LockManager not specified\\\"错误通常是由于未正确配置Hive的锁管理器所引起的。要解决这个问题,可以按照以下步骤进行:

    2024年02月14日
    浏览(39)
  • 【Hive】Hive在调用执行MapReduce进程时报错:FAILED: Execution Error, return code 2 from org.apache.hadoop.hive.ql.

    今天,在测试Hive时,碰到了以下错误: 从报错的内容上看,应该是调用MapReduce时出现了错误。 尽管查看日志,也没有明确的指出出现错误的原因: 于是,我便想到了用Hadoop来执行MapReduce来测试MapReduce的功能是否正常: 执行以上命令,发现调用MapReduce时确实出现了问题: 根

    2024年02月03日
    浏览(44)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包