- Apache Pig 教程
- Apache Pig - 首页
- Apache Pig 简介
- Apache Pig - 概述
- Apache Pig - 架构
- Apache Pig 环境
- Apache Pig - 安装
- Apache Pig - 执行
- Apache Pig - Grunt Shell
- Pig Latin
- Pig Latin - 基础
- 加载 & 存储操作符
- Apache Pig - 读取数据
- Apache Pig - 存储数据
- 诊断操作符
- Apache Pig - 诊断操作符
- Apache Pig - Describe 操作符
- Apache Pig - Explain 操作符
- Apache Pig - Illustrate 操作符
- 分组 & 连接
- Apache Pig - Group 操作符
- Apache Pig - Cogroup 操作符
- Apache Pig - Join 操作符
- Apache Pig - Cross 操作符
- Pig Latin 内置函数
- Apache Pig - Eval 函数
- 加载 & 存储函数
- Apache Pig - Bag & Tuple 函数
- Apache Pig - 字符串函数
- Apache Pig - 日期时间函数
- Apache Pig - 数学函数
- Apache Pig 有用资源
- Apache Pig - 快速指南
- Apache Pig - 有用资源
- Apache Pig - 讨论
Apache Pig - TOBAG()
Pig Latin 的 TOBAG() 函数将一个或多个表达式转换为单个元组。这些元组被放置在一个包中。
语法
下面是 TOBAG() 函数的语法。
TOBAG(expression [, expression ...])
示例
假设我们在 HDFS 目录 /pig_data/ 中有一个名为 employee_details.txt 的文件,其内容如下所示。
employee_details.txt
001,Robin,22,newyork 002,BOB,23,Kolkata 003,Maya,23,Tokyo 004,Sara,25,London 005,David,23,Bhuwaneshwar 006,Maggy,22,Chennai
我们已使用关系名 emp_data 将此文件加载到 Pig 中,如下所示。
grunt> emp_data = LOAD 'hdfs://127.0.0.1:9000/pig_data/employee_details.txt' USING PigStorage(',') as (id:int, name:chararray, age:int, city:chararray);
现在,我们将每个员工(记录)的 id、name、age 和 city 转换为元组,如下所示。
tobag = FOREACH emp_data GENERATE TOBAG (id,name,age,city);
验证
您可以使用 Dump 操作符验证 tobag 关系的内容,如下所示。
grunt> DUMP tobag; ({(1),(Robin),(22),(newyork)}) ({(2),(BOB),(23),(Kolkata)}) ({(3),(Maya),(23),(Tokyo)}) ({(4),(Sara),(25),(London)}) ({(5),(David),(23),(Bhuwaneshwar)}) ({(6),(Maggy),(22),(Chennai)})
apache_pig_bag_tuple_functions.htm
广告