写点什么

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:573063
用户头像

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

关注

评论

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

网络攻防学习笔记 Day147

穿过生命散发芬芳

风险评估

linux之mktemp命令

入门小站

Linux

Intel高管披露Arc显卡合作厂商?官方否认

科技新消息

书单 | 带你轻松度假的10本好书!

博文视点Broadview

Linux用户/用户组编辑

在即

9月日更

Intel要跟华硕等OEM品牌推出DG2显卡?官方:消息不属实

科技新消息

ECS 选款利器!PTS助您快速上云!

阿里巴巴云原生

活动 ECS TPS

在线Emoji符号大全

入门小站

工具

一文教你如何落地spring cloud alibaba企业级架构

小鲍侃java

后端 引航计划

学习心得 - 架构训练营 - 第四课

Fm

架构实战营 - 模块四作业

Alex.Wu

Chrome浏览器控制台支持中文

FunTester

chrome 浏览器 控制台 FunTester 中文

如何实现一款毫秒级实时数据分析引擎

Shopee技术团队

大数据 数据分析 后端 HBase

考试系统高并发试卷存储设计方案

Imaginary

【墨天轮专访第五期】偶数科技常雷:创新改变世界,深耕云数据仓库

墨天轮

数据库 国产数据库

报名领奖|云栖大会,10月19-22日杭州不见不散!

阿里巴巴云原生

阿里巴巴 阿里云 云原生 云栖大会

Spark 系列教程(1)Word Count

Se7en

我写了一个脚本,可在“任意”服务器上执行命令!

冰河

Java 后台开发 运维 研发效能 系统架构

前端性能优化实战(二)

Augus

JavaScript 9月日更

华为云开天aPaaS 上线,服务千万开发者,使能行业场景化创新

华为云开发者联盟

华为云 企业应用 开天aPaaS aPaaS 华为云生态

Python代码阅读(第28篇):计算列表中位数

Felix

Python 编程 Code Programing 阅读代码

Morphling:云原生部署 AI , 如何把降本做到极致?

阿里巴巴云原生

阿里云 AI 云原生 Morphling

缓存的弊端,你了解吗

卢卡多多

缓存 9月日更

Go 中五个常见错误

baiyutang

golang 9月日更

从敏捷开发到全自动开发,加速实现企业数字化转型

飞算JavaAI开发助手

送你一个Python 数据排序的好方法

华为云开发者联盟

Python 数据分析 数据排序

基于OpenCV+QT开发超实用的视频编辑器

轻口味

OpenCV 音视频 引航计划 9月日更

25. 自动驾驶:AI最大的应用场景

Databri_AI

人工智能

Prometheus 2.27.0 新特性

耳东@Erdong

release Prometheus 9月日更

Flutter 对状态管理的认知与思考

小呆呆666

flutter ios android 大前端 dart

Java变异出现错误:No enclosing instance of type XXX is accessible

华为云开发者联盟

Java

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