① 開源資料庫有哪些
MSSQL伺服器、MySQL、Oracle、PostgreSQL、MongoDB等等。眾所周知,其中MySQL是目前使用最廣泛最好的免費開源資料庫,此外,還有一些你不知道或者沒用過但又非常出色的開源資料庫,例如PostgreSQL、MongoDB、HBase、Cassandra、Couchbase、Neo4j、Riak、Redis、Firebird等。
② MySQL是免費的嗎
在當今世界是很受歡迎的開源資料庫,有人說MySQL是完全免費軟體,這種說法對不對啊,接下來將為大家解開這個謎團。 MySQL是世界上最受歡迎的開源資料庫。MySQL在中國也越來越受歡迎並被廣泛關注。但是中國部分用戶對於MySQL認識還存在一個誤區,當提起MySQL時,許多用戶第一反應是:「MySQL不是完全免費的軟體嗎?」。然而,通過仔細研讀MySQL所遵循的GPLv2協議,得到的結論是:MySQL是開源軟體,但開源並不意味著完全免費,開源的優勢可以使更多的人對代碼改進和完善,但開源軟體的使用應遵循該軟體提供的使用授權協議。 Oracle/Sun公司以雙重許可的方式提供 MySQL資料庫伺服器和 MySQL客戶端庫,旨在滿足開發和分銷需求的商業分銷商(例如 OEMs,ISVs和 VARs)和開源項目兩種需求。 對於OEMs,ISVs,VARs 和其他商業應用分銷商: OEMs,ISVs,VARs 和其他分銷商如果在分銷的商業授權軟體中結合了MySQL 資料庫,且不願意遵循GNU GPL V2 協議公開商業授權軟體源碼的,必須和Oracle/Sun 公司達成商業許可協議。 對於開源項目和其他開放源碼的應用開發人員:對於遵循GPL 協議的自由開放源碼軟體(「FOSS」)開發者,想要分發這些包含MySQL 的FOSS 應用,Oracle/Sun 的MySQL GPL 開源軟體許可將是最好的選擇。對於遵循FOSS 協議而不是GPL 協議的軟體開發者和分銷商,Oracle/Sun公司提供一個GPL許可的MySQL客戶端庫,其中對FOSS做了例外處理,使其在特定情況下,使用這些MySQL 客戶端庫而不會使整個衍生軟體必須遵循GPL 協議。 簡而言之,如果您開發的應用軟體用到MySQL,不用於銷售盈利,您可以免費使MySQL,但您同時也必須開放您的源代碼。反之您是用於銷售,您應該支付License費用。 MySQL是開源自由軟體,當我們在談論自由軟體時,我們所指的是自由,而不是價格。開源自由軟體不同於一般意義上的免費軟體,很多商業軟體企業在激烈市場競爭下,也紛紛推出了免費版本如微軟的SQL Server免費版本。 MySQL創始人之一David Axmark針對該現象這樣指責道:「不要相信它們所謂的開源。開源和免費不是一個概念,開源最大的意義在於最底層源代碼都是完全開放的,所有的用戶都可以來看,都可以來尋找bug,然後加以修改。免費軟體做到了成本的降低,但永遠不可能通過這樣的方式提高質量,這就是我們和它們的區別。」 開源和商業並不矛盾,一方面,通過開源版本使MySQL資料庫擁有大量用戶,產品質量得到不斷的改進和發展;另一方面,開源使商業目的的用戶的前期研發投入為零,MySQL資料庫通過商業版的許可銷售和支持服務則可以獲得收入。這在某種程度上,可以成功解決開源軟體如何盈利的問題,促進開源軟體產品更長遠發展。 伴隨著開源軟體在中國的發展,諸多相關討論提及法律問題,越來越多的討論甚至爭論轉向法律層面。
③ PostgreSQL開源免費企業級資料庫用著比較爽的地方有哪些
1),PostgreSQL是通用型資料庫。
PG有著豐富的數據類型(數值、字元、時間、布爾、貨幣、枚舉、網路地址、JSONB等等)和索引類型( B-tree、Hash、GiST、SP-GiST 、GIN 和 BRIN等 )。可以存儲和計算大多數場景的業務數據,如 ERP、交易系統、財務系統涉及資金、客戶等信息,數據不能丟失且業務邏輯復雜,選擇 PostgreSQL 作為數據底層存儲,一是可以幫助您在數據一致性前提下提供高可用性,二是可以用簡單的編程實現復雜的業務邏輯 。適合各種OLTP和部分OLAP場景。
2),PostgreSQL資料庫包含許多第三方插件。
如PostGIS等可以直接在資料庫里進行地理位置相關的gis類存儲和運算(LBS地理位置相關業務等O2O場景),其他的插件如Pg_stat_statements、uuid-ossp、pg_trgm、btree-gist插件、 pgcrypto加密等插件 。
3),中小型企業快速搭建 數據倉庫和數據分析平台(TB級別)
PostgreSQL 提供豐富的數據類型和強大的計算能力,能夠幫助您更簡單搭建資料庫倉庫或大數據分析平台,為企業運營加分。
4),冷熱分離
針對流水類的大表,PG可以使用分區表,線上保留熱數據, 歷史 數據存放在分區表裡或者OSS等冷數據平台,冷熱分離。
5),公有雲支持度高如阿里雲、騰訊雲、華為雲等公有雲都有對應的RDS-PG產品,開箱即用,並提供技術支持。
OLTP:事務處理是PostgreSQL的本行
OLAP:ANSI SQL兼容,窗口函數,CTE,CUBE等高級分析功能,任意語言寫UDF,citus分布式插件
流處理:PipelineDB擴展,Notify-Listen,物化視圖,規則系統,靈活的存儲過程與函數編寫
時序數據:timescaledb時序資料庫插件,分區表,BRIN索引
空間數據:PostGIS擴展(殺手鐧),內建的幾何類型支持,GiST索引。
搜索索引:全文搜索索引足以應對簡單場景;豐富的索引類型,支持函數索引,條件索引
NoSQL:JSON,JSONB,XML,HStore原生支持,至NoSQL資料庫的外部數據包裝器
數據倉庫:能平滑遷移至同屬Pg生態的GreenPlum,DeepGreen,HAWK等,使用FDW進行ETL
④ 四大開源資料庫是哪些
如果打算為項目選擇一款免費、開源的資料庫,那麼你可能會在MySQL與PostgreSQL之間猶豫不定。MySQL與PostgreSQL都是免
費、開源、強大、且功能豐富的資料庫。你主要的問題可能是:哪一個才是最好的開源資料庫,MySQL還是PostgreSQL呢?該選擇哪一個開源資料庫
呢?
在選擇資料庫時,你所做的是個長期的決策,因為後面如果再改變決定將是非常困難且代價高昂的。你希望一開始就選擇正確。兩個流行
的開源資料庫MySQL與PostgreSQL常常成為最後要選擇的產品。對這兩個開源資料庫的高層次概覽將會有助於你選擇最適合自己需要的。
MySQL
MySQL相對來說比較年輕,首度出現在1994年。它聲稱自己是最流行的開源資料庫。MySQL就是LAMP(用於Web開發的軟體包,包括
Linux、Apache及Perl/PHP/Python)中的M。構建在LAMP棧之上的大多數應用都會使用MySQL,包括那些知名的應用,如
WordPress、Drupal、Zend及phpBB等。
一開始,MySQL的設計目標是成為一個快速的Web伺服器後端,使用
快速的索引序列訪問方法(ISAM),不支持ACID。經過早期快速的發展之後,MySQL開始支持更多的存儲引擎,並通過InnoDB引擎實現了
ACID。MySQL還支持其他存儲引擎,提供了臨時表的功能(使用MEMORY存儲引擎),通過MyISAM引擎實現了高速讀的資料庫,此外還有其他的
核心存儲引擎與第三方引擎。
MySQL的文檔非常豐富,有很多質量不錯的免費參考手冊、圖書與在線文檔,還有來自於Oracle和第三方廠商的培訓與支持。
MySQL近幾年經歷了所有權的變更和一些頗具戲劇性的事件。它最初是由MySQL
AB開發的,然後在2008年以10億美金的價格賣給了Sun公司,Sun公司又在2010年被Oracle收購。Oracle支持MySQL的多個版
本:Standard、閉爛大Enterprise、Classic、Cluster、Embedded與Community。其中有一些是免費下載的,另外一
些則是收費的。其核心代碼基於GPL許可,對於那些不想使用GPL許可的開發者與廠商來說還有商業許可可供使用。
現在,基於最初的
MySQL代碼還有更多的資料庫可供選擇,因為幾個核心的MySQL開發者已經發布了MySQL分支。最初的MySQL創建者之一Michael
"Monty"
Widenius貌似後悔將MySQL賣給了Sun公司,於是又開發了他自己的MySQL分支MariaDB,它是免費的,基於GPL許可。知名的
MySQL開發者BrianAker所創建的分支Drizzle對其進行了大量的改寫,特別針對多CPU、雲、網路應用與高並發進行了優化。
PostgreSQL
PostgreSQL標榜自己是世界上最先進的開源資料庫。PostgreSQL的一些粉絲說它能與Oracle相媲美,而且沒有那麼昂貴的價格和傲慢的客服。它擁有很長的歷史,最初是1985年在加利福尼亞大學伯克利分校開發的,作為Ingres資料庫的後繼。
PostgreSQL是完全由社區驅動的開源項目,由全世界超過1000名貢獻者所維護。它提供了單個完整功能的版本,而不像MySQL那樣提供了多個
不同的社區版、商業版與企業版。PostgreSQL基於自由的BSD/MIT許可,組織可以使用、復制、修改和重新分發代碼,只需要提供一個版權聲明即
可。
可靠性是PostgreSQL的最高優先順序。它以堅如磐石的品質和良好的工程化而聞名,支持高事務、任務關鍵型應用。
PostgreSQL的文檔非常精良,提供了大量免費的在線手冊,還針對舊版本提供了歸檔的參考手冊。PostgreSQL的社區支持是非常棒的,還有來
自於獨立廠商轎豎的商業支持。
數據一致性與完整性也是PostgreSQL的高優先順序特性。PostgreSQL是完全支持ACID特性
的,它對於資料庫訪問提供了強大的安全性保證,充分利用了企業安全工具歷搭,如Kerberos與OpenSSL等。你可以定義自己的檢查,根據自己的業務規
則確保數據質量。在眾多的管理特性中,point-in-time
recovery(PITR)是非常棒的特性,這是個靈活的高可用特性,提供了諸如針對失敗恢復創建熱備份以及快照與恢復的能力。但這並不是
PostgreSQL的全部,項目還提供了幾個方法來管理PostgreSQL以實現高可用、負載均衡與復制等,這樣你就可以使用適合自己特定需求的功能
了。
⑤ 開源資料庫有哪些
MongoDB——是一個基於分布式文件存儲的資料庫,由C++語言編寫,其目的是為WEB應用提供可擴展的高性能數據存儲解決方案,最大的特點在於它支持的查詢語言非常強大,局域高性能、易部署、存儲數據方便、模式自由等特點。
Cassandra——是一套開源分布式NoSQL資料庫系統。它最初由Facebook開發,用於儲存收件箱等簡單格式數據,具有模式靈活、多數據中心識別,可擴展性強等特點 。
Hadoop HBASE——採用了Google BigTable的稀疏的,面向列的資料庫實現方式的理論,建立在hadoop的hdfs上。
Couchbase——是一個集群化的、基於文檔的資料庫系統,它使用一個緩存層來提供非常快的數據訪問,將大部分數據都存儲在 RAM 中。
Neo4j——是面向網路的資料庫。也就是一個嵌入式的、基於磁碟的、具備完全的事務特性的Java持久化引擎,但它將結構化數據存儲在網路上而不是在表中。