东亚银行、岚图汽车带你解锁 AIGC 时代的数字化人才培养各赛道新模式! 了解详情
写点什么

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

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

关注

评论

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

龙蜥社区第八次运营委员会会议顺利召开

OpenAnolis小助手

开源 生态 龙蜥社区 理事单位 运营委员会

我的编程学习经历

留乘船

学习

MASA Auth - 权限设计

MASA技术团队

C# .net 微软 权限

MQTT协议连接阿里云物联网服务器​

DS小龙哥

5月月更

【LeetCode】单值二叉树Java题解

Albert

LeetCode 5月月更

战码先锋直播预告丨参与文档贡献,开启OpenHarmony社区贡献之旅

OpenHarmony开发者

OpenHarmony OpenHarmony 3.1 Release 社区贡献

数字化时代,企业知识管理软件怎么选

小炮

企业知识管理

下载Spring4.1.x源码并用IntelliJ IDEA打开

程序员欣宸

Java 5月月更

使用 Amazon SageMaker 为新用户提供实时音乐推荐

亚马逊云科技 (Amazon Web Services)

Amazon 音乐 实时推送

Python写实用小工具-实现图片转字符画

okokabcd

Python

Amazon Kinesis Data Streams 实现跨账户应用日志收集

亚马逊云科技 (Amazon Web Services)

日志 Data

云原生平台 Kyma 上创建的 Lambda Function 的技术实现细节介绍

Jerry Wang

Kubernetes 云原生 SAP Kyma 5月月更

记一个 Harvester SNAT 案例

Rancher

Kubernetes k8s rancher Harvester

云原生技术应用情况报告重磅发布

行云创新

云计算 云原生 开发 报告 行业

读万卷书为何无用?

大数据梦想家

程序员 个人成长 读书感悟

浅析大模型在自然语言处理方面的应用

算AI

人工智能 机器学习 产品 算法 5月月更

融云漫话:没有一个人躲得过“视频会议”

融云 RongCloud

java开发培训任务调度框架Quartz的用法

@零度

JAVA开发

关于延期举办第六届世界智能大会的通知

InfoQ 天津

LabVIEW仪器控制:智能直流电源(科睿源KA3003)

不脱发的程序猿

串口通信 工业自动化 直流电源控制软件 LabVIEW仪器控制

LabVIEW仪器控制:智能显示屏(数码管显示屏)

不脱发的程序猿

串口通信 工业自动化 LabVIEW仪器控制 数码管显示屏软件 数码管显示屏

云原生技术新版图——无服务器(Serverless)数据库

亚马逊云科技 (Amazon Web Services)

数据库 Serverless 云原生

解放双手!推荐一款 GitHub 星标 8.2k+的命令行软件管理器,非常酷炫!

沉默王二

GitHub

Python爬虫网页元素定位术,就在这篇博客中

梦想橡皮擦

5月月更

OpenHarmony 3.1 Release版本关键特性解析——构建OpenHarmony窗口框架

OpenHarmony开发者

OpenHarmony OpenHarmony 3.1 Release 窗口框架

存储系统如何适配 Hadoop?

焱融科技

hadoop 存储 文件存储

大数据开发面试之26个Spark高频考点

大数据梦想家

大数据 spark 八股文

2022 携程提前批大数据一二(oc) 面经

大数据梦想家

大数据 面经分享

为何架构设计能力难以提升?- 作业

阿拉阿拉幽幽

过去一年对我帮助最大的三本书

大数据梦想家

个人成长 程序人生 读书总结

Android 子线程 UI 操作真的不可以?

vivo互联网技术

android 线程 UI

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