当前位置: 首页 > 科技观察

浅谈部署大数据Hadoop之前的思考

时间:2023-03-17 00:54:52 科技观察

Hadoop的应用前提是“数据是有价值的!”当然,这一点几乎已经被所有人所认可,在实际环境中也是如此,我们在做的事情,我们都希望从系统日志、网络数据、社会信息等海量数据中挖掘出有价值的信息,比如用户的行为习惯,这些都是下一步营销的有效决策依据。Hadoop出现后,数据发现变得更加流行,尤其是知名互联网公司已经使用或部署了Hadoop环境。面对这样的诱惑,很多传统企业用户都想参考互联网公司的做法,快速部署Hadoop,从而快速整合和发现现有数据的价值。但现实恰恰是网络流行语“理想很丰满,现实太骨感”。快速部署Hadoop并不是那么容易。为什么会出现这样的问题?我想到几个原因:1、Hadoop给我们提供的只是一个框架,并不是一套完整的解决方案。就像买房子一样,建筑商提供的永远是基本结构。整体装修部分还是要靠住户根据自己的风格和喜好来设计实施。此外,每个住户都会有自己的装饰部分。定义。Hadoop的部署就是这样。每个企业的Hadoop环境可以说是独一无二的,这就需要企业用户对自己的数据环境有很好的梳理和了解。我需要分析哪些数据?我需要什么样的信息?我要用这些信息做什么?只有了解了这些问题,Hadoop的部署才会体现出它的价值。而这些不仅仅是技术问题,还有管理意识甚至商业合作。2.人手问题。Hadoop属于开源架构,开源有其先天不足或无法解决的问题,例如,由于场景的独特性,开源架构下的开发和维护问题。Hadoop也会面临这样的问题,市场上的Hadoop人才相对较少,这会增加企业部署和应用的难度。大量的开发工作需要大量的开发人员,个体的稀缺增加了开发的成本和难度。3、只有适合分布式架构的问题,Hadoop才能解决。Hadoop不是“灵丹妙药”,不能解决所有的数据分析问题。对于结构化的数据查询和分析,传统的数据库结构也有其独特的优势。Hadoop是分布式架构,分布式架构决定了“只有适合分布式架构的问题,Hadoop才能解决”。例如,一个孕妇需要怀孕10个月才能生孩子,而不是通过10个孕妇在1个月内生孩子。归根结底,只能把问题拆分成若干个子问题,而且子问题是相互独立的,也就是可以采用“key-value”的迭代方式进行处理,最终可以得到我们需要的结果得到。这样的问题是Haodop可以解决的。4、Hadoop不适合处理小文件。其实,大和小只是相对的概念,没有绝对值的比较。Hadoop之所以不适合处理小文件,是HDFS中namenode的局限性决定的。每个文件都会在namenode中保存相应的元数据信息。为了提高效率,这些信息在使用过程中都存储在内存中。如果小文件很多,会消耗大量namenode节点的内存。对于单个节点,内存的扩展是有上限的。.反之,如果是比较大的文件,比如GB或者更大的文件,那么消耗的内存就相对较少。同时,在数据处理的过程中,系统开销所占的比例也会小很多。这些架构特点和局限性决定了Hadoop更适合处理“大”数据。当然,从技术实现的角度来说,大锤杀鸡也是可以的,就看值不值得了。原文链接:http://www.36dsj.com/archives/10382