📜  Apache Pig CROSS运算符

📅  最后修改于: 2021-01-07 10:56:50             🧑  作者: Mango

Apache Pig CROSS运算符

Apache Pig CROSS运算符有助于计算两个或更多关系的叉积。使用CROSS运算符是一项昂贵的操作,应谨慎使用。

交叉运算符的示例

在此示例中,我们计算两个关系的数据。

执行CROSS运算符的步骤

  • 在本地计算机上创建一个文本文件,并将一些值写入其中。
$ nano pcross1.txt

  • 在本地计算机上创建另一个文本文件,并将一些值写入其中。
$ nano pcross2.txt

  • 检查两个文本文件中写入的值。
$ cat pcross1.txt
$ cat pcross2.txt

  • 将两个文本文件上载到HDFS的特定目录中。
$ hdfs dfs -put pcross1.txt /pigexample
$ hdfs dfs -put pcross2.txt /pigexample
  • 打开Pig MapReduce运行模式。
$ pig
  • 加载包含数据的文件。
grunt> A = LOAD '/pigexample/pcross1.txt' USING PigStorage(',') AS (a1:int,a2:int);
  • 现在,执行并验证数据。
grunt> DUMP A;
  • 加载另一个包含数据的文件。
grunt> B = LOAD '/pigexample/pcross2.txt' USING PigStorage(',') AS (b1:int,b2:int,b3:int);
  • 现在,执行并验证数据。
grunt> DUMP B;
  • 让我们在两个文件之间执行笛卡尔积。
grunt> Result = CROSS A,B;
  • 现在,执行并验证数据。
grunt> DUMP Result;

在这里,我们得到了期望的输出。