关键词:
Hive的操作与传统关系型数据库SQL操作十分类似。
Hive主要支持以下几类操作:
DDL
1、DDL:数据定义语句,包括CREATE、ALTER、SHOW、DESCRIBE、DROP等。
详细点,就是
Hive支持大量SQL数据定义语言(Data Definition Language,DDL)中的现有功能,包括以下各种语句:
CREATE DATABASE/SCHEMA,TABLE,VIEW,FUNCTION,INDEX
DROP DATABASE/SCHEMA,TABLE,VIEW,INDEX
TRUNCATE TABLE
ALTER DATABASE/SCHEMA,TABLE,VIEW
MSCK REPAIR TABLE (or ALTER TABLE RECOVER PARTITIONS)
SHOW DATABASES/SCHEMAS,TABLES,TBLPROPERTIES,PARTITIONS,FUNCTIONS,INDEX[ES]
DESCRIBE DATABASE,table_name,view_name
具体,见
Hive的数据类型和DDL见 https://cwiki.apache.org/confluence/display/Hive/LanguageManual+DDL
DML
2、DML:数据操作语句,包括LOAD DATA,INSERT(将查询结果写入Hive表或文件系统中)。
注意,Hive的设计中,没有考虑UPDATE操作。
详细点,就是
Hive支持大量SQL数据定义语言(Data Manipulation Language,DML)中的现有功能,包括以下各种语句:
使用where条件过滤表的行
使用列或子查询的select表达式
使用等值连接,连接多张表
合并表的所有行或子查询
针对多个“分组”的列进行聚合计算
将查询结果存入另一张表
导出表中的内容到本地目录或HDFS目录中
Hive支持的原生数据类型
数值类型
TINYINT (1字节有符号整型)
SMALLINT(2字节有符号整型)
INT(4字节有符号整型)
BIGINT(8字节有符号整型)
FLOAT(4字节单精度浮点数)
DOUBLE(8字节双精度浮点数)
DECIMAL(用户定义精度和尺寸)
日期/时间类型
TIMESTAMP(传统的UNIX时间戳,精度到纳秒)
DATE(使用YYYY-MM-DD格式的日期,没有时刻信息)
字符串类型
STRING(不指定长度)
VARCHAR(1~65535个字符)
CHAR(1~225个字符,固定长度,不足255长度会在末尾补齐空格)
其他类型
BOOLEAN
BINARY
Hive支持的符合数据类型
Struct:不同类型数据的集合
Array:相同类型的集合
Map:键值对数据类型的集合
QUERY
3、QUERY:数据查询语句,主要是SELECT语句。
hiveql数据查询进阶(代码片段)
HiveQL数据查询进阶Hive内置函数Hive内置函数就是Hive数据仓库工具已经帮助开发者实现好的可以拿来即用的函数,就好像传统的关系型数据库为开发者提供的丰富的函数,如sum、count、sqrt等。Hive提供的这些内置函数与关系... 查看详情
在 HiveQL 中使用 hive 变量
】在HiveQL中使用hive变量【英文标题】:usehivevariableinHiveQL【发布时间】:2020-07-0113:57:58【问题描述】:我有一个提供max_processed_date的查询(它提供单个值),这个日期用于从master_table获取数据。我正在使用hivevars这样做,但它直... 查看详情
SQL 到 HiveQL 生成器
】SQL到HiveQL生成器【英文标题】:SQLtoHiveQLgenerator【发布时间】:2013-04-1213:54:59【问题描述】:有什么方法可以将我的SQL查询转换为Hive查询,或者任何开源工具或项目可以帮助我将一些查询从SQL转换为HiveQL,以便我可以通过在Had... 查看详情
多个连接的 HiveQL 查询
】多个连接的HiveQL查询【英文标题】:HiveQLqueryformultiplejoins【发布时间】:2014-04-1800:02:13【问题描述】:我是HIVE的新手。我正在尝试为连接实现一个简单的HiveQL查询。但由于缺乏对HiveQL的了解,而且互联网上与HiveQl相关的可用... 查看详情
hive组件以及执行过程
...列、分区等的元数据”的组件。驱动(Driver)-控制HiveQL生命周期的组件,当HiveQL查询穿过Hive时。该驱动管理着会话句柄以及任何会话的统计。查询编译器(QueryCompiler)-是一个组件,将HiveQL编译成有向无环图(directedacyc 查看详情
查询用户出现在表中后的前 48 小时活动 (HiveQL / SQL)
】查询用户出现在表中后的前48小时活动(HiveQL/SQL)【英文标题】:Queryingthefirst48hoursofactivityafterauserappearsinatable(HiveQL/SQL)【发布时间】:2020-06-0601:50:10【问题描述】:我正在使用Hive表,该表表示网站上的流量并包含user_id、day和even... 查看详情
hiveql数据查询基础(代码片段)
HiveQL数据查询基础HiveQL数据查询语法select语句在所有数据库系统中,select语句是应用最广的,也是相对复杂的语句,它用于选取字段。同样,Hive中的select语句也是比较复杂的查询语句。select*/field1,field2...fromtableNam... 查看详情
HIVEQL:为啥我的 SELECT 查询不起作用?
】HIVEQL:为啥我的SELECT查询不起作用?【英文标题】:HIVEQL:WhyismySELECTquerynotworking?HIVEQL:为什么我的SELECT查询不起作用?【发布时间】:2016-07-2216:00:51【问题描述】:上下文:我正在使用Hive并希望将Query_1与Query_2合并。两者都是... 查看详情
HiveQL 查询不返回任何结果,也没有错误
】HiveQL查询不返回任何结果,也没有错误【英文标题】:HiveQLqueryreturnsnoresultsandnoerrors【发布时间】:2015-10-2610:03:11【问题描述】:我在Ubuntu14.0上运行ApacheHadoop2.6.0,我在Hive0.13.0中创建了一个表:CREATETABLEIFNOTEXISTSrecipes_hive.cuisine... 查看详情
hivehiveql数据定义(代码片段)
HiveQL与传统SQL区别HiveQL是Hive的查询语言。与mysql的语言最接近,但还是存在于差异性,表现在:Hive不支持行级插入操作、更新操作和删除操作,不支持事物。基本语法数据库操作1、创建数据库hive>createdatabasetest;或者createdatabas... 查看详情
如何在java中执行hive命令或hiveql
参考技术A这里所说的在Java中执行Hive命令或HiveQL并不是指HiveClient通过JDBC的方式连接HiveServer(orHiveServer2)执行查询,而是简单的在部署了HiveServer的服务器上执行Hive命令。当然这是一个简单的事情,平常我们通过Hive做简单的数... 查看详情
如何将 HiveQL 查询的结果输出到 CSV?
】如何将HiveQL查询的结果输出到CSV?【英文标题】:HowdoIoutputtheresultsofaHiveQLquerytoCSV?【发布时间】:2013-08-1009:01:11【问题描述】:我们希望将Hive查询的结果放入CSV文件。我认为命令应该是这样的:insertoverwritedirectory\'/home/output.cs... 查看详情
hive
...是一种底层封装了Hadoop的数据仓库处理工具,使用类SQL的HiveQL语言实现数据查询,所有Hive的数据都存储在Hadoop兼容的文件系统,Hive在加载数据过程中不会对数据进行任何的修改,只是将数据移动到HDFS中 查看详情
[hive]hiveql基础操作
1.显示当前的数据库信息 直接修改hive.site.xml,永久显示 查看详情
MongoDB 中的 HiveQL
】MongoDB中的HiveQL【英文标题】:HiveQLinMongoDB【发布时间】:2014-02-2112:49:20【问题描述】:我一直在研究用于数据仓库的NoSQL和Hadoop,但是我以前从未使用过这些技术,我想询问以下是否可以检查我是否正确理解了这些技术。如果... 查看详情
HiveQL - 大数据的高效 geoip 发现
】HiveQL-大数据的高效geoip发现【英文标题】:HiveQL-Efficientgeoipdiscoveryforbigdata【发布时间】:2013-02-2616:07:27【问题描述】:我正在使用此配置单元查询来发现所有帐户的国家/地区代码。问题是连接将数据集爆炸到无法管理的大小... 查看详情
Hive:对指定组求和(HiveQL)
】Hive:对指定组求和(HiveQL)【英文标题】:Hive:Sumoveraspecifiedgroup(HiveQL)【发布时间】:2014-08-0114:03:51【问题描述】:我有一张桌子:keyproduct_codecost1UK201US101EU52UK32EU6我想找到每组“键”的所有产品的总和并附加到每一行。例如k... 查看详情
通过sparkr操作hive
作为数据工程师,我日常用的主力语言是R,HiveQL,Java与Scala。R是非常适合做数据清洗的脚本语言,并且有非常好用的服务端IDE——RStudioServer;而用户日志主要储存在hive中,因此用HiveQL写job也是日常工作之一;当然R的执行效率... 查看详情