Cassandra 和 PostgreSQL 的区别
1. Cassandra:
Cassandra 是一个免费、开源、分布式、宽列存储、NoSQL 数据库管理系统。它由 Apache Software 基金会开发,最初于 2008 年 7 月发布。Cassandra 旨在处理跨许多商品服务器的大量数据,提供高可用性而没有单点故障。
2. PostgreSQL:
PostgreSQL 是一个功能强大的开源对象关系数据库系统。由于其高稳定性,它提供了良好的性能和低维护工作量。PostgreSQL 是第一个实现多版本并发控制 (MVCC) 功能的 DBMS。
Cassandra 和 PostgreSQL 的区别:
编号 | Cassandra | PostgreSQL |
---|---|---|
1 | 由 Apache Software 基金会开发,于 2008 年 7 月发布。 | 由 PostgreSQL Global Development Group 于 1989 年开发。 |
2 | 基于BigTable和DynamoDB思想的宽列存储。 | PostgreSQL是广泛使用的开源 RDBMS。 |
3 | Cassandra 是用 Java 语言编写的。 | PostgreSQL 是用 C 语言编写的。 |
4 | Cassandra 的主要数据库模型是宽列存储。 | PostgreSQL 的主要数据库模型是关系 DBMS。 |
5 | Cassandra没有辅助数据库模型。 | PostgreSQL具有文档存储作为辅助数据库模型。 |
6 | Cassandra 的服务器操作系统有 BSD、Linux、OS X 和 Windows。 | PostgreSQL 的服务器操作系统有 FreeBSD、HP-UX、Linux、NetBSD、OpenBSD、OS X、Solaris、Unix 和 Windows。 |
7 | Cassandra不支持XML格式。 | PostgreSQL支持 XML 格式。 |
8 | Cassandra支持二级索引,但以一种受限制的方式,即仅相等查询,并不总是性能最佳的解决方案。 | PostgreSQL支持二级索引。 |
9 | Cassandra不支持服务器端脚本。 | PostgreSQL具有用于服务器端脚本的用户定义函数。 |
10 | Cassandra支持可选择的复制因子方式。 | PostgreSQL支持Master-master复制方式。 |
11 | 在Cassandra中,分区可以做Sharding。 | 在 PostgreSQL 中,分区可以通过范围、列表和哈希来完成。 |
12 | Cassandra为用户定义的 Map/Reduce 方法提供了一个 API。 | PostgreSQL不为用户定义的 Map/Reduce 方法提供 API。 |
13 | Cassandra 不提供参照完整性的概念。因此,没有外键。 | PostgreSQL 提供了参照完整性的概念并具有外键。 |