四十一、centos安装pig(Pig的应用)

简介: 四十一、centos安装pig(Pig的应用)

环境搭建:


一、pig的安装:

   

1、官网地址pig-0.17.0


Welcome to Apache Pig!

https://pig.apache.org/

   

2、解压:


tar -zxvf pig-0.17.0.tar.gz -C /home

71.png


        3、重命名:


mv pig-0.17.0 pig

72.png


       4、编辑环境变量:


vim /etc/profile


73.png

       5、使环境变量立即生效:


source /etc/profile

       6、启动测试:


               a、进入本地模式:


pig -x local


74.png


                b、进入MapReduce模式:


pig -x mapreduce

75.png


Pig安装完成



二、Pig的应用:


A、计算多维度组合下的平均值

       1、创建测试数据文件:


vim data1.txt


76.png

a       1       2       3       4.2     9.8
a       3       0       5       3.5     2.1
b       7       9       9
a       7       9       9       2.6     6.2
a       1       2       5       7.7     5.9
a       1       2       3       1.4     0.2

       注:此处内容使用Tab键分割


       2、进入本地调试模式:


pig -x local

       3、使用pig计算data1.txt第2.3.4列的所有组合中,最后两列的平均值分别为多少:


A = LOAD 'data1.txt' AS (col1:chararray,col2:int,col3:int,col4:int,col5:double,col6:double);
B = GROUP A BY(col2,col3,col4);
c = FOREACH B GENERATE group,AVG(A.col5),AVG(A.col6);
DUMP c;

77.png


       Pig输出结果如下:


78.png


        注:语句需要一行一行输入执行,可以看到Pig输出结果完全正确


B、统计数据行数

       1、统计A中含col2字段的数据有多少行:


A = LOAD 'data1.txt' AS (col1:chararray,col2:int,col3:int,col4:int,col5:double,col6:double);
B = GROUP A ALL;
C = FOREACH B GENERATE COUNT(A.col2);
DUMP C;


79.png


         2、查看结果:


80.png



       注:这和SQL的Count统计数据行数一样,可以看到结果为  6


C、Pig中使用Shell进行辅助数据处理

       1、创建测试数据data2.txt


vim data2.txt


81.png

1       5       98      =       7
34      8       6       3       2
62      0       6       =       65


       2、将数据中第四列的 “=” 全部替换为9999:


A = LOAD 'data2.txt' AS (col1:int,col2:int,col3:int,col4:chararray,col5:int);
B = STREAM A THROUGH 'awk'{if($4 == "=") print $1"\t"$2"\t"$3"\t9999\t"$5; else print $0}'`;
DUMP B;

         3、查看结果:


82.png


D、向Pig脚本中传入参数

       假设Pig脚本输出的文件是通过外部参数指定的,则此函数不能写死,需要传入


1、在Pig中,传入参数的语句如下:


STORE A INTO '$output_dir';

       其中,output_dir就是传入的参数。在调用Pig的Shell脚本时,可以使用以下语句传入参数


pig -param output_dir="/home/my_output_dir/" my_pig_script.pig

       这里传入的参数output_dir的值为“ /home/my_output_dir/  ”


centos安装pig(Pig的应用)完成


