日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

Hadoop2.2.0+hive使用LZO压缩那些事

發布時間:2025/3/15 编程问答 33 豆豆
生活随笔 收集整理的這篇文章主要介紹了 Hadoop2.2.0+hive使用LZO压缩那些事 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

環境:

Centos6.4 64位

Hadoop2.2.0

Sun JDK1.7.0_45

hive-0.12.0

準備工作:

yum -y install ?lzo-devel ?zlib-devel ?gcc autoconf automake libtool

開始了哦!

(1)安裝LZO

wget http://www.oberhumer.com/opensource/lzo/download/lzo-2.06.tar.gz
tar -zxvf lzo-2.06.tar.gz
./configure -enable-shared -prefix=/usr/local/hadoop/lzo/
make && make test && make install

安裝完畢,將/usr/local/hadoop/lzo/lib/* 復制到/usr/lib/和/usr/lib64/下 sudo cp?/usr/local/hadoop/lzo/lib/*?/usr/lib/ sudo cp?/usr/local/hadoop/lzo/lib/*?/usr/lib64/ 配置環境變量(vim /etc/bashrc):export PATH=/usr/local//hadoop/lzo/:$PATH

(2)安裝LZOP
wget http://www.lzop.org/download/lzop-1.03.tar.gz
tar -zxvf lzop-1.03.tar.gz

export C_INCLUDE_PATH=/usr/local/hadoop/lzo/include/

PS:如果不配置,會報錯: configure: error: LZO header files not found. Please check your installation or set the environment variable `CPPFLAGS'. 接下來,

./configure -enable-shared -prefix=/usr/local/hadoop/lzop
make ?&& make install

(3)把lzop復制到/usr/bin/
ln -s /usr/local/hadoop/lzop/bin/lzop /usr/bin/lzop

(4)測試lzop
lzop /home/hadoop/data/access_20131219.log

輸入lzop

報錯:lzop: error while loading shared libraries: liblzo2.so.2: cannot open shared object file: No such file or directory

解決辦法:增加環境變量export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/lib64

會在生成一個lzo后綴的壓縮文件:?/home/hadoop/data/access_20131219.log.lzo即表示前述幾個步驟正確哦。
(5)安裝Hadoop-LZO

當然的還有一個前提,就是配置好maven和svn 或者Git(我使用的是SVN),這個就不說了,如果這些搞不定,其實也不必要進行下去了!

我這里使用https://github.com/twitter/hadoop-lzo

使用SVN從https://github.com/twitter/hadoop-lzo/trunk下載代碼,修改pom.xml文件中的一部分。

從:

<properties>
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
<hadoop.current.version>2.1.0-beta</hadoop.current.version>
<hadoop.old.version>1.0.4</hadoop.old.version>
</properties>

修改為:

<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>

再依次執行:

mvn clean package -Dmaven.test.skip=true
tar -cBf - -C target/native/Linux-amd64-64/lib . | tar -xBvf - -C /home/hadoop/hadoop-2.2.0/lib/native/
cp target/hadoop-lzo-0.4.20-SNAPSHOT.jar /home/hadoop/hadoop-2.2.0/share/hadoop/common/

接下來就是將/home/hadoop/hadoop-2.2.0/share/hadoop/common/hadoop-lzo-0.4.20-SNAPSHOT.jar以及/home/hadoop/hadoop-2.2.0/lib/native/ 同步到其它所有的hadoop節點。注意,要保證目錄/home/hadoop/hadoop-2.2.0/lib/native/ 下的jar包,你運行hadoop的用戶都有執行權限。

(6)配置Hadoop

在文件$HADOOP_HOME/etc/hadoop/hadoop-env.sh中追加如下內容:

export LD_LIBRARY_PATH=/usr/local/hadoop/lzo/lib

在文件$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>

在文件$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>

(7)在Hive中體驗lzo

A:首先創建nginx_lzo的表

CREATE TABLE logs_app_nginx (
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 delimited
fields terminated by '\t'
STORED AS INPUTFORMAT "com.hadoop.mapred.DeprecatedLzoTextInputFormat"
OUTPUTFORMAT "org.apache.hadoop.hive.ql.io.HiveIgnoreKeyTextOutputFormat";

B:導入數據

LOAD DATA Local INPATH '/home/hadoop/data/access_20131230_25.log.lzo' INTO TABLE logs_app_nginx PARTITION(date=20131229,host=25);

/home/hadoop/data/access_20131219.log文件的格式如下:

?

221.207.93.109? -?????? [23/Dec/2013: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_20131219.log即可生成lzo格式壓縮文件/home/hadoop/data/access_20131219.log.lzo

C:索引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/<span style="font-family: Arial, Helvetica, sans-serif;">logs_app_nginx</span>

D:開始跑利用hive來跑map/reduce任務了

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 nginx_lzo limit 10;
Total MapReduce jobs = 1
Launching Job 1 out of 1
Number of reduce tasks is set to 0 since there's no reduce operator
Starting Job = job_1388065803340_0009, Tracking URL = http://lrts216:8088/proxy/application_1388065803340_0009/
Kill Command = /home/hadoop/hadoop-2.2.0/bin/hadoop job -kill job_1388065803340_0009
Hadoop job information for Stage-1: number of mappers: 1; number of reducers: 0
2013-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 sec
2013-12-27 09:13:46,369 Stage-1 map = 100%, reduce = 0%, Cumulative CPU 1.22 sec
MapReduce Total cumulative CPU time: 1 seconds 220 msec
Ended Job = job_1388065803340_0009
MapReduce Jobs Launched:
Job 0: Map: 1 Cumulative CPU: 1.22 sec HDFS Read: 63570 HDFS Write: 315 SUCCESS
Total MapReduce CPU Time Spent: 1 seconds 220 msec
OK
221.207.93.109 "XXX.com"
Time taken: 17.498 seconds, Fetched: 10 row(s)

轉載于:https://www.cnblogs.com/luxiaorui/p/3931024.html

總結

以上是生活随笔為你收集整理的Hadoop2.2.0+hive使用LZO压缩那些事的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。

主站蜘蛛池模板: 天天看片中文字幕 | 黄色三级av| 好看的av网址 | 中文区中文字幕免费看 | 少妇伦子伦精品无吗 | 挪威xxxx性hd极品 | 香蕉一区二区三区四区 | 国精产品一区二区三区 | 日韩成人午夜电影 | 亚洲日本中文 | 午夜伦理在线观看 | 操视频网站 | 干干天天 | 超碰777| 欧美一区二区三区免 | 67194成人在线观看 | 婷婷国产一区二区三区 | 烈性摔跤| 精品人妻一区二区三区久久嗨 | 国产精品手机在线观看 | 激情av网| 亚洲二区精品 | 黄色录像a级片 | 亚洲日本在线观看视频 | 亚洲国产永久 | 免费在线观看成人av | 尤物视频在线观看免费 | 你懂的国产视频 | 一级黄色免费网站 | 黄色大片a级 | 能看毛片的网站 | 欧美在线色视频 | youjizz视频 | 成年人午夜免费视频 | 自拍亚洲一区 | 久草资源站 | 天堂a√在线 | 在线资源站 | 中文字幕无码精品亚洲资源网久久 | 国精产品一品二品国精品69xx | 777亚洲| 婷婷激情影院 | 欧美性视屏| 欧美情爱视频 | 99在线视频观看 | 精品99视频 | 中文字幕在线观看视频网站 | 狠狠操狠狠操狠狠操 | 熟女俱乐部一区二区 | 电影寂寞少女免费观看 | 国产黄色免费视频 | 国产精品亚洲一区二区 | 亚洲第一视频 | 欧美性猛交xx | 神马香蕉久久 | 青青青国内视频在线观看软件 | 97人妻精品一区二区三区免 | 亚洲成年人 | 岛国久久久 | 国内成人精品 | 农村妇女毛片精品久久久 | 欧美综合一区二区 | 向着小小的花蕾绽放 | 欧美日本中文字幕 | 精品中文字幕一区二区三区 | 久久天堂精品 | 亚洲精品香蕉 | 午夜偷拍视频 | 日韩美女做爰高潮免费 | 国产精品久久久久一区二区三区 | 日韩精品一区在线观看 | 三日本三级少妇三级99 | 国产第一福利 | 91久久精品国产91久久 | 成熟丰满熟妇高潮xxxxx视频 | 国产精品久久久久91 | 色综合久久88色综合天天 | 精品国产乱码久久久久久蜜柚 | 久久久久高清 | 国产视频综合 | 亚洲综合图片区 | 外国黄色网址 | 亚洲一区二区三区三州 | 国产精品免费入口 | 日本一区二区三区电影在线观看 | 精品国产乱码久久久久久预案 | 国产精品高潮AV无码 | 伊人久久香| av毛片大全 | 国产视频一区二区三区在线观看 | 国产成人一区二区三区视频 | 精品亚洲一区二区三区四区五区高 | 久久久国产一区 | 毛片一级视频 | 91麻豆映画传媒 | 亚洲精品一级片 | 视频久久精品 | 国产一区二区激情视频 | 麻豆免费观看网站 |