HarmonyOS开发者限时福利来啦!最高10w+现金激励等你拿~ 了解详情
写点什么

Apache CouchDB 1.0 破茧而出

  • 2010-07-16
  • 本文字数:984 字

    阅读完需:约 3 分钟

Apache CouchDB 是个免费、开源、面向文档的数据库,使用 Erlang 语言编写,可以使用 JavaScript 以 MapReduce 的风格查询、索引 CouchDB。CouchDB 是个 NoSQL 解决方案,用于 local replication 并且可以垂直扩展到多种设备上。在经过多个月的开发后,近日 Apache CouchDB 1.0 终于破茧而出了。

CouchDB 提供了一个 RESTful JSON API,支持 HTTP 请求的环境都可以访问。有很多用各种编程语言编写的第三方客户端程序库简化了对 CouchDB 的访问。可以通过 HTTP 请求使用 CouchDB 内置的 Web 管理控制台直接与数据库交互。

CouchDB 使用 Erlang 语言编写,Erlang 是一种健壮的函数式编程语言,非常适合于构建并发的分布式系统。Erlang 的设计非常灵活,其可伸缩性与可扩展性都非常棒。

下图展示了 CouchDB 的整体架构

image

CouchDB 的赞助者是 Couchio 公司,其创建者兼 CFO Chris Anderson 说到

  • CouchDB 两个主要的增强使得 1.0 版实至名归。其一是软件性能得到了极大的提升;其二是 CouchDB 现在可以用在 Windows 上了。我们还付出了艰辛的努力,保证软件的稳定性。
  • Couchio 内部的性能基准测试表明,新版本 CouchDB 的读写速度要比之前的版本提升了 300%,这种性能上的改进主要是通过代码优化实现的。
  • 这也是首个能在 Windows 上运行的 CouchDB 版本,无论是服务器还是桌面系统都可以。此前的版本可以运行在 Linux 上,此外我们还在开发一个能够运行在 Google Android 智能手机操作系统上的版本。

作为 Apache 软件基金会顶级项目的 CouchDB 是个非关系型数据库,使用简单的键——值对的形式来存储数据。数据是使用 JSON 存储的,可以通过 HTTP 请求查询。

Anderson 说:“可以通过 CouchDB 来构建 Web 应用而无需中间层。与以前那种数据库、Java 栈和浏览器的方式不同,现在只需要 HTTP 与浏览器足矣”。

Web 应用开发者可能会觉得这项技术很有趣,因为它考虑到了数据的离线存储,这对于并非总是联网的设备上的 Web 应用设计来说极具价值。对于开发者来说,CouchDB 要比关系数据库还易于使用,因为它无需编写 SQL 查询语句了。

CouchDB 1.0 提供了如下新特性与改进:

  • 速度:对大文档的写速度提升了 300%
  • 支持 Windows
  • 认证系统:无需创建用户模型就可以编写 CouchDB 应用了

感兴趣的读者可以阅读 CouchDB 的说明技术概览文档以深入了解背后的设计与基本概念,还可以从 Subversion 仓库中下载最新的 CouchDB 代码,里面有构建指南供参考。

2010-07-16 04:573005
用户头像

发布了 88 篇内容, 共 262.4 次阅读, 收获喜欢 8 次。

关注

评论

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

【漏洞介绍】驱动文件Microsoft32k.sys中的漏洞分析

网络安全学海

网络安全 安全 信息安全 渗透测试 漏洞挖掘

jmeter 扩展自定义java 插件

kcnf

【分布式技术专题】「架构实践于案例分析」总结和盘点目前常用分布式技术特别及问题分析

洛神灬殇

分布式 微服务 10月月更 微服务化

游族网络xStarRocks:高效助力数据查询,灵活应对多维分析

StarRocks

数据库

Vue复刻华为官网 (一)

游坦之

10月月更

数据库&基本SQL语法

w010w

数据库 sql 10月月更

【资损】系统迭代过程中的兼容性设计

小明Java问道之路

Java 架构 安全 10月月更 资损

软件架构 & 研发效率

agnostic

研发效能

【JavaWeb】过滤器和监听器,就这?

游坦之

10月月更

【资损】发布环境中的兼容性控制设计

小明Java问道之路

Java 架构 安全 10月月更 资损

SQL注入

w010w

网络安全 WEB安全 SQL注入 10月月更

JVM是什么?Java程序为啥需要运行在JVM中?

wljslmz

Java JVM 虚拟机 10月月更

String源码分析(三)

知识浅谈

string 10月月更

StarRocks极客营 | 90天,17名新晋贡献者,SQL Planner 实战回顾

StarRocks

数据库

Storm概念与架构

穿过生命散发芬芳

Storm 10月月更

Java | DateFormat和SimpleDateFormat类

陌上

Java 编程 10月月更

记一次网络安全应急响应流程

网络安全学海

黑客 网络安全 信息安全 渗透测试 WEB安全

Java | Date类

陌上

Java 编程 10月月更

【web 开发基础】PHP 自定义函数之函数声明 -PHP 快速入门 (24)

迷彩

函数 10月月更 web开发基础 PHP基础 函数的定义

达梦数据库主备安装部署

For

Vue实现日期选择器

游坦之

10月月更

统计匹配检索规则的物品数量

掘金安东尼

算法 10月月更

【一Go到底】第二十九天---切片入门

指剑

Go golang 10月月更

Vue复刻华为官网 (二)

游坦之

10月月更

整合Mybatis、Servlet、Mysql、Axios、Filter、Session写一个入门级项目:非常适合初接触JavaWeb的小白白来进阶

游坦之

10月月更

【JavaWeb】一篇承载Ajax、Axios、Json的学习笔记~

游坦之

10月月更

3分钟了解CDN的工作原理

阿泽🧸

CDN 10月月更

2022-10-29:go语言中的defer能非常方便地处理资源释放问题,rust语言里如何实现defer功能呢?

福大大架构师每日一题

rust defer 福大大 RAII

程序的地址分配

计算机基础

从AI生成视频看人工智能未来发展趋势​

felix

人工智能 AI 图片生成

Java | StringBuilder类/StringBuffer类

陌上

Java 编程 10月月更

Apache CouchDB 1.0破茧而出_Java_张龙_InfoQ精选文章