【HIVE安装使用与SQL教程】教程文章相关的互联网学习教程文章

同样的SQL语句在SparkSQL中运行和在hive运行,结果不同

参考:https://blog.csdn.net/happylin0x29a/article/details/8855716问题原因:为了优化读取parquet格式文件,spark默认选择使用自己的解析方式读取数据,结果读出的数据就有问题。 解决办法:将配置项spark.sql.hive.convertMetastoreParquet 改为false就行了

JDBC连接HIVE【代码】

代码连接hive需要先启动hive的metastore和hiveserver2hive --service metastore & hive --service hiveserver2 &其中hive-site.xml的配置为:<configuration> <property> <name>javax.jdo.option.ConnectionURL</name> <value>jdbc:mysql://192.168.174.131:3306/hive?createDatabaseIfNotExist=true</value> <description>JDBC connect string for a JDBC metastore</description> </property><property> <name>javax.jdo.option....

数据仓库 Hive【代码】【图】

文章目录 1. 特点2. Hive 体系架构3. 安装 Hive3.1 安装 MySQL3.2 安装 Hive3.3 配置 Hive1. 特点 查询语言与 SQL 接近并行执行使用 HDFS 存储支持多种数据格式不支持数据更新不支持索引执行延迟高(不适合在线数据查询)可扩展性高数据规模大 2. Hive 体系架构3. 安装 Hive 先安装 hadoop:hadoop 多机全分布式安装步骤(虚拟机1master+2slave) 3.1 安装 MySQL 在 master 上安装 yum localinstall https://dev.mysql.com/get/mys...

Hive格式化输出数据库和表详细信息

hive> desc database extended wx_test;OKwx_test hdfs://ns1/user/hive/warehouse/wx_test.db hadoop USER {t_date=2015-06-21, creator=wx}Time taken: 0.027 seconds, Fetched: 1 row(s) hive> desc formatted page_view;OK# col_name data_type comment viewtime int userid bigint ...

shell脚本实现hive增量加载

