pig数据类型
来源:互联网 发布:网络骑士的小说百科 编辑:程序博客网 时间:2024/04/28 16:49
Pig的数据类型可以分为两大类:基本类型和复杂类型。
- 基本类型:
int、long、float(浮点数,一般会丢失精度,要求严格可使用int或者long保证不丢失精度)、double(浮点数,一般会丢失精度,要求严格可使用int或者long保证不丢失精度)chararray
:字符串或者字符数组。它是通过java.lang.String实现的。chararray常量是以加单引号的一系列字符来表示,例如’fred’。bytearray
:一团或者一组字节。bytearray是通过封装了java的byte[]的DataByteArray Java类来实现的。 - 复杂类型
pig有3个复杂数据类型:map、tuple和bag。map
:是一种chararray和数据元素之间的键值对映射,其中数据元素可以是任意的pig类型,包括复杂类型。chararray被称为键,它作为查找对应元素的索引,相应的数据元素被称为值。
map常量通过方括号来划定map结构,键和值间是一个#号,键值对之间使用逗号分隔。如:[‘name’#’bob’,’age#55’]。tuple
:tuple是一个定长的,包含有序pig数据元素的集合。tuple可以分为多个字段,每个字段对应着一个数据元素。这些数据元素可以是任意的数据类型,它们无须是相同的数据类型。一个tuple相当于sql中的一行,而tuple的字段相当于sql中的列。
tuple常量使用圆括号来指示tuple结构,使用逗号来划分tuple中的字段。如(‘bob’,55)。bag
:是一个无序的tuple集合,因为它无序,所以无法通过位置获取bag中的tuple。
bag常量是通过花括号进行划分的,bag中的tuple用逗号来分隔,如{(‘bob’,55),(‘sally’,52),(‘john’,25)}。 - null值
在pig中null值所表达的含义是这个值是未知的,这可能是数据缺失,或者在处理数据时发生了错误等原因造成的。 - 模式
pig对于模式非常宽松,如果用户为数据定义了一个模式,那么pig会使用这个模式,为的是既可以进行预先的错误检查也可以用于执行过程的优化。如果用户没有为数据提供一个模式,pig仍然可以处理数据,它会根据脚本的如何处理数据的做出一个最合理的猜测。
0 0
- pig数据类型
- Pig Latin数据类型
- Pig_2. Pig Latin 数据类型 -- 待完善
- pig
- pig
- Pig
- Pig
- Pig
- Pig
- Pig
- pig
- 【pig】挑选合适的数据类型(待翻译)
- 【pig】pig脚本规范
- plasma PIG
- 说说“pig”
- pig语言
- roast pig
- Pig实战
- 一个很平凡的标题
- MSP430G2553默认的MCLK、SMCLK、ACLK时钟频率
- java入门
- JavaScript 页面跳转的几种方式
- 长安大学J题 藏宝图
- pig数据类型
- Android中ListView实现图文并列并且自定义分割线(完善仿微信APP)
- JavaScript
- 3. Longest Substring Without Repeating Characters
- JVM 基础知识
- .gitignore的配置和使用方法
- 关于HashMap经验分享(源码分析)
- JVM 参数调优
- 为什么我们迫切需要持续集成(Continuous Integration)