写点什么

Cloudant 发布了基于 Java 的 CouchDB 视图服务器

  • 2010-09-19
  • 本文字数:1167 字

    阅读完需:约 4 分钟

CouchDB 背后的公司 Cloudant 刚发布了针对 CouchDB 的 Java 视图服务器。这意味着不仅仅是 Erlang 和解释性语言如Javascript 或者Python 可以用于Map-Reduce 工作,基于JVM 的语言也可以用于Map-Reduce 工作。本周的CouchDB 社区会议将会讨论这项技术。目前Java 视图服务器只用于Cludant 托管的BigCouch 服务。

Java 的主要优点是有海量的 Java 库可用于各种各样与 map reduce 任务有关的功能。第二点是更可靠的静态类型方面(还需要证实)。性能比较是有意义的,但是目前还没有做基准测试。预期 Java 视图的性能会比原生的 Erlang 视图慢(Java 和 Erlang 可以混合在一个视图中)。使用 org.json 库做的 JSON 序列化和反序列化会带来一些性能开销。要使用基于 Java 的 Map Reduce 视图只需要实现一个简单的 JavaView 接口,该接口提供了对 map、reduce 和 rereduce 的回调。例如一个简单的视图,聚合在配置的 JSON 字段中的单词数量。 {
“_id”:"_design/splittext", “language”:“java”, “views” : { “title” : {“map”:"{\“classname\”:\“ com.cloudant.javaviews.SplitText \”,\“configure\”:\“title\”}",“reduce”:“com.cloudant.javaviews.SplitText”},
} }InfoQ 与负责 Java 视图服务器项目的 Search at Cloudant 主管 David 做了交流。InfoQ:CouchDB 运行在 Erlang 之上,它如何与 JVM 中的代码交互?实现这个项目的挑战在哪里?David:Java 视图服务器和所有 CouchDB 视图服务器一样(除了原生 erlang)作为一个外部进程运行。在 CouchDb 和视图服务器之间有一个定义良好的协议来做通信。通常,通过标准方式做通信,但是实际上因为性能原因我们使用OtpErlang java-erlang 库(允许多线程)。InfoQ:在这个场景下对代码/ 库有什么限制?David:主要的挑战是安全,在系统级和用户数据级都用限制。我们在一个共享的集群运行视图服务器。我们使用动态类加载来加载用户的库。类加载器有一个十分严格的安全管理器来限制恶意调用。不允许文件系统访问,只允许调用有限的系统调用。目前的视图服务器架构很简单,它使用由基于Erlang 的CouchDB 实例来驱动java 线程。如果Java 服务器出问题了,它只是关闭并重启服务器。对于这样的服务器还可以使用基于Scala 的 Akka framework 或者 Jetty 的非阻塞请求来实现。Java 视图服务器可以运行在任何 JVm 上。一 个巨大的潜力在于使用 Java 的下一代语言例如 Clojure、Scala 或者 Groovy(和其他语言)来做种工作,因为这些语言对于表达这样的任务比 Java 更简明高效。据 David 所说其他团体正在开发一个基于 Clojure 的视图服务器。如果想评估新的 Java 视图服务器,可以从 Cloudant’s 的站点获得一个免费的账号。在 couchjava github 版本库可以看到更详细的介绍。查看英文原文: Cloudant releases Java based view server for CouchD B

2010-09-19 09:523721
用户头像

发布了 47 篇内容, 共 11.9 次阅读, 收获喜欢 3 次。

关注

评论

发布
暂无评论
发现更多内容

Windows Server 2025 中文版、英文版下载 (2025 年 5 月更新)

sysin

Windows Server

天翼云HBlock重磅发布快照克隆功能

科技热闻

Windows 10 on ARM, version 22H2 ARM64 中文版、英文版下载 (2025 年 5 月更新)

sysin

Windows 10

Cisco Nexus 9000v Switch, NX-OS Release 10.5(3)F | 10.4(5)M

sysin

nexus

AI招聘APP的主要功能

北京木奇移动技术有限公司

AI应用 AI招聘 软件外包公司

户外防水租赁LED显示屏报价与选择攻略

Dylan

商业 LED显示屏 全彩LED显示屏 户外LED显示屏 led显示屏厂家

论文解读 - 统一的多模态理解和生成模型综述(上)

合合技术团队

人工智能 算法 #大数据

日本房产中介龙头为何放弃 Salesforce,转向开源平台 NocoBase?

NocoBase

开源 CRM Salesforce 人力资源管理系统 日本房地产

Veeam ONE 13 之初见 - Web 控制台和 Veeam 监控的未来

sysin

veeam

Oracle Linux 9.6 正式版发布 - Oracle 提供支持 RHEL 兼容发行版

sysin

oracle

低代码开发模式下的应用交付效率优化:拖拽式交互机制研究

JeeLowCode低代码平台

低代码 低代码开发 低代码平台 低代码前端 低代码,

CST软件PCB热仿真2--直流热源(IR drop)+ 元件热源

思茂信息

cst CST软件 CST Studio Suite

直播APP的技术难点

北京木奇移动技术有限公司

直播app 直播APP开发 软件外包公司

天翼云,用息壤智能体打通AI“最后一公里”

脑极体

AI

Windows 11 24H2 中文版、英文版 (x64、ARM64) 下载 (2025 年 5 月更新)

sysin

windows 11

观测云产品更新 | SIEM、监控、基础设施、异常追踪等

观测云

产品迭代

【 HGDD 荣耀开发者日】系列活动丨荣耀应用市场联合维科网,推动应用分发“数智化”赋能

荣耀开发者服务平台

生态 荣耀开发者服务平台 应用市场 荣耀HONOR HGDD

工程级提示词攻防,注意这5点

阿星AI工作室

产品 AI 大模型 AI教程 提示词

Windows 10 version 22H2 中文版、英文版下载 (2025 年 5 月更新)

sysin

Windows 10

Windows Server 2022 中文版、英文版下载 (2025 年 5 月更新)

sysin

Windows Server

【干货】手把手教你把Trae改造成你的专属AI写作助手

田威AI

AI AI工具 AI工具推荐

618购机选什么?七彩虹带来全能王者iGame M15 Origo和旗舰强者iGame M16 Origo

E科讯

NocoBase 本周更新汇总:优化及缺陷修复

NocoBase

开源 低代码 零代码 无代码 版本更新

BeeWorks:云盘存储与在线编辑,开启高效办公新时代

BeeWorks

即时通讯 IM 企业级应用

纯前端实现图片伪3D视差效果

vivo互联网技术

前端 WebGL pixi.js

Veeam Backup & Replication 13 之初见 - 基于 Linux 和 Web 控制台

sysin

veeam

im即时通讯软件BeeWorks:流程审批助力企业高效管理

BeeWorks

即时通讯 IM 私有化部署

华为云云应用引擎CAE,重塑企业AI Agent最佳运行态

华为云开发者联盟

华为云

Windows 11 23H2 中文版、英文版 (x64、ARM64) 下载 (2025 年 5 月更新)

sysin

windows 11

科学智能赋能空间科学研究(1):中国空间站空间科学实验的数据生态构建

ModelWhale

大模型 科学智能 AI4S 空间科学

二级域名怎么申请?二级域名申请费免费吗?

国科云

Cloudant发布了基于Java的CouchDB视图服务器_Java_Michael Hunger_InfoQ精选文章