我的编程空间,编程开发者的网络收藏夹
学习永远不晚

hadoop中怎么部署lzo

短信预约 -IT技能 免费直播动态提醒
省份

北京

  • 北京
  • 上海
  • 天津
  • 重庆
  • 河北
  • 山东
  • 辽宁
  • 黑龙江
  • 吉林
  • 甘肃
  • 青海
  • 河南
  • 江苏
  • 湖北
  • 湖南
  • 江西
  • 浙江
  • 广东
  • 云南
  • 福建
  • 海南
  • 山西
  • 四川
  • 陕西
  • 贵州
  • 安徽
  • 广西
  • 内蒙
  • 西藏
  • 新疆
  • 宁夏
  • 兵团
手机号立即预约

请填写图片验证码后获取短信验证码

看不清楚,换张图片

免费获取短信验证码

hadoop中怎么部署lzo

这篇文章主要讲解了“hadoop中怎么部署lzo”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“hadoop中怎么部署lzo”吧!

    简介

    • 启用lzo

    启用lzo的压缩方式对于小规模集群是很有用处,压缩比率大概能降到原始日志大小的1/3。同时解压缩的速度也比较快。

    • 安装lzo

    lzo并不是linux系统原生支持,所以需要下载安装软件包。这里至少需要安装3个软件包:lzo, lzop, hadoop-gpl-packaging。

    • 增加索引

    gpl-packaging的作用主要是对压缩的lzo文件创建索引,否则的话,无论压缩文件是否大于hdfs的block大小,都只会按照默认启动2个map操作。

    部署

    安装lzop native library

    [root@localhost ~]#  wget http://www.oberhumer.com/opensource/lzo/download/lzo-2.06.tar.gz[root@localhost ~]#  tar -zxvf lzo-2.06.tar.gz[root@localhost ~]#  cd lzo-2.06[root@localhost ~]#  export CFLAGS=-m64[root@localhost ~]#  ./configure -enable-shared -prefix=/usr/local/hadoop/lzo/[root@localhost ~]# make && sudo make install编译完lzo包之后,会在/usr/local/hadoop/lzo/生成一些文件。将/usr/local/hadoop/lzo目录下的所有文件打包,并同步到集群中的所有机器上。在编译lzo包的时候,需要一些环境,可以用下面的命令安装好lzo编译环境[root@localhost ~]#  yum -y install  lzo-devel  zlib-devel  gcc autoconf automake libtool1234567891011121314151617181912345678910111213141516171819

    安装hadoop-lzo

        这里下载的是Twitter hadoop-lzo,可以用Maven(如何安装Maven请参照本博客的《Linux命令行下安装Maven与配置》)进行编译。[root@localhost ~]#  wget https://github.com/twitter/hadoop-lzo/archive/master.zip下载后的文件名是master,它是一个zip格式的压缩包,可以进行解压:[root@localhost ~]#  unzip master解压后的文件夹名为hadoop-lzo-master当然,如果你电脑安装了git,你也可以用下面的命令去下载[root@localhost ~]#  git clone https://github.com/twitter/hadoop-lzo.githadoop-lzo中的pom.xml依赖了hadoop2.1.0-beta,由于我们这里用到的是Hadoop 2.2.0,所以建议将hadoop版本修改为2.2.0:<properties>    <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>    <hadoop.current.version>2.2.0</hadoop.current.version>    <hadoop.old.version>1.0.4</hadoop.old.version></properties>然后进入hadoop-lzo-master目录,依次执行下面的命令[root@localhost ~]# export CFLAGS=-m64[root@localhost ~]# export CXXFLAGS=-m64[root@localhost ~]# export C_INCLUDE_PATH=/usr/local/hadoop/lzo/include[root@localhost ~]# export LIBRARY_PATH=/usr/local/hadoop/lzo/lib[root@localhost ~]# mvn clean package -Dmaven.test.skip=true[root@localhost ~]# cd target/native/Linux-amd64-64[root@localhost ~]# tar -cBf - -C lib . | tar -xBvf - -C ~[root@localhost ~]# cp ~/libgplcompression* $HADOOP_HOME/lib/native/[root@localhost ~]# cp target/hadoop-lzo-0.4.18-SNAPSHOT.jar $HADOOP_HOME/share/hadoop/common/其实在tar -cBf – -C lib . | tar -xBvf – -C ~命令之后,会在~目录下生成一下几个文件:[root@localhost ~]# ls -l1-rw-r--r--  1 libgplcompression.a2-rw-r--r--  1 libgplcompression.la3lrwxrwxrwx  1 libgplcompression.so -> libgplcompression.so.0.0.04lrwxrwxrwx  1 libgplcompression.so.0 -> libgplcompression.so.0.0.05-rwxr-xr-x  1 libgplcompression.so.0.0.0其中libgplcompression.so和libgplcompression.so.0是链接文件,指向libgplcompression.so.0.0.0,将刚刚生成的libgplcompression*和target/hadoop-lzo-0.4.18-SNAPSHOT.jar同步到集群中的所有机器对应的目录。1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515212345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152

    配置hadoop环境变量

    1、在Hadoop中的$HADOOP_HOME/etc/hadoop/hadoop-env.sh加上下面配置:export LD_LIBRARY_PATH=/usr/local/hadoop/lzo/lib2、在$HADOOP_HOME/etc/hadoop/core-site.xml加上如下配置:<property>    <name>io.compression.codecs</name>    <value>org.apache.hadoop.io.compress.GzipCodec,           org.apache.hadoop.io.compress.DefaultCodec,           com.hadoop.compression.lzo.LzoCodec,           com.hadoop.compression.lzo.LzopCodec,           org.apache.hadoop.io.compress.BZip2Codec        </value></property><property>    <name>io.compression.codec.lzo.class</name>    <value>com.hadoop.compression.lzo.LzoCodec</value></property>3、在$HADOOP_HOME/etc/hadoop/mapred-site.xml加上如下配置<property>    <name>mapred.compress.map.output</name>    <value>true</value></property><property>    <name>mapred.map.output.compression.codec</name>    <value>com.hadoop.compression.lzo.LzoCodec</value></property><property>    <name>mapred.child.env</name>    <value>LD_LIBRARY_PATH=/usr/local/hadoop/lzo/lib</value></property>将刚刚修改的配置文件全部同步到集群的所有机器上,并重启Hadoop集群,这样就可以在Hadoop中使用lzo。123456789101112131415161718192021222324252627282930313233343536123456789101112131415161718192021222324252627282930313233343536

    验证lzo(通过hive测试)

    创建lzo表

    CREATE TABLE lzo (ip STRING,user STRING,time STRING,request STRING,status STRING,size STRING,rt STRING,referer STRING,agent STRING,forwarded String)partitioned by (date string,host string)row format delimitedfields terminated by '\t'STORED AS INPUTFORMAT "com.hadoop.mapred.DeprecatedLzoTextInputFormat"OUTPUTFORMAT "org.apache.hadoop.hive.ql.io.HiveIgnoreKeyTextOutputFormat";12345678910111213141516171819201234567891011121314151617181920

    导入数据

    LOAD DATA Local INPATH '/home/hadoop/data/access_20151230_25.log.lzo' INTO TABLE lzo PARTITION(date=20151229,host=25);/home/hadoop/data/access_20151219.log文件的格式如下:xxx.xxx.xx.xxx  -       [23/Dec/2015:23:22:38 +0800]    "GET /ClientGetResourceDetail.action?id=318880&token=Ocm HTTP/1.1"   200     199     0.008   "xxx.com"        "Android4.1.2/LENOVO/Lenovo A706/ch_lenovo/80"   "-"直接采用lzop  /home/hadoop/data/access_20151219.log即可生成lzo格式压缩文件/home/hadoop/data/access_20151219.log.lzo1234512345

    索引LZO文件

      1. 批量lzo文件修改$HADOOP_HOME/bin/hadoop jar /home/hadoop/hadoop-2.2.0/share/hadoop/common/hadoop-lzo-0.4.20-SNAPSHOT.jar com.hadoop.compression.lzo.DistributedLzoIndexer /user/hive/warehouse/lzo  2. 单个lzo文件修改$HADOOP_HOME/bin/hadoop jar /home/hadoop/hadoop-2.2.0/share/hadoop/common/hadoop-lzo-0.4.20-SNAPSHOT.jarcom.hadoop.compression.lzo.LzoIndexer/user/hive/warehouse/lzo/20151228/lzo_test_20151228.lzo1234567891011121312345678910111213

    利用hive执行mr任务

    set hive.exec.reducers.max=10;set mapred.reduce.tasks=10;select ip,rt from nginx_lzo limit 10;在hive的控制台能看到类似如下格式输出,就表示正确了!hive> set hive.exec.reducers.max=10;hive> set mapred.reduce.tasks=10;hive> select ip,rt from lzo limit 10;Total MapReduce jobs = 1Launching Job 1 out of 1Number of reduce tasks is set to 0 since there's no reduce operatorStarting Job = job_1388065803340_0009, Tracking URL = http://mycluster:8088/proxy/application_1388065803340_0009/Kill Command = /home/hadoop/hadoop-2.2.0/bin/hadoop job -kill job_1388065803340_0009Hadoop job information for Stage-1: number of mappers: 1; number of reducers: 02013-12-27 09:13:39,163 Stage-1 map = 0%, reduce = 0%2013-12-27 09:13:45,343 Stage-1 map = 100%, reduce = 0%, Cumulative CPU 1.22 sec2013-12-27 09:13:46,369 Stage-1 map = 100%, reduce = 0%, Cumulative CPU 1.22 secMapReduce Total cumulative CPU time: 1 seconds 220 msecEnded Job = job_1388065803340_0009MapReduce Jobs Launched:Job 0: Map: 1 Cumulative CPU: 1.22 sec HDFS Read: 63570 HDFS Write: 315 SUCCESSTotal MapReduce CPU Time Spent: 1 seconds 220 msecOKxxx.xxx.xx.xxx "XXX.com"Time taken: 17.498 seconds, Fetched: 10 row(s)123456789101112131415161718192021222324123456789101112131415161718192021222324

