阅读更多

0顶
0踩

开源软件

原创新闻 lzo + hive1.x测试

2018-03-15 09:24 by 见习记者 功夫小当家 评论(0) 有3114人浏览

(一)环境:

hadoop 2.8.1
hive 1.2.2

 

   core-site.xml 配置项

<property>
  <name>io.compression.codecs</name>
  <value>org.apache.hadoop.io.compress.GzipCodec,
           org.apache.hadoop.io.compress.DefaultCodec,
           org.apache.hadoop.io.compress.BZip2Codec,
           com.hadoop.compression.lzo.LzopCodec,
           com.hadoop.compression.lzo.LzoCodec
  </value>
</property>    

<!-- lzop -->
<property>
   <name>io.compression.codec.lzo.class</name>
   <value>com.hadoop.compression.lzo.LzopCodec</value>
</property>

  

    mapred-site.xml 配置项

<!--设置map中间结果使用 lzop 压缩-->
<property> 
    <name>mapreduce.map.output.compress</name> 
    <value>true</value> 
</property> 

<property>
   <name>mapreduce.map.output.compress.codec</name>
   <value>com.hadoop.compression.lzo.LzopCodec</value>
</property>

<!--设置map/reduce 整个过程使用 lzop 压缩 -->
<property>
    <name>mapreduce.output.fileoutputformat.compress</name>
    <value>true</value>
</property>

<!-- lzop -->
<property>
   <name>mapreduce.output.fileoutputformat.compress.codec</name>
   <value>com.hadoop.compression.lzo.LzopCodec</value>
</property>

 

 

(二)

1.hive建表sql

 

CREATE TABLE `lzo5`(
  `uuid` string)
STORED AS 
INPUTFORMAT 'com.hadoop.mapred.DeprecatedLzoTextInputFormat' 
OUTPUTFORMAT 'org.apache.hadoop.hive.ql.io.HiveIgnoreKeyTextOutputFormat'

 

 

2.创建uuid.txt文件,放1行数据

 

uuid1

 

 

3.lzop创建lzo文件

 

lzop uuid.txt

 

 

4.hive load数据

 

load data inpath "/home/hadoop/uuid.txt.lzo" into table lzo5;

 

 

5.hive查询,查看结果是1(正确)

 

select count(1) from lzo5;

 

 

6.给hive表lzo5路径下的lzo文件,创建lzo索引

 

$HADOOP_HOME/bin/hadoop jar $HADOOP_HOME/share/hadoop/common/hadoop-lzo-0.mmon/hadoop-lzo-0.4.21-SNAPSHOT.jar com.hadoop.compression.lzo.DistributeddLzoIndexer  hdfs://hd1:9000/user/hive/warehouse/lzo5

 

 

7.查看索引生成情况

 

hdfs dfs -ls hdfs://hd1:9000/user/hive/warehouse/lzo5

 

 

 

8.再次查询sql,查看结果是1(正确)

 

select count(1) from lzo5;

 

(三)如何知道lzo index是否生效?

创建一个lzo文件,比hdfs的block size略大一点,分别在无索引和有索引两种场景下测试,看map数

  • 无索引的map数是1,因为lzo无索引不可split,
  • 有索引的map数是lzo文件大小 / block size 个, 因为lzo + index后支持split

 

 

 

0
0
评论 共 0 条 请登录后发表评论

发表评论

您还没有登录,请您登录后再发表评论