实现思路: 1、每天凌晨将前一天增量的数据从业务系统导出到文本,并FTP到Hadoop集群某个主节点上上传路径默认为:/mnt/data/crawler/ 2、主节点上通过shell脚本调用hive命令加载本地增量温江到hive临时表 3、shell脚本中,使用hive sql 实现临时表中的增量数据更新或者新增增量数据到hive 主数据表中 实现步骤: 1.建表语句, 分别创建两张表test_temp, test 表 [SQL] 纯文本查看 复制代码 ?crrawler.test_temp( a.id str...

Hive SQL之分区表与分桶表【代码】【图】

Hive sql是Hive 用户使用Hive的主要工具。Hive SQL是类似于ANSI SQL标准的SQL语言,但是两者有不完全相同。Hive SQL和Mysql的SQL方言最为接近,但是两者之间也存在着显著的差异,比如Hive不支持行级数据的插入、更新和删除,也不支持事务操作。注: HIVE 2.*版本之后开始支持事务功能,以及对单条数据的插入更新等操作 Hive的相关概念Hive数据库Hive中的数据库从本质上来说仅仅就是一个目录或者命名空间,但是对于具有很多用户和组的...

(转)Hive SQL的编译过程【代码】【图】

作用② SimpleFetchOptimizer优化没有GroupBy表达式的聚合查询② MapJoinProcessorMapJoin,需要SQL中提供hint,0.11版本已不用② BucketMapJoinOptimizerBucketMapJoin② GroupByOptimizerMap端聚合① ReduceSinkDeDuplication合并线性的OperatorTree中partition/sort key相同的reduce① PredicatePushDown谓词前置① CorrelationOptimizer利用查询中的相关性,合并有相关性的Job,HIVE-2206ColumnPruner字段剪枝表格中①的优化器...

60TB 数据量的作业从 Hive 迁移到 Spark 在 Facebook 的实践【图】

60TB 数据量的作业从 Hive 迁移到 Spark 在 Facebook 的实践 过往记忆大数据 过往记忆大数据 Facebook 经常使用分析来进行数据驱动的决策。在过去的几年里,用户和产品都得到了增长,使得我们分析引擎中单个查询的数据量达到了数十TB。我们的一些批处理分析都是基于 Hive 平台(Apache Hive 是 Facebook 在2009年贡献给社区的)和 Corona( Facebook 内部的 MapReduce 实现)进行的。Facebook 还针对包括 Hive 在内的多个内部数据...

SQL数据分析概览——Hive、Impala、Spark SQL、Drill、HAWQ 以及Presto+druid【图】

。以及2个商业化选择Oracle Big Data SQL 和IBM Big SQL,IBM 尚未将后者更名为“Watson SQL”。 (有读者问:Druid 呢?我的回答是:检查后,我同意Druid 属于这一类别。) 使用SQL 引擎一词是有点随意的。例如Hive 不是一个引擎,它的框架使用MapReduce、TeZ 或者Spark 引擎去执行查询,而且它并不运行SQL,而是HiveQL,一种类似SQL 的语言,非常接近SQL。“SQL-in-Hadoop” 也不适用,虽然Hive 和Impala 主要使用Hadoop,但是Sp...

一篇搞定hive函数,建议收藏!【代码】【图】

导语 小伙伴们好,俗话说:工欲善其事必先利其器,hive是我们与大数据打交道的工具,所以我们需要熟练使用hive的一些函数,这样后面的数据测试就得心应手啦。废话不多说直接上干货目录如下数据准备字符函数聚合函数数学函数时间函数窗口函数条件函数1 数据准备首先我们创建一张收集用户流量页面的SQL表,同学们可以直接将其在mysql下创建:/* SQLyog Ultimate v12.09 (64 bit) MySQL - 5.7.16-log : Database - ******************...

自定义函数hello,并注册到hive源码中并重新编译【图】

1 编写自己的udf方法hellopackage cn.zhangjin.hive.udf;import org.apache.hadoop.hive.ql.exec.Description; import org.apache.hadoop.hive.ql.exec.UDF; import org.apache.hadoop.io.Text;/*** @author zj* @create 2019-02-22 17:51* 一个UDF: hello*/@Description(name = "sayhello",value = "_FUNC_(input_str) - returns Hello : input_str ",extended = "Example:\n "+ " > SELECT _FUNC_(wxk) FROM src LIMIT 1;\n"+ "...

hive 查询语法 shell参数 自定义函数

4. Hive 查询语法 4.1. SELECT SELECT [ALL | DISTINCT] select_expr, select_expr, ...FROM table_reference[WHERE where_condition][GROUP BY col_list [HAVING condition]][CLUSTER BY col_list| [DISTRIBUTE BY col_list] [SORT BY| ORDER BY col_list]][LIMIT number]order by 会对输入做全局排序,因此只有一个reducer,会导致当输入规模较大时,需要较长的计算时间。sort by不是全局排序,其在数据进入reducer前完成排序。因...

Hive中mapreduce流程【图】

MapReduce 包括Mapper(Mapper类)阶段和Reducer(Reducer类)阶段,其中Map阶段和Reduce阶段都包含部分Shuffle阶段工作。 Map阶段1.输入分片 input split: 一个大的文件会根据block块切分成多个分片,每个输入分片会让一个map进程来处理2.Map任务: i. 初始化: 创建context,map.class实例,设置输入输出,创建mapper的上下文 Map 任务把分片传递给 TaskTracker 里面的 InputFormat类的 createRecordReader() 方法 以便获取...

hive表按天动态分区报错【代码】【图】

原本要将ods层的newlogs表中365天的数据全部导入到dwd层的logs表,并按天分区,但是报错了,具体情况如下 执行sql前,开启动态分区并设置参数 set hive.exec.dynamic.partition=true; set hive.exec.dynamic.partition.mode=nonstrict; set hive.exec.max.dynamic.partitions.pernode=3000; set hive.exec.max.dynamic.partitions=6000; set mapreduce.map.memory.mb=2048; set mapreduce.reduce.memory.mb=3072;以下是hql语句 ins...

Hive 配置显示表头和数据库信息【图】

property><name>hive.cli.print.header</name><value>true</value><description>Whether to print the names of the columns in query output.</description></property><property><name>hive.cli.print.current.db</name><value>true</value><description>Whether to include the current database in the Hive prompt.</description></property> 重新进入Hive,如下所示: 配置已生效 .Hive 配置显示表头和数据库信息标签...