感谢各位的阅读,以上就是“hadoop中怎么部署lzo”的内容了,经过本文的学习后,相信大家对hadoop中怎么部署lzo这一问题有了更深刻的体会,具体使用情况还需要大家实践验证。这里是编程网,小编将为大家推送更多相关知识点的文章,欢迎关注!

免责声明:

① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。

② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341

hadoop中怎么部署lzo

下载Word文档到电脑,方便收藏和打印~

下载Word文档

猜你喜欢

hadoop中怎么部署lzo

这篇文章主要讲解了“hadoop中怎么部署lzo”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“hadoop中怎么部署lzo”吧!简介启用lzo启用lzo的压缩方式对于小规模集群是很有用处,压
2023-06-02

hadoop该怎么部署

这篇文章主要讲解了“hadoop该怎么部署”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“hadoop该怎么部署”吧!hadoop部署Hadoop介绍:广义: 以apache hadoop软件
2023-06-02

ambari中怎么部署hadoop集群

在Ambari中部署Hadoop集群通常需要按照以下步骤进行操作:登录到Ambari的Web界面,并创建一个新的集群。在创建集群的过程中,需要指定节点主机和组件的配置信息,包括Hadoop的各个组件(如HDFS、YARN、MapReduc
ambari中怎么部署hadoop集群
2024-03-14

怎么配置Hadoop启用LZO压缩

这篇文章主要介绍“怎么配置Hadoop启用LZO压缩”,在日常操作中,相信很多人在怎么配置Hadoop启用LZO压缩问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”怎么配置Hadoop启用LZO压缩”的疑惑有所
2023-06-03

Linux中如何部署Hadoop集群

这篇文章给大家分享的是有关Linux中如何部署Hadoop集群的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。Hadoop 是一个分布式系统基础架构,由Apache基金会开发。用户可以在不了解分布式底层细节的情况下
2023-06-27

k8s部署hadoop的方法是什么

部署Hadoop在Kubernetes(k8s)上有以下几个步骤:1. 创建Kubernetes集群:首先,您需要创建一个Kubernetes集群,可以使用各种工具,如Minikube、kubeadm或托管服务(例如GKE、AKS、EKS等
2023-10-11

CentOS6.5中怎么通过Hadoop用户实现HDFS伪分布式部署

这篇文章给大家介绍CentOS6.5中怎么通过Hadoop用户实现HDFS伪分布式部署,内容非常详细,感兴趣的小伙伴们可以参考借鉴,希望对大家能有所帮助。1、检查hadoop用户是否存在[root@hadoop001 hadoop]# pw
2023-06-03

CentOS6.5中怎么通过Hadoop用户实现Yarn伪分布式部署

这篇文章将为大家详细讲解有关CentOS6.5中怎么通过Hadoop用户实现Yarn伪分布式部署,文章内容质量较高,因此小编分享给大家做个参考,希望大家阅读完这篇文章后对相关知识有一定的了解。1.修改mapred-site.xml文件,没有
2023-06-03

Docker中怎么部署nginx

这篇“Docker中怎么部署nginx”文章的知识点大部分人都不太理解,所以小编给大家总结了以下内容,内容详细,步骤清晰,具有一定的借鉴价值,希望大家阅读完这篇文章能有所收获,下面我们一起来看看这篇“Docker中怎么部署nginx”文章吧
2023-06-27

Ubuntu14.04中怎么部署Docker

今天小编给大家分享一下Ubuntu14.04中怎么部署Docker的相关知识点,内容详细,逻辑清晰,相信大部分人都还太了解这方面的知识,所以分享这篇文章给大家参考一下,希望大家阅读完这篇文章后有所收获,下面我们一起来了解一下吧。Docker
2023-06-28

webrtc中iceServer怎么部署

在WebRTC中部署ICE服务器(ICE server)需要完成以下步骤:1. 设定一个或多个ICE服务器的URL和凭证。ICE服务器用于协助WebRTC进行NAT穿透和连接建立,因此至少需要一个ICE服务器。您可以选择使用公共的ICE服务
2023-10-25

Docker中怎么部署Node.js

这篇文章主要介绍了Docker中怎么部署Node.js的相关知识,内容详细易懂,操作简单快捷,具有一定借鉴价值,相信大家阅读完这篇Docker中怎么部署Node.js文章都会有所收获,下面我们一起来看看吧。项目结构`-- docker-no
2023-07-04

Ubuntu中怎么部署Django

这篇文章主要介绍了Ubuntu中怎么部署Django的相关知识,内容详细易懂,操作简单快捷,具有一定借鉴价值,相信大家阅读完这篇Ubuntu中怎么部署Django文章都会有所收获,下面我们一起来看看吧。第一步,先更新sudo apt-get
2023-07-04

linux中怎么部署k8s

在Linux上部署Kubernetes(K8s)可以按照以下步骤进行操作:安装Docker:K8s使用Docker作为容器运行时环境,因此首先需要在Linux上安装Docker。可以通过在终端中运行以下命令来安装:sudo apt upd
2023-10-27

spark中怎么配置启用LZO压缩

这篇文章给大家介绍spark中怎么配置启用LZO压缩,内容非常详细,感兴趣的小伙伴们可以参考借鉴,希望对大家能有所帮助。Spark中配置启用LZO压缩,步骤如下:一、spark-env.sh配置export LD_LIBRARY_PATH=
2023-06-03

Docker中怎么部署Jenkins

这篇文章主要介绍“Docker中怎么部署Jenkins”,在日常操作中,相信很多人在Docker中怎么部署Jenkins问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”Docker中怎么部署Jenkins”的疑
2023-06-28

怎么在WDCP中部署PHP

这篇文章主要介绍了怎么在WDCP中部署PHP的相关知识,内容详细易懂,操作简单快捷,具有一定借鉴价值,相信大家阅读完这篇怎么在WDCP中部署PHP文章都会有所收获,下面我们一起来看看吧。一、WDCP的安装与设置1、 下载与解压WDCP的官方
2023-07-05

gitee怎么部署中间件

随着互联网的快速发展,各种技术也不断涌现。中间件作为一种重要的技术,在互联网开发中扮演着重要的角色。而如今,中间件已经被广泛使用,成为了开发人员必不可少的技术之一。在本文中,我们将探讨如何在gitee上部署中间件。首先,我们需要了解什么是中
2023-10-22

编程热搜

  • Python 学习之路 - Python
    一、安装Python34Windows在Python官网(https://www.python.org/downloads/)下载安装包并安装。Python的默认安装路径是:C:\Python34配置环境变量:【右键计算机】--》【属性】-
    Python 学习之路 - Python
  • chatgpt的中文全称是什么
    chatgpt的中文全称是生成型预训练变换模型。ChatGPT是什么ChatGPT是美国人工智能研究实验室OpenAI开发的一种全新聊天机器人模型,它能够通过学习和理解人类的语言来进行对话,还能根据聊天的上下文进行互动,并协助人类完成一系列
    chatgpt的中文全称是什么
  • C/C++中extern函数使用详解
  • C/C++可变参数的使用
    可变参数的使用方法远远不止以下几种,不过在C,C++中使用可变参数时要小心,在使用printf()等函数时传入的参数个数一定不能比前面的格式化字符串中的’%’符号个数少,否则会产生访问越界,运气不好的话还会导致程序崩溃
    C/C++可变参数的使用
  • css样式文件该放在哪里
  • php中数组下标必须是连续的吗
  • Python 3 教程
    Python 3 教程 Python 的 3.0 版本,常被称为 Python 3000,或简称 Py3k。相对于 Python 的早期版本,这是一个较大的升级。为了不带入过多的累赘,Python 3.0 在设计的时候没有考虑向下兼容。 Python
    Python 3 教程
  • Python pip包管理
    一、前言    在Python中, 安装第三方模块是通过 setuptools 这个工具完成的。 Python有两个封装了 setuptools的包管理工具: easy_install  和  pip , 目前官方推荐使用 pip。    
    Python pip包管理
  • ubuntu如何重新编译内核
  • 改善Java代码之慎用java动态编译

目录