WEB开发网
开发学院软件开发Java Java 开发 2.0: 通过 CouchDB 和 Groovy 的 RESTC... 阅读

Java 开发 2.0: 通过 CouchDB 和 Groovy 的 RESTClient 实现 REST

 2009-12-30 00:00:00 来源:WEB开发网   
核心提示: MapReduceGoogle 独创的 MapReduce 是一个用于处理海量数据集的概念框架,它是一种高度优化的应用大量计算机的分布式问题解决机制,Java 开发 2.0: 通过 CouchDB 和 Groovy 的 RESTClient 实现 REST(3),MapReduce 包含两个函数

MapReduce

Google 独创的 MapReduce 是一个用于处理海量数据集的概念框架。它是一种高度优化的应用大量计算机的分布式问题解决机制。MapReduce 包含两个函数:map 和 reduce。map 函数用于接受大量输入,并将它们分割为较小的部分(同时将这些数据传递给其他进程)。reduce 函数的作用是将来自 map 的所有单独输出整合为一个最终的输出。

借助 CouchDB,您可以搜索文档、文档属性甚至在关系世界中关联文档。您的实现方式是使用视图,而不是 SQL。从本质上说,视图是您采用 MapReduce 样式(在 JavaScript 中)编写的函数;也就是说,您最终只需要编写一个 map 函数和一个 reduce 函数。这些函数将共同过滤或提取文档数据,或者有效利用它们之间的关系。事实上,CouchDB 具备足够的灵活性,只要底层文档没有发生发化,它就只需要运行这些函数一次,从而加快视图处理过程。

CouchDB 最有意思的地方是它的设计方式。CouchDB 体现了 Web 本身的基本(也是极为成功的)概念。它公开了一组全面的 REST 式 API,允许创建、查询、更新和删除文档、视图和数据库。这使得 CouchDB 的使用变得非常简单。您不需要借助其他驱动程序或平台来开始开发:一个浏览器便能完成所有工作。也就是说,丰富的库使 CouchDB 的使用变得非常简单 — 但从内部来看,它们仅仅是通过 HTTP 来利用 REST 式概念。

与 Web 的本质特性相类似,CouchDB 在设计时融入了大量可扩展因素。它是使用并发编程语言 Erlang 编写的,它支持绑定分布式、容错、不间断应用程序。该语言(现已开源可用)是由 Ericsson 开发的,并在电信环境中得到了广泛应用。

上一页  1 2 3 4 5 6 7 8  下一页

Tags:Java 开发 通过

编辑录入:爽爽 [复制链接] [打 印]
赞助商链接