Hive/Pig 语法简单比较

一句话,Hive 开发比 Pig快多了...

从hdfs读取数据:

Hive: CREATE EXTRENAL TABLE IF NOT EXIST (domain string, num int) ROW FORMAT DELIMITED FIELDS TERMINATED BY ‘\t‘ location ‘hdfs_file‘;

Pig: LOAD ‘hdfs_file‘ USING PigStorage (‘\t‘) as (domain:chararray, num:int);

存储:

Hive: INSERT OVERWRITE DIRECTORY ‘target_hdfs_file‘ SELECT... ;

Pig: STORE result into ‘target_hdfs_file‘;

同SQL的比较:

Hive没有in和not in,"select a.key where a.key in {select b.key from b}"的实现方式为"select a.key from a left outer join b on a.key=b.key where b.key is not null;"

Pig就更麻烦了...

区别:

Pig存储默认分隔符‘\t‘, Hive为‘Ctrl+A‘

时间: 2024-10-10 12:16:26

Hive/Pig 语法简单比较的相关文章

Hadoop Hive sql语法详解

Hive 是基于Hadoop 构建的一套数据仓库分析系统,它提供了丰富的SQL查询方式来分析存储在Hadoop 分布式文件系统中的数据,可以将结构化的数据文件映射为一张数据库表,并提供完整的SQL查询功能,可以将SQL语句转换为MapReduce任务进行运行,通过自己的SQL 去查询分析需要的内容,这套SQL 简称Hive SQL,使不熟悉mapreduce 的用户很方便的利用SQL 语言查询,汇总,分析数据.而mapreduce开发人员可以把己写的mapper 和reducer 作为插件来支持

Hive sql 语法解读

一. 创建表 在官方的wiki里,example是这种: Sql代码 CREATE [EXTERNAL] TABLE [IF NOT EXISTS] table_name [(col_name data_type [COMMENT col_comment], ...)] [COMMENT table_comment] [PARTITIONED BY (col_name data_type [COMMENT col_comment], ...)] [CLUSTERED BY (col_name, 

【玩转微信公众平台之七】 PHP语法简单介绍

经过多篇的努力,我们终于成为了微信公众平台的开发者.但是别高兴的太早,就跟修真小说一样:修炼多年武破虚空,飞升到仙界后本以为成为了天仙即可跳出三界外,不在五行中.可实际到了仙界才发现,成仙只是修行的第一步......没错,成为开发者也才只是第一步,因为现在你的微信公众平台还没有任何功能,说难听点就是小白,说好听点就是白马王子,说可爱点就是小白白,说黄色点就是洗白白,说...----------------要想在微信公众平台添加功能,那就需要写代码:既然说到写代码,那么肯定是要用php(如果用AS

css基本语法简单介绍

css基本语法简单介绍:本章节介绍一下css的基本语法,比较适合于初学者阅读,对于稍有经验的人员来说,几乎没有太多帮助,可以略过.使用css的方式主要以下三种: 1.行内样式 2.内嵌样式 3.外联样式 当然可能不同的教材中的名称有所不同,不过实质都是一样的,不必太过纠结.下面分别介绍一下上面三种方式的使用.一.行内样式:所谓的行内样式就是通过标签的style属性,将css代码写在标签之内,代码如下: <div style="color:blue">softwhy.com&

Smali语法简单介绍

Smali语言其实就是Davlik的寄存器语言: Smali语言就是android的应用程序.apk通过apktool反编译出来的都有一个smali文件夹,里面都是以.smali结尾的文件,文件的展示语言. Smali语法简单介绍如下: Davlik字节码中,寄存器都是32位的,能够支持任何类型,64位类型(Long/Double)用2个寄存器表示: Dalvik字节码有两种类型:原始类型:引用类型(包括对象和数组)   原始类型:v   void  只能用于返回值类型 Z   boolean

Hive基本语法操练

建表规则如下: CREATE [EXTERNAL] TABLE [IF NOT EXISTS] table_name [(col_name data_type [COMMENT col_comment], ...)] [COMMENT table_comment] [PARTITIONED BY (col_name data_type [COMMENT col_comment], ...)] [CLUSTERED BY (col_name, col_name, ...) [SORTED BY (

Hive 基本语法操练(二):分区操作和桶操作

(一)分区操作 Hive 的分区通过在创建表时启动 PARTITION BY 实现,用来分区的维度并不是实际数据的某一列,具体分区的标志是由插入内容时给定的.当要查询某一分区的内容时可以采用 WHERE 语句, 例如使用 “WHERE tablename.partition_key>a” 创建含分区的表.创建分区语法如下. CREATE TABLE table_name( ... ) PARTITION BY (dt STRING,country STRING) 1. 创建分区 Hive 中创建

Hadoop Hive sql 语法详解

Hive 是基于Hadoop 构建的一套数据仓库分析系统,它提供了丰富的SQL查询方式来分析存储在Hadoop 分布式文件系统中的数据,可以将结构化的数据文件映射为一张数据库表,并提供完整的SQL查询功能,可以将SQL语句转换为MapReduce任务进行运行,通过自己的SQL 去查询分析需要的内容,这套SQL 简称Hive SQL,使不熟悉mapreduce 的用户很方便的利用SQL 语言查询,汇总,分析数据.而mapreduce开发人员可以把己写的mapper 和reducer 作为插件来支持

HIve体系结构,hive的安装和mysql的安装,以及hive的一些简单使用

Hive体系结构: 是建立在hadoop之上的数据仓库基础架构. 和数据库相似,只不过数据库侧重于一些事务性的一些操作,比如修改,删除,查询,在数据库这块发生的比较多.数据仓库主要侧重于查询.对于相同的数据量在数据库中查询就比较慢一些,在数据仓库中查询的效率就比较快. 数据仓库是面向于查询的,并且处理的数据量要远远高于数据库处理的数据量. 传统的数据仓库产品,依然有数据存储的瓶颈,那么在这个瓶颈下查询的速度慢了,那么就不适用了,我们的hadoop是处理海量数据的,所以我们可以在上面建立数据仓库.