相关推荐

  • tcc编译器-中文编译器

    tcc编译器是一个编译速度非常快的一个开源编译器。这是我修改后的,它可以用你的母语作标识符,我可以用中文写代码,这样很久以后打开我自己的代码。依然可以和容易就理解。别人识中文的人一样可以很容易理解。我没做太多测试。有问题欢迎指教

  • 这8种常用的代码编辑器,你平时用哪个?

    关注+星标公众号,不错过精彩内容作者 | strongerHuang微信公众号|嵌入式专栏对于软件开发人员,代码编辑器好用与否直接影响代码编辑的效率。软件开发,基本上都有集成开发环境...

  • 5 个好用且免费的在线代码编辑器

    免费的在线 IDE 对我们开发人员来说只是一种福利。在我们购买 IDE 或安装市场上的免费 IDE 之前,让我告诉你,我们根据要使用的技术安装和配置编辑器。我们对具有不同配置和技术的其他应用程序重复此步骤。我们花时间配置东西而不是实际编写应用程序。你不会立即看到差异。你需要保存并刷新浏览器——这是多么浪费时间。现在情况仍然如此,但在执行任务或客户项目数月时这是正常的。现代在线编程方式对好奇的人来说是一个真正的推动力,他们渴望知识和发现新技术,而无需将精力和时间花在配置和安装等副业上。

  • 干货 |10个最受欢迎的代码编辑器

    它的特点有:精心设计的 GUI,强大的默认设置,高度可发现的扩展程序,能够轻松分屏,能实现git diff 视图,拥有内置的终端 / 调试器,智能感知能查看类型函数定义。它几乎支持所有的语言,包括:C,C++,ASM,HTML等,能够自动创建并维护自带的高性能符号数据库,包括函数、method、全局变量、结构、类和工程源文件里定义的其它类型的符号统统都有,很适合大工程的源码阅读。观看零基础学习视频,看视频学习是最快捷也是最有效果的方式,跟着视频中老师的思路,从基础到深入,还是很容易入门的。

  • 代码编辑器

    代码编辑器

  • 给 Python 初学者推荐的 IDE 哦!

    作者 |黄伟呢来源 |数据分析与统计学之美总有一些Python初学者,会问到:学习Python,应该用什么Python IDE?了解到他们使用Python做什么之后,我总结了这篇文章。...

  • 七个好用且免费的在线代码编辑器,你喜欢哪个?

    七个好用且免费的在线代码编辑器,你喜欢哪个?免费的在线 IDE 对我们开发人员来说只是一种福利。在我们购买 IDE 或安装市场上的免费 IDE 之前,让我告诉你,我们根据要使用的技术安装和配置编辑器。

  • TCC(TinyC)编译器汉化(中文编译器、汉语编程)之八:汇编处理

    汇编处理源码如下: /* * GAS之类的ZHI汇编程序 */ #定义 全局_使用 #导入 "zhi.h" #如果已定义 配置_ZHI_汇编 静态 段 *最后_代码_段; /* 处理.previous asm指令 */ 静态_函数 整数型 汇编_获取_局部_标签_名称(知心状态机 *状态机1, 无符号 整数型 n) { 字符型 buf[64]; 单词存储结构 *ts; snprintf(buf, 取大小(buf), "L..%u", n); ts = 单词表_查

  • 解决编译器出现以下中文乱码问题

    刚开始的时候,我的编译器(我用的编译器是visual studio 2017)出现这种中文乱码,我真的是煞费苦心,在网上寻找了许多解决方法都没能解决。 我一直以为都是因为我用的编译器出现bug了,最后才发现跟人家的编译器没有半毛钱关系,解决方法很简单: “开始-&gt;运行-&gt;输入 "cmd" ,打开 DOS 窗口,在上方的拖动栏(就是用鼠标按住...

  • 中文脚本编译器的设计与实现(一)概论(1)编译器的基本工作原理

    中文脚本编译器的设计与实现(一)总体思路

  • 编译器工程中文版

    编译器工程中文版

  • 汉语编程-汉编环境(包括:汉编编辑器,汉编编译器,示例,汉编程序讲座CAJ格式)

    文档包括: 编译器WIN32CHP 汉语编程编辑器HBEDIT 示例 汉语编程讲座文档(9个)

  • 汉语编程编译器 2.08

    汉语编程编译器是北京国之经典汉语编程科技有限公司自主研发的一种专门对汉语编写的源程序进行编译的工具,适用WINDOWS/LINUX等平台。此编译器可以在解编译态下运行,也可以在解释状态下运行。要注意的是此编译器运行,是把已保存好的源程序装载下就运行了,也可以直接把源程序粘贴到编译器里按回车就运行了。

  • 汉化了十数个编译器的前辈的心得体会

    @竹闲 的原文在【图片】回复:有筒子想用中文写汇编吗?_汇编吧_百度贴吧 63楼. 特此转载, 并向所有勇于探索的前辈们致敬! 他汉化的十余个编译器: 竹闲:一般编程语言都是英文的,大家对中文编程有什么样的看法,中文编程有哪些优劣势? 1)论点:应否「建立新的中文编程语言」,慎思之。 2)理由: 2.1)旧编程语言的优点(代价)。 2.2)新编程语言的立足点。 2.3)旧径:绕过上述困难,直接沿用...

  • gcc 不支持 //注释的解决

     这段时间用slickedit写代码(windows平台下,装了Cygwin),编译器用的gcc,但是有个问题就是用 "//" 写注释的时候,编译的时候有错:error: parse error before / token,extra tokens at end of #endif directive。今天在网上搜到一点蛛丝马迹,在slickedit里build菜单,gnu c option

Global site tag (gtag.js) - Google Analytics