面向文档的数据库主要设计用来存储、获取以及管理基于文档的或者叫半结构化的数据。也属于 NoSQL 数据库的一种类别。数据存储的最小单位是文档,同一个表中存储的文档属性可以是不同的,数据可以使用 JSON、XML 等多种格式存储。
本文介绍 11 个开源的面向文档的数据库系统:
1. MongoDB
MongoDB 是一个介于关系数据库和非关系数据库之间的产品,是非关系数据库当中功能最丰富,最像关系数据库的。他支持的数据结构非常松散,是类似 json的bjson格式,因此可以存储比较复杂的数据类型。Mongo最大的特点是他支持的查询语言非常强大,其语法有点类似于面向对象的查询语言,几 乎可以实现类似关系数据库单表查询的绝大部分功能,而且还支持对数据建立索引。
2. CouchDB
Apache CouchDB 是一个面向文档的数据库管理系统。它提供以 JSON 作为数据格式的 REST 接口来对其进行操作,并可以通过视图来操纵文档的组织和呈现。 CouchDB 是 Apache 基金会的顶级开源项目。
3. Terrastore
Terrastore是一个基于Terracotta(一 个业界公认的、快速的分布式集群组件)实现的高性能分布式文档数据库。可以动态从运行中的集群添 加/删除节点,而且不需要停机和修改任何配置。支持通过http协议访问Terrastore。Terrastore提供了一个基于集合的键/值接口来管 理JSON文档并且不需要预先定义JSON文档的架构。易于操作,安装一个完整能够运行的集群只需几行命令。
4. RavenDB
RavenDB 是个新的.NET开源文档数据库。下面是一个简单的例子
5. OrientDB
Orient DB 是一个可伸缩的文档数据库,支持 ACID 事务处理。使用 Java 5 实现。
6. ThruDB
Thrudb是一套简单的服务建立在Apache的Thrift的框架,提供索引和文件存储服务的网站建设和推广。其目的是提供Web开发灵活,快速和易于使用的服务,可以加强或取代传统的数据存储和访问层。
7. SisoDB
SisoDb 是一个为 SQL Server 编写的面向文档的 db-provider ,使用 C# 编写,可让你直接在数据库中存储对象。
8. RaptorDB
RaptorDB 是一个很小的、快速的嵌入式 NoSQL 存储模块,使用 B+ 树 或者 MurMur 哈希索引。支持数据持久化到磁盘中存储。
9. CloudKit
CloudKit 提供了模型无关的,可自动版本化的 RESTful 的 JSON 存储,支持 OpenID 和 OAuth,包括 OAuth 发现。
10. Perservere
Persevere - REST JSON 数据库,JavaScript 的分布式计算和持久对象映射框架。
11. Jackrabbit
分享到:
相关推荐
GoCursusDB是一款基于Golang开发的开源分布式内存持久化数据库系统,专注于提供面向文档的数据存储服务,并且具备实时处理能力。这款数据库系统的设计理念是结合内存的高速度和硬盘的容量,以实现高性能、高可用性...
- **MongoDB**:面向文档的NoSQL数据库。 - **Greenplum**:基于MPP架构的大规模并行处理数据仓库。 #### 三、监控与日志管理 - **Nagios** 和 **Zabbix** 作为监控工具,能够帮助管理员实时监控系统的健康状态...
CouchDB 是一个开源的面向文档的数据库管理系统,可以通过 RESTful JavaScript Object Notation (JSON) API 访问。术语 “Couch” 是 “Cluster Of Unreliable Commodity Hardware” 的首字母缩写,它反映了 ...
MongoDB是一个流行的面向文档的NoSQL数据库管理系统,以下是对其的详细介绍: 一、基本概念与特点 面向文档的数据模型: MongoDB使用类似JSON的BSON(Binary JSON)格式来存储数据,这种文档格式具有灵活性,可以...
ToroDB 是一个开源的面向文档的 JSON 数据库,基于 PostgreSQL 运行。JSON 文档关系化存储,而非 blob/jsonb 方式,可显著提升存储和 IO,兼容 MongoDB。为什么选择 TORODB:ToroDB 利用关系数据库数十年的经验和...
HBASE概述:HBASE是一个分布式的、面向列的开源数据库,来源于Google Bigtable论文。它是一个适合于非结构化数据存储的数据库,基于列的而不是基于行的模式。HBASE不同于一般的关系数据库,适合于高读写(insert)的...
Seriesly 是一个用 Go 语言编写的面向文档的时间序列数据库,主要适合用来存储和查询时间序列数据,例如一些监控数据等等,与 RRDtool 不同的是,Seriesly 是没有模型的。 标签:Seriesly
总的来说,Grakn作为面向AI的数据库,通过其独特的知识图谱模型和强大的查询语言,为AI应用提供了一个高效的数据管理和分析平台。开源的特性使其成为开发者和研究者探索和创新的理想工具,进一步推动了AI技术的发展...
OpenMLDB是一个专注于机器学习领域的开源数据库,它的主要目标是为各类机器学习应用程序提供准确且高效的数据支持。作为一款专为机器学习设计的数据库,OpenMLDB具备一系列独特的特性和功能,使其在处理大规模机器...
这个资源集合是针对Java开源项目的中文文档,旨在帮助中国开发者更好地理解和使用各种流行的Java开源框架、库和工具。这些文档通常由社区贡献者翻译,提供了官方英文文档的对应中文版本,使得语言障碍不再是学习和...
总之,"数据库表结构说明文档自动生成工具"是一个强大的辅助工具,能够帮助开发者和数据库管理员节省大量时间,提升项目管理效率,确保数据库设计的清晰度和一致性。对于任何涉及多数据库系统管理和维护的团队来说,...
- **db4o**:db4o是一款专为Java、.NET和Mono平台设计的开源面向对象数据库系统。它提供了高效的数据存储和检索功能,支持多种数据类型,并且能够直接存储复杂的对象结构而无需进行序列化或反序列化的操作。 - **...
"OrientDB(基于Java的文档数据库) 图形版.zip"很可能包含一个图形用户界面(GUI)工具,这将帮助开发者更直观地管理数据库,包括创建、查看、修改和删除数据库记录,以及可视化图数据。这样的工具对于数据库管理员和...
《renren-fast开源开发文档3.0完整版(含源程序)》是一个全面介绍renren-fast项目的资源包,其中包含了该轻量级Spring Boot快速开发平台的详细文档和源代码。这个项目旨在提供一个高效、易用的开发基础,帮助开发者...
作为NoSQL数据库的一种,OrientDB将图形数据库和文档数据库的优势结合在一起,提供了丰富的数据模型,支持图、文档、键值对等多种数据类型。这款数据库引擎在处理复杂关系和大规模数据集时表现出色,广泛应用于社交...
C++开源连接数据库工具OTL(Oracle Template Library)是一个强大的、高效的C++数据库访问库,它使得C++程序员能够方便地与多种数据库进行交互,包括但不限于Oracle、MySQL、SQL Server等。OTL提供了面向对象的接口...
3. MySQL:MySQL是一个流行的开源关系型数据库管理系统(RDBMS),被广泛用于Web应用。此工具可能支持从MySQL数据库中提取结构信息并生成文档。 4. MS Server:尽管未明确指出,但“ms server”可能是指Microsoft ...
DBScript是一个专为简化数据库操作而设计的开源轻量级框架。它致力于提供高效、便捷的方式来映射数据库结构到程序代码中,使得开发者能够更加专注于业务逻辑,而非底层的SQL语句编写。作为一款轻量级框架,DBScript...