博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Open Source Databases Comparison
阅读量:6367 次
发布时间:2019-06-23

本文共 3866 字,大约阅读时间需要 12 分钟。

The following table describes the comparison between several open source databases. The comparison will cover: HSQLDB, H2, PostgresSQL, MySQL, Derby in terms of their limitations and strength. This analysis could help to select database for our project.

 

 

PostgreSQL 8.2

MySQL 5.0

Apache Derby 10.3

HSQLDB 1.8

H2

OS support

First windows supported version, only support linux and windows, special compilation requires for other platforms

Supports Windows/Linux/Unix/Mac OSX

Any OS that can run Java

Any OS that can run Java

Any OS that can run Java

Documentation

Full pre and post installation documentations

Extensive pre and post installation documentations

Extensive pre and post installation documentations

Full pre and post installation documentations

Extensive pre and post installation documentations

License

BSD License - Free

Depends - GPL for open source or Commercial for commercial

Apache License v2 - Free

BSD License - Free

Modified MPL - Free

Maximum Database Size

Unlimited

Unlimited

Unlimited

Unlimited (depends on memory)

Unlimited (depends on memory)

Maximum Number of Tables

Unlimited

Unlimited

Unlimited

Unlimited (depends on memory)

Unlimited (depends on memory)

Maximum Table Size

32 TB

64 TB

Unlimited

8 GB

?

Maximum Row Size

1.6 TB

8 kB

Unlimited

Unlimited (depends on memory)

?

Maximum Field Size

1 GB

255 B

2 GB

Unlimited (depends on memory)

?

Maximum Rows per Table

Unlimited

Unlimited (Limited by tablespace of 64TB)

Unlimited

Unlimited (depends on memory)

Unlimited (depends on memory)

Maximum Columns per Table

250 - 1600 depending on column types

1000 columns

1012 columns

Unlimited (depends on memory)

Unlimited (depends on memory)

Maximum Indexes per Table

Unlimited

64 indexes

32767 indexes

Unlimited (depends on memory)

Unlimited (depends on memory)

Indexes

32 fields - B-Tree, R-Tree, GiST, and Hash

16 fields - B-Tree

16 fields

?

?

Interfaces

ODBC, JDBC, C, etc.

ODBC, JDBC, C, etc.

JDBC

JDBC

JDBC

Transactional

ACID-compliant

InnoDB type tables only - ACID-compliant

Yes

?

Yes

Bind Variables

Yes

Yes

Yes

?

?

Stored Procedures

Yes - SQL, PL/Tcl, PL/pgSQL

Yes

Yes

Yes

Yes

Trigger

Yes - SQL, PL/Tcl, PL/pgSQL

Yes

Yes

Yes

Yes

Row Level Locking

Yes

Yes

Yes

?

Yes

Timeout

Yes

No

Yes - deadlock detection and timeout

Yes

Yes

Error Code

Yes

Yes

Yes

Yes

Yes

Date Time

Broad range of date/time formats

Broad range of date/time formats

Broad range of date/time formats

Broad range of date/time formats

Broad range of date/time formats

Scalability/SMP

Each connection uses one CPU, but spread the processes of different connections across available CPUs

SMP is supported by using OS threads. All connections are executed in one thread, queries are not using multiple CPUs

Yes, embedded engine does all work in client threads

Multithread listener, but execute queries one at a time

Load Balancing

Select queries are distributed among the master and slave servers in random manner. Other queries are executed on master and replicated to slaves

MySQL clusters - handle transactions in a round robin manner

N/A

N/A

N/A

Replication

Slony1 replication solution, not core

Master-Slave replication and Chained replication

Master-Slave replication with manual fail-over

N/A

N/A

Online Backup

Write-ahead log and PostgreSQL point-in-time recovery, also Hot Standby System

Online Backup with Mysqldump, InnoDB Hot Backup (commercial add-on), MySQL Clusters commited log

Yes - Online backup utility

Yes - backup manually data files and redo logs

Yes - built-in tool

Cluster

PGCluster

in-memory, shared-nothing, replicatied to 4 replicas. If 1 node fails, currenct transaction fails even all other nodes survive

N/A

N/A

Yes?

Ease of Embedding in Java-based Application

Needs a lot of customizations

Can use MySQL Embedded

Almost no customization requires

Almost no customization requires

Almost no customization requires, and run as server after embedded

 

 

 

转载地址:http://wfrma.baihongyu.com/

你可能感兴趣的文章
西安火车站迎来“大手术”
查看>>
小米联手李嘉诚,长和将在全球17700家门店销售小米设备
查看>>
苹果将推出廉价版iPhoneX,售价直指5000区间,三星颤抖了么
查看>>
工业和信息化部:四个方面扩大升级信息消费
查看>>
春节期间我国出现大范围寒潮、雨雪冰冻天气的可能性较小
查看>>
华为小世界杯来了:从一棵树到一片森林的大赛
查看>>
[贝聊科技] iOS 终极横竖屏切换解决方案
查看>>
黑客真实生活复现 | 十部超赞黑客电影,周末肥宅生活必备!
查看>>
玩转 iOS 开发:NSURLSession 讲解 (一)
查看>>
我的iOS开发内容相关总结
查看>>
Event Loop的规范和实现
查看>>
『React Navigation 3x系列教程』之createStackNavigator开发指南
查看>>
头条系多闪:IM 战线上的另一块战场
查看>>
原生JS操作DOM
查看>>
手写实现一个 HashMap 实战
查看>>
Redis入门第九篇【主从复制】
查看>>
圣杯布局学习总结
查看>>
用 Go 语言理解 Tensorflow
查看>>
MSSQL注射知识库 v 1.0
查看>>
从零学React Native之08Image组件
查看>>