相关文章
|
1月前
|
存储 安全 Linux
CentOS安装SeaweedFS
通过上述步骤,您应该能够在CentOS系统上成功安装并启动SeaweedFS。记住,根据实际部署规模和需求,可能还需要进一步调整配置参数和优化网络布局。SeaweedFS的灵活性和扩展性意味着随着使用深入,您可能需要探索更多高级配置和管理策略。
107 64
|
1月前
|
存储 安全 Linux
CentOS安装SeaweedFS
通过上述步骤,您应该能够在CentOS系统上成功安装并启动SeaweedFS。记住,根据实际部署规模和需求,可能还需要进一步调整配置参数和优化网络布局。SeaweedFS的灵活性和扩展性意味着随着使用深入,您可能需要探索更多高级配置和管理策略。
114 61
|
10天前
|
SQL 存储 Linux
从配置源到数据库初始化一步步教你在CentOS 7.9上安装SQL Server 2019
【11月更文挑战第8天】本文介绍了在 CentOS 7.9 上安装 SQL Server 2019 的详细步骤,包括系统准备、配置安装源、安装 SQL Server 软件包、运行安装程序、初始化数据库以及配置远程连接。通过这些步骤,您可以顺利地在 CentOS 系统上部署和使用 SQL Server 2019。
|
11天前
|
SQL 存储 Linux
从配置源到数据库初始化一步步教你在CentOS 7.9上安装SQL Server 2019
【11月更文挑战第7天】本文介绍了在 CentOS 7.9 上安装 SQL Server 2019 的详细步骤,包括系统要求检查与准备、配置安装源、安装 SQL Server 2019、配置 SQL Server 以及数据库初始化(可选)。通过这些步骤,你可以成功安装并初步配置 SQL Server 2019,进行简单的数据库操作。
|
1月前
|
Linux 网络安全 数据安全/隐私保护
Linux系统之Centos7安装cockpit图形管理界面
【10月更文挑战第12天】Linux系统之Centos7安装cockpit图形管理界面
81 1
Linux系统之Centos7安装cockpit图形管理界面
|
18天前
|
关系型数据库 MySQL Linux
在 CentOS 7 中通过编译源码方式安装 MySQL 数据库的详细步骤,并与使用 RPM 包安装进行了对比
本文介绍了在 CentOS 7 中通过编译源码方式安装 MySQL 数据库的详细步骤,并与使用 RPM 包安装进行了对比。通过具体案例,读者可以了解如何准备环境、下载源码、编译安装、配置服务及登录 MySQL。编译源码安装虽然复杂,但提供了更高的定制性和灵活性,适用于需要高度定制的场景。
55 3
|
19天前
|
关系型数据库 MySQL Linux
在 CentOS 7 中通过编译源码安装 MySQL 数据库的详细步骤,并与使用 RPM 包安装进行了对比。
本文介绍了在 CentOS 7 中通过编译源码安装 MySQL 数据库的详细步骤,并与使用 RPM 包安装进行了对比。内容涵盖准备工作、下载源码、编译安装、配置服务、登录设置及实践心得,帮助读者根据需求选择最适合的安装方法。
35 2
|
1月前
|
NoSQL 数据可视化 Linux
redis学习四、可视化操作工具链接 centos redis,付费Redis Desktop Manager和免费Another Redis DeskTop Manager下载、安装
本文介绍了Redis的两个可视化管理工具:付费的Redis Desktop Manager和免费的Another Redis DeskTop Manager,包括它们的下载、安装和使用方法,以及在使用Another Redis DeskTop Manager连接Redis时可能遇到的问题和解决方案。
123 1
redis学习四、可视化操作工具链接 centos redis,付费Redis Desktop Manager和免费Another Redis DeskTop Manager下载、安装
|
21天前
|
关系型数据库 MySQL Linux
在 CentOS 7 中通过编译源码方式安装 MySQL 数据库的详细步骤,包括准备工作、下载源码、编译安装、配置 MySQL 服务、登录设置等。
本文介绍了在 CentOS 7 中通过编译源码方式安装 MySQL 数据库的详细步骤,包括准备工作、下载源码、编译安装、配置 MySQL 服务、登录设置等。同时,文章还对比了编译源码安装与使用 RPM 包安装的优缺点,帮助读者根据需求选择最合适的方法。通过具体案例,展示了编译源码安装的灵活性和定制性。
64 2
|
25天前
|
Linux 知识图谱
Centos7安装killall,fuser, killall,pstree和pstree.x11
通过上述步骤,您已在CentOS 7系统中成功部署了killall、fuser、pstree以及pstree.x11,为高效管理系统进程打下了坚实基础。更多关于服务器管理与优化的知识,获取全面技术支持与解决方案。
35 1