数据库新技术:Hadoop和MapReduce的比较
【TechTarget中国原创】问:Hadoop和MapReduce对数据库发展造成了一定的影响,但是我还是不太清楚这两种数据库新技术之间有什么关系,您能解释一下吗?
答:Hadoop是一种分布式数据和计算的框架。换句话说,它很擅长存储大量的半结构化的数据集。数据可以随机存放,所以一个磁盘的失败并不会带来数据丢失。Hadoop也非常擅长分布式计算——快速地跨多台机器处理大型数据集合。
MapReduce是处理大量半结构化数据集合的编程模型。你要问了,那什么是编程模型?这是一种处理并结构化特定问题的方式。例如,在一个关系数据库中,我们使用一种集合语言执行查询,如SQL。我们告诉语言我们想要的结果,并将它提交给系统来计算出如何产生计算。还可以用更传统的语言(C++,Java),一步步地来解决问题。这是两种不同的编程模型,MapReduce就是另外一种。
MapReduce和Hadoop是相互独立的,实际上又能相互配合工作得很好。因此,我们常常发现他们会被同时提到。