天天看点

《Flume日志收集与MapReduce模式》一2.1 下载Flume

本节书摘来自华章出版社《flume日志收集与mapreduce模式》一书中的第2章,第2.1节,作者 [美] 史蒂夫·霍夫曼(steve hoffman)斯里纳特·佩雷拉(srinath perera),更多章节内容可以访问云栖社区“华章计算机”公众号查看

二进制分发包中有个bin目录,源文件则位于src目录中。源文件只包含了flume源代码。二进制分发包体积要更大一些,这是因为它不仅包含了flume源代码与编译后的flume组件(jars、javadocs等),还包含了所有flume依赖的java库。二进制包包含了与源文件相同的maven pom文件,因此如果从二进制分发包开始,那么你可以重新编译源代码。

继续,下载(并验证)二进制分发包,这样可以在起步时节省一些时间。

hadoop分发包中的flume

某些hadoop分发包中自带了flume。这些分发包可能提供了hadoop核心组件包与相关项目(比如flume),他们会考虑诸如版本兼容性与额外的bug修复等问题。这些分发包没什么好坏之分,只是有些不同而已。

当然了,缺点还是有的。分发包自带的flume版本常常落后于apache发布的版本。如果有你想要使用的新特性,那要么等待分发包提供者进行移植,要么自己打补丁。此外,虽然分发包提供者做了大量的测试(就像任何通用平台一样),但你还是有可能会遇到测试没有覆盖的问题。在这种情况下,你就得采取一些变通方式或是深入研究源代码了,还可以将补丁提交到开源社区(这样分发包就会在未来进行更新或是在下一个版本中将补丁纳入进来)。

因此,在hadoop分发包中,flume版本会有些老。这种事情的好坏就见仁见智了。通常情况下,大公司不喜欢不稳定的新技术,也不喜欢频繁变化,因为变化可能是导致意外的最常见的原因。你很难找到使用最新linux内核的公司,大部分使用的还是red hat enterprise linux(rhel)、centos、ubuntu lts等旨在提供稳定性与兼容性的分发包。如果你是一家初创公司,构建下一代的互联网时尚圈,那么你可能需要这些新技术以在竞争中处于上风。

如果考虑使用分发包,那么请搜索一下,看看每一种分发包都提供了什么。记住,每一个分发包其实都希望你最后需要它们的企业服务,而这种服务并不便宜。自己好好想想吧。

下面是一个简短且不权威的列表,列出了现有的一些厂商,你可以了解一下:

继续阅读