HBase vs. MongoDB vs. MySQL vs. Oracle vs. Redis,三大主流開源 NoSQL 資料庫的 PK 兩大主流傳統 SQL 資料庫

HBase vs. MongoDB vs. MySQL vs. Oracle vs. Redis,三大主流開源 NoSQL 資料庫的 PK 兩大主流傳統 SQL 資料庫

HBase vs. MongoDB vs. MySQL vs. Oracle vs. Redis,三大主流開源 NoSQL 資料庫的 PK 兩大主流傳統 SQL 資料庫



資料來源: https://www.itread01.com/content/1546511244.html



類別 HBase MongoDB MySQL Oracle Redis
描述 基於 Apache Hadoop 並提供 BigTable 能力的列儲存 最受歡迎的文件儲存資料庫之一 廣泛使用的開源 RDBMS 廣泛使用的 RDBMS 記憶體中的資料結構儲存,被用作資料庫,快取以及訊息中介軟體
普及度等級(參考下文的趨勢圖) 15 級(59.03 分) 4 級(300.57 分) 2 級(1277.75 分) 1 級(1463.37 分) 10 級(100.65 分)
資料庫模型 列儲存 文件儲存 關係資料庫系統 關係資料庫系統 鍵-值儲存
官網 hbase.apache.org www.mongodb.org www.mysql.com www.oracle.com/-us/-products/-database redis.io
技術文件 hbase.apache.org docs.mongodb.org/-manual dev.mysql.com/-doc www.oracle.com/-technetwork/-indexes/-documentation/-index.html redis.io/-documentation
開發者 Apache 軟體基金會 MongoDB 公司 Oracle Oracle Salvatore Sanfilippo(Redis 之父)
首次發行 2008 2009 1995 1980 2009
當前版本 1.1.0.1,2015 年 5 月 3.0.5,2015 年 7 月 5.6.26,2015 年 7 月 12 Release 1 (12.1.0.2),2014 年 7 月 3.0.3,2015 年 6 月
許可 開源 開源 開源 商業 開源
是否資料庫即服務(DBaaS)
實現語言 Java C++ C 和 C++ C 和 C++ C
伺服器作業系統 Linux
Unix
Windows
Linux
OS X
Solaris
Windows
FreeBSD
Linux
OS X
Solaris
Windows
AIX
HP-UX
Linux
OS X
Solaris
Windows
z/OS
BSD
Linux
OS X
Windows
是否結構化資料 自由 自由 自由
是否預定義資料型別 部分
是否支援 XML
是否支援二級索引
是否支援 SQL
API 以及其他訪問方式 Java API
RESTful HTTP API
Thrift
使用 JSON 的專用協議 ADO.NET
JDBC
ODBC
ODP.NET
Oracle Call Interface (OCI)
JDBC
ODBC
專用協議
支援的程式語言 C
C#
C++
Groovy
Java
PHP
Python
Scala
Actionscript 
C
C#
C++
Clojure 
ColdFusion 

Dart 
Delphi 
Erlang
Go 
Groovy 
Haskell
Java
JavaScript
Lisp 
Lua 
MatLab 
Perl
PHP
PowerShell 
Prolog 
Python

Ruby
Scala
Smalltalk
Ada
C
C#
C++
D
Eiffel
Erlang
Haskell
Java
Objective-C
OCaml
Perl
PHP
Python
Ruby
Scheme
Tcl
C
C#
C++
Clojure
Cobol
Eiffel
Erlang
Fortran
Groovy
Haskell
Java
JavaScript
Lisp
Objective C
OCaml
Perl
PHP
Python
R
Ruby
Scala
Tcl
Visual Basic
C
C#
C++
Clojure
Crystal
D
Dart
Elixir
Erlang
Fancy
Go
Haskell
Haxe
Java
JavaScript (Node.js)
Lisp
Lua
MatLab
Objective-C
OCaml 
Perl
PHP
Prolog
Pure Data
Python
R
Rebol
Ruby
Rust
Scala
Scheme
Smalltalk
Tcl
是否支援服務端指令碼 JavaScript PL/SQL Lua
是否支援觸發器
切分方式 分片 分片 水平切分,使用 MySQL Cluster 或者 MySQL Cluster 進行分片 水平切分 分片
主從複製方式 多種主從複製機制 主-從複製 主-主複製
主-從複製
主-主複製
主-從複製
主-從複製
是否支援 MapReduce
分散式場景下資料一致性方法 立即一致 最終一致
立即一致
立即一致 最終一致
是否支援外來鍵
是否支援事務 ACID ACID 樂觀鎖機制,原子性執行的命令塊和指令碼
是否支援併發
是否支援持久化儲存
是否支援記憶體儲存
訪問控制 訪問控制列表(ACL) 基於使用者和角色的訪問許可權 細粒度的使用者訪問許可權 根據 SQL 標準細粒度的訪問許可權 簡單的基於密碼的訪問控制

發表迴響

你的電子郵件位址並不會被公開。 必要欄位標記為 *