主流的資料庫系統
『壹』 當前主流的資料庫系統通常採用哪幾種模型
目前最主流的sql server、oracle、mysql、db2都是關系型資料庫。隨著社交網站、視頻網站等互聯網新業務模式的興起,各種非關系資料庫模型也在不斷涌現。
以下是的:
數據模型概述
1.關系模型
關系模型使用記錄(由元組組成)進行存儲,記錄存儲在表中,表由架構界定。表中的每個列都有名稱和類型,表中的所有記錄都要符合表的定義。SQL是專門的查詢語言,提供相應的語法查找符合條件的記錄,如表聯接(Join)。表聯接可以基於表之間的關系在多表之間查詢記錄。
表中的記錄可以被創建和刪除,記錄中的欄位也可以單獨更新。
關系模型資料庫通常提供事務處理機制,這為涉及多條記錄的自動化處理提供了解決方案。
對不同的編程語言而言,表可以被看成數組、記錄列表或者結構。表可以使用B樹和哈希表進行索引,以應對高性能訪問。
2.鍵值存儲
鍵值存儲提供了基於鍵對值的訪問方式。
鍵值對可以被創建或刪除,與鍵相關聯的值可以被更新。
鍵值存儲一般不提供事務處理機制。
對不同的編程語言而言,鍵值存儲類似於哈希表。對此,不同的編程語言有不同的名字(如,Java稱之為「HashMap」,Perl稱之為「hash」,Python稱之為「dict」,PHP稱之為「associative array」),C++則稱之為「boost::unordered_map<...>」。
鍵值存儲支持鍵上自有的隱式索引。
鍵值存儲看起來好像不太有用,但卻可以在「值」上存儲大量信息。「值」可以是一個XML文檔,一個JSON對象,或者其它任何序列化形式。
重要的是,鍵值存儲引擎並不在意「值」的內部結構,它依賴客戶端對「值」進行解釋和管理。
3.文檔存儲
文檔存儲支持對結構化數據的訪問,不同於關系模型的是,文檔存儲沒有強制的架構。
事實上,文檔存儲以封包鍵值對的方式進行存儲。在這種情況下,應用對要檢索的封包採取一些約定,或者利用存儲引擎的能力將不同的文檔劃分成不同的集合,以管理數據。
與關系模型不同的是,文檔存儲模型支持嵌套結構。例如,文檔存儲模型支持XML和JSON文檔,欄位的「值」又可以嵌套存儲其它文檔。文檔存儲模型也支持數組和列值鍵。
與鍵值存儲不同的是,文檔存儲關心文檔的內部結構。這使得存儲引擎可以直接支持二級索引,從而允許對任意欄位進行高效查詢。支持文檔嵌套存儲的能力,使得查詢語言具有搜索嵌套對象的能力,XQuery就是一個例子。MongoDB通過支持在查詢中指定JSON欄位路徑實現類似的功能。
4.列式存儲
如果翻轉數據,列式存儲與關系存儲將會非常相似。與關系模型存儲記錄不同,列式存儲以流的方式在列中存儲所有的數據。對於任何記錄,索引都可以快速地獲取列上的數據。
Map-rece的實現Hadoop的流數據處理效率非常高,列式存儲的優點體現的淋漓極致。因此,HBase和Hypertable通常作為非關系型數據倉庫,為Map-rece進行數據分析提供支持。
關系類型的列標對數據分析效果不好,因此,用戶經常將更復雜的數據存儲在列式資料庫中。這直接體現在Cassandra中,它引入的「column family」可以被認為是一個「super-column」。
列式存儲支持行檢索,但這需要從每個列獲取匹配的列值,並重新組成行。
5.圖形資料庫
圖形資料庫存儲頂點和邊的信息,有的支持添加註釋。
圖形資料庫可用於對事物建模,如社交圖譜、真實世界的各種對象。IMDB(Internet Movie Database)站點的內容就組成了一幅復雜的圖像,演員與電影彼此交織在一起。
圖形資料庫的查詢語言一般用於查找圖形中斷點的路徑,或端點之間路徑的屬性。Neo4j是一個典型的圖形資料庫。
選擇哪一種數據模型?
數據模型有著各自的優缺點,它們適用於不同的領域。不管是選擇關系模型,還是非關系模型,都要根據實際應用的場景做出選擇。也許你會發現單一的數據模型不能滿足你的解決方案,許多大型應用可能需要集成多種數據模型。
『貳』 現在有幾種流行的資料庫管理系統
目前常用的資料庫管理系統有:ACCESS、SQL Server、 Oracle、MySQL、FoxPro和Sybase等。 ACCESS 是美國Microsoft公司於1994年推出的微機資料庫管理系統.它具有界面友好、易學易用、開發簡單、介面靈活等特點,是典型的新一代桌面資料庫管理系統。...
『叄』 幾大主流資料庫對比
oracle,安全性比較高,性能穩定,但是價格相對來說較其他要貴,一般用來做安全性比較高的企業資料庫,如銀行,電信系統等
ms-sql,中文操作界面,安全性不如oracle,是一個免費的資料庫,所以服務肯定是不如oracle的,ms-sql適合做廠礦企業的資料庫,初學者比較容易上手
db2是IBM的資料庫,沒太用過,也就知道這些了
『肆』 什麼資料庫比較熱門
總體來說,主流資料庫並不存在明確的好壞之分,每一種資料庫都有各自的優缺點,最主要還是看它是否能夠滿足您的需求。
總的來說,選擇資料庫可以從以下角度考慮:
從個人角度出發的話,如果是以學習和小型業務需求為主,推薦使用MySQL,它的優勢在於:
成本(免費)
自由(完全開源,適用多個場景)
性能(體積小但速度快)
這三點決定了MySQL資料庫的超高性價比。並且目前有不少主流公司仍然青睞MySQL,大名鼎鼎的Fackbook就依然在延續MySQL的使用。
2. 如果是企業角度出發,主流的大型資料庫如Oracle、Sql Server...以及近些年來大數據領域十分火熱的非關系型資料庫,例如Redis、HBse等等,都可以作為考慮的對象。
接下來具體列舉一些常用資料庫的優缺點,希望能為大家提供參考:
MySQL:
優勢:
MySQL是開放源代碼的資料庫,任何人都可以獲得該資料庫的源代碼。
MySQL能夠實現跨平台操作,可以在Windows、UNIX、Linux和Mac OS等操作系統上運行。
MySQL資料庫是一款自由軟體,大部分應用場景下都是免費使用。
MySQL功能強大且使用方便,社區生態繁榮,有諸多學習資料。
缺點:規模小,功能有限。
SQL Server
高度可擴展:可以從單一的筆記本電腦上運行任何東西或以高倍雲伺服器網路運行,或在兩者之間任何東西。
「雖然說是「任何東西」,但是仍然要滿足相關的軟體和硬體的要求「
生態鏈廣:具有內置的商務智能工具,以及一系列的分析和報告工具,可以創建資料庫、備份、復制,帶來了更好的安全性。
Oracle
Oracle資料庫系統是目前世界上流行的關系資料庫管理系統,具有以下特點:
可移植性好(在各類大、中、小、微機環境中都適用)
使用方便、
功能強
因此,Oracle是一種高效率、可靠性好的、適應高吞吐量的資料庫解決方案。
DB2
DB2是IBM開發的一種大型關系型資料庫平台。它支持多用戶或應用程序在同一條SQL 語句中查詢不同database甚至不同DBMS中的數據。它的應用特點如下:
支持面向對象的編程:db2支持復雜的數據結構,如無結構文本對象,可以對無結構文本對象進行布爾匹配、最接近匹配和任意匹配等搜索。可以建立用戶數據類型和用戶自定義函數。
支持多媒體應用程序:db2支持大二分對象(blob),允許在資料庫中存取二進制大對象和文本大對象。其中,二進制大對象可以用來存儲多媒體對象。
具有良好的備份和恢復能力
支持存儲過程和觸發器,用戶可以在建表時顯示的定義復雜的完整性規則
支持異構分布式資料庫訪問,支持數據復制
PostgreSQL
PostgreSQL 是一個免費的對象-關系資料庫伺服器(ORDBMS),它的 Slogan 是 「世界上最先進的開源關系型資料庫」。
PostgreSQL具有如下特徵:
函數:通過函數,可以在資料庫伺服器端執行指令程序。
索引:用戶可以自定義索引方法,或使用內置的 B 樹,哈希表與 GiST 索引。
觸發器:觸發器是由SQL語句查詢所觸發的事件。如:一個INSERT語句可能觸發一個檢查數據完整性的觸發器。觸發器通常由INSERT或UPDATE語句觸發。 多版本並發控制:PostgreSQL使用多版本並發控制(MVCC,Multiversion concurrency control)系統進行並發控制,該系統向每個用戶提供了一個資料庫的」快照」,用戶在事務內所作的每個修改,對於其他的用戶都不可見,直到該事務成功提交。
規則:規則(RULE)允許一個查詢能被重寫,通常用來實現對視圖(VIEW)的操作,如插入(INSERT)、更新(UPDATE)、刪除(DELETE)。
數據類型:包括文本、任意精度的數值數組、JSON 數據、枚舉類型、XML 數據等。
全文檢索:通過 Tsearch2 或 OpenFTS,8.3版本中內嵌 Tsearch2。
NoSQL:JSON,JSONB,XML,HStore 原生支持,至 NoSQL 資料庫的外部數據包裝器。
數據倉庫:能平滑遷移至同屬 PostgreSQL 生態的 GreenPlum,DeepGreen,HAWK 等,使用 FDW 進行 ETL
『伍』 比較常見的資料庫系統都有哪些請至少列舉4個以上。
Mysql, Oracle, SQL Server, Access, DB2
一、開放性
1. SQL Server
只能在windows上運行,沒有絲毫的開放性,操作系統的系統的穩定對資料庫是十分重要的。Windows9X系列產品是偏重於桌面應用,NT server只適合中小型企業。而且windows平台的可靠性,安全性和伸縮性是非常有限的。它不象unix那樣久經考驗,尤其是在處理大資料庫。
2. Oracle
能在所有主流平台上運行(包括 windows)。完全支持所有的工業標准。採用完全開放策略。可以使客戶選擇最適合的解決方案。對開發商全力支持。
3. Sybase ASE
能在所有主流平台上運行(包括 windows)。 但由於早期Sybase與OS集成度不高,因此VERSION11.9.2以下版本需要較多OS和DB級補丁。在多平台的混合環境中,會有一定問題。
4. DB2
能在所有主流平台上運行(包括windows)。最適於海量數據。DB2在企業級的應用最為廣泛,在全球的500家最大的企業中,幾乎85%以上用DB2資料庫伺服器,而國內到97年約佔5%。
二、可伸縮性,並行性
1. SQL server
並行實施和共存模型並不成熟,很難處理日益增多的用戶數和數據卷,伸縮性有限。
2. Oracle
並行伺服器通過使一組結點共享同一簇中的工作來擴展windownt的能力,提供高可用性和高伸縮性的簇的解決方案。如果windowsNT不能滿足需要,用戶可以把資料庫移到UNIX中。Oracle的並行伺服器對各種UNIX平台的集群機制都有著相當高的集成度。
3. Sybase ASE
雖然有DB SWITCH來支持其並行伺服器,但DB SWITCH在技術層面還未成熟,且只支持版本12.5以上的ASE SERVER。DB SWITCH技術需要一台伺服器充當SWITCH,從而在硬體上帶來一些麻煩。
4. DB2
具有很好的並行性。DB2把資料庫管理擴充到了並行的、多節點的環境。資料庫分區是資料庫的一部分,包含自己的數據、索引、配置文件、和事務日誌。資料庫分區有時被稱為節點安全性。
三、安全認證
1. SQL server
沒有獲得任何安全證書。
2. Oracle Server
獲得最高認證級別的ISO標准認證。
3. Sybase ASE
獲得最高認證級別的ISO標准認證。
4. DB2
獲得最高認證級別的ISO標准認證。
四、性能
1. SQL Server
多用戶時性能不佳
2. Oracle
性能最高, 保持開放平台下的TPC-D和TPC-C的世界記錄。
3. Sybase ASE
性能接近於SQL Server,但在UNIX平台下的並發性要優與 SQL Server。
4. DB2
性能較高適用於數據倉庫和在線事物處理。
五、客戶端支持及應用模式
1. SQL Server
C/S結構,只支持windows客戶,可以用ADO、DAO、OLEDB、ODBC連接。
2. Oracle
多層次網路計算,支持多種工業標准,可以用ODBC、JDBC、OCI等網路客戶連接。
3. Sybase ASE
C/S結構,可以用ODBC、Jconnect、Ct-library等網路客戶連接。
4. DB2
跨平台,多層結構,支持ODBC、JDBC等客戶。
六、操作簡便
1. SQL Server
操作簡單,但只有圖形界面。
2. Oracle
較復雜,同時提供GUI和命令行,在windowsNT和unix下操作相同。
3. Sybase ASE
較復雜,同時提供GUI和命令行。但GUI較差,常常無法及時狀態,建議使用命令行。
4. DB2
操作簡單,同時提供GUI和命令行,在windowsNT和unix下操作相同。
七、使用風險
1. SQL server
完全重寫的代碼,經歷了長期的測試,不斷延遲,許多功能需要時間來證明。並不十分兼容。
2. Oracle
長時間的開發經驗,完全向下兼容。得到廣泛的應用。完全沒有風險。
3. Sybase ASE
向下兼容, 但是ct-library 程序不益移植。
4. DB2
在巨型企業得到廣泛的應用,向下兼容性好。風險小。
『陸』 主流的資料庫管理系統有什麼
oracle,mysql,sql server這三個是最主要的,穩居前三位。
『柒』 目前市場上主流的資料庫管理系統有哪些主要特點是什麼有哪些公司在使用
SQL Server
只能在windows
上運行,沒有絲毫的開放性,操作系統的系統的穩定對資料庫是十分重要的。Windows9X系列產品是偏重於桌面應用,NT
server只適合中小型企業。而且windows平台的可靠性,安全性和伸縮性是非常有限的。它不象unix那樣久經考驗,尤其是在處理大數據量的關鍵業務時.
Oracle 能在所有主流平台上運行(包括
windows)。完全支持所有的工業標准。採用完全開放策略。可以使客戶選擇最適合的解決方案。對開發商全力支持。
DB2
能在所有主流平台上運行(包括windows)。最適於海量數據。DB2在企業級的應用最為廣泛,在全球的500家最大的企業中,幾乎85%以上用DB2資料庫伺服器,而國內到97年約佔5%.
可伸縮性,並行性
SQL server
DB2 並行實施和共存模型並不成熟。很難處理日益增多的用戶數和數據卷。伸縮性有限。
Oracle
平行伺服器通過使一組結點共享同一簇中的工作來擴展windownt的能力,提供高可用性和高伸縮性的簇的解決方
案。 如果windowsNT不能滿足需要,
用戶可以把資料庫移到UNIX中。
DB2
DB2具有很好的並行性。DB2把資料庫管理擴充到了並行的、多節點的環境.
資料庫分區是資料庫的一部分,包含自己的數據、索引、配置文件、和事務日
志。資料庫分區有時被稱為節點或資料庫節點
安全性
SQL server
沒有獲得任何安全證書。
Oracle Server
獲得最高認證級別的ISO標准認證。
DB2 獲得最高認證級別的ISO標准認證。
性能
SQL Server
多用戶時性能不佳
Oracle 性能最高,
保持windowsNT下的TPC-D和TPC-C的世界記錄。
DB2 適用於數據倉庫和在線事物處理
性能較高。
客戶端支持及應用模式
SQL Server
C/S結構,只支持windows客戶,可以用ADO,DAO,OLEDB ,ODBC連接.
Oracle
多層次網路計算,支持多種工業標准,可以用ODBC, JDBC,OCI等網路客戶連接
DB2 跨平台,多層結構,支持ODBC,JDBC等客戶
操作簡便
SQL Server
操作簡單,但只有圖形界面.
Oracle 較復雜,
同時提供GUI和命令行,在windowsNT和unix下操作相同
DB2
操作簡單,同時提供GUI和命令行,在windowsNT和unix下操作相同
使用風險
SQL server
完全重寫的代碼,經歷了長期的測試,不斷延遲,許多功能需要時間來證明。並不十分兼容早期產品。使用需要冒一定風險。
Oracle
長時間的開發經驗,完全向下兼容。得到廣泛的應用。完全沒有風險。
DB2
在巨型企業得到廣泛的應用,向下兼容性好。風險小。
『捌』 常見的資料庫管理系統有哪些
IBM 的DB2作為關系資料庫領域的開拓者和領航人,IBM在1977年完成了System R系統的原型,1980年開始提供集成的資料庫伺服器—— System/38,隨後是SQL/DSforVSE和VM,其初始版本與SystemR研究原型密切相關。DB2 forMVSV1 在1983年推出。該版本的目標是提供這一新方案所承諾的簡單性,數據不相關性和用戶生產率。1988年DB2 for MVS 提供了強大的在線事務處理(OLTP)支持,1989 年和1993 年分別以遠程工作單元和分布式工作單元實現了分布式資料庫支持。最近推出的DB2 Universal Database 6.1則是通用資料庫的典範,是第一個具備網上功能的多媒體關系資料庫管理系統,支持包括Linux在內的一系列平台。
2. OracleOracle 前身叫SDL,由Larry Ellison 和另兩個編程人員在1977創辦,他們開發了自己的拳頭產品,在市場上大量銷售,1979 年,Oracle公司引入了第一個商用SQL 關系資料庫管理系統。Oracle公司是最早開發關系資料庫的廠商之一,其產品支持最廣泛的操作系統平台。目前Oracle關系資料庫產品的市場佔有率名列前茅。
3. InformixInformix在1980年成立,目的是為Unix等開放操作系統提供專業的關系型資料庫產品。公司的名稱Informix便是取自Information 和Unix的結合。Informix第一個真正支持SQL語言的關系資料庫產品是Informix SE(StandardEngine)。InformixSE是在當時的微機Unix環境下主要的資料庫產品。它也是第一個被移植到Linux上的商業資料庫產品。
4. SybaseSybase公司的創始人之一Bob Epstein 是Ingres 大學版的主要設計人員。公司的第一個關系資料庫產品是1987年5月推出的Sybase SQLServer1.0。Sybase首先提出Client/Server 資料庫體系結構的思想,並率先在Sybase SQLServer 中實現。
5. SQL Server1987 年,微軟和IBM合作開發完成OS/2,IBM 在其銷售的OS/2 ExtendedEdition 系統中綁定了OS/2Database Manager,而微軟產品線中尚缺少資料庫產品。為此,微軟將目光投向Sybase,同Sybase 簽訂了合作協議,使用Sybase的技術開發基於OS/2平台的關系型資料庫。1989年,微軟發布了SQL Server 1.0 版。
『玖』 目前流行的資料庫系統軟體有哪些各自有什麼特點
最主流的應該是如下三個
Oracle,最強大的資料庫,沒有之一,功能強大,數據容量強大,占硬碟最多,支持集群。
mysql,輕量型資料庫,方便小巧,是程序設計階段最好的試驗型資料庫,
容量較小,但是仍能完成絕大多數應用場合
sql server,微軟配套的資料庫,功能雖然不能與Oracle媲美,但仍是適用范圍非常廣泛的資料庫,容量基本上能滿足任何企業級系統的開發需要。
『拾』 當前主流資料庫系統有哪些
MySQL
SQLSERVER
Oracle
DB2
PostgreSQL
這些都是最常見的,哦,還有一些NoSQL的資料庫,就是非關系型資料庫