本文概述
- Apache Pig拉丁语
- Apache Pig拉丁约定
- 拉丁数据类型
Pig Latin是Apache Pig用于分析Hadoop中数据的一种数据流语言。它是一种文本语言, 将Java MapReduce习惯用法中的编程抽象为一种表示法。
Apache Pig拉丁语Pig Latin语句用于处理数据。它是一个运算符, 接受一个关系作为输入并生成另一个关系作为输出。
- 它可以跨越多行。
- 每个语句必须以分号结尾。
- 它可能包括表达式和模式。
- 默认情况下, 使用多查询执行来处理这些语句
Apache Pig拉丁约定
惯例 |
描述 |
( ) |
括号可以包含一个或多个项目。它也可以用来指示元组数据类型。示例-(10, xyz, (3, 6, 9)) |
[ ] |
直括号可以包含一个或多个项目。它也可以用来指示地图数据类型。示例-[INNER |外] |
{ } |
大括号括起来的两个或多个项目。它还可以用于指示bag数据类型。示例-{block | nested_block} |
…
|
水平的省略号点表示你可以重复一部分代码。示例-猫路径[path …
] |
拉丁数据类型简单数据类型
类型 |
描述 |
int |
它定义了带符号的32位整数。示例-2 |
long |
它定义了带符号的64位整数。示例-2L或2l |
float |
它定义了32位浮点数。示例-2.5F或2.5f或2.5e2f或2.5.E2F |
double |
它定义了64位浮点数。示例-2.5或2.5或2.5e2f或2.5.E2F |
chararray |
它以Unicode UTF-8格式定义字符数组。示例-srcmini |
bytearray |
它定义字节数组。 |
boolean |
它定义了布尔类型值。示例-正确/错误 |
datetime |
它按日期时间顺序定义值。范例-1970-01- 01T00:00:00.000 + 00:00 |
biginteger |
它定义了Java BigInteger值。示例-5000000000000 |
bigdecimal |
它定义了Java BigDecimal值。示例-52.232344535345 |
【Apache Pig拉丁概念】复杂类型
类型 |
描述 |
tuple |
它定义了一组有序的字段。范例-(15, 12) |
bag |
它定义了一个元组的集合。范例-{(15, 12), (12, 15)} |
map |
它定义了一组键值对。示例-[open#apache] |
推荐阅读