數據庫管理系統
什麼是數據庫管理系統?它包攬了一切管理數據的存儲安全性可伸縮性提供了一組工具以便輸入數據和從數據庫中取出數據等在選擇一個DBMS時需要考慮這些問題下面幾個小節簡要地介紹了其中一些需要考慮的因素
存儲容量
所選擇的DBMS是否能滿足當前和將來的需要?如果只是想存儲喜歡的菜譜或者管理家庭的藏書那麼采用一個桌面型數據庫(例如Microsoft Access)就夠了當需要存儲百萬兆字節級別的信息(例如最近年紐約證券交易所的金融交易信息)時則應該采用一個企業級的DBMS例如OracleMicrosoft SQL Server或者IBM DB
用戶數量
如果你是數據庫唯一的用戶那麼也許並不需要數據庫具有某些專門設計用於支持並發數據使用的功能例如當前版本的Microsoft Access最大支持個並發用戶(在實踐中實際的並發數量取決於很多因素包括網絡帶寬和處理能力等)如果使用高級的群集技術那麼在諸如Oracle這樣的企業級DBMS中用戶的數量在理論上並沒有什麼限制
安全性
數據應該達到什麼樣的安全級別?如果你最喜歡的菜譜被偷走你可能並不會為此特別煩惱但是對於我們的銀行信息或健康信息則要求盡可能安全(對於各種數據資料應該執行哪一個級別的保護要有一定的規章制度)企業級DBMS與桌面型數據庫兩者之間的一個重要區別在於健壯的精細粒度的安全實現Microsoft Access數據庫的一個簡單文件比起基於服務器的具有多級保護的IBM DB數據庫來說它的安全性相對較低
性能
數據庫需要多快的速度?對於一個股票交易平台在獲取信息時可以等待幾分鐘還是必須具有亞秒級的響應能力?這一問題的答案與並發用戶數和可伸縮性有關某些DBMS天生就比其他DBMS要慢因此在處理速度要求較高的環境中不應該采用這樣的數據庫
可伸縮性
正如Yogi Berra所說預言是困難的特別是關於未來的預言數據庫必須能夠適應商業需求的變化盡管沒有人可以預見所有的未來但可以根據可能的情形和行業趨勢作出一些有把握的猜測商業需求會發生改變(例如業務發展壯大或者企業並購)數據庫也需要隨之而改變可以打賭的是數據的生存期將比存儲它們的數據庫還要長操作系統(例如大型機UNIX/LinuxWindows)可能會發生改變程序設計環境(COBOLC/C++JavaNet)可能發生改變相關規則也可能發生改變但數據必須持久這並不完全是因為情感的原因
對於所有這些因素任何一種現代企業級RDBMS都可以獲得一個良好的成績最終商業需求將決定技術的選擇對於規模較大的數據庫產品的部署需要聽取專家的意見另外還需要有資質的數據庫管理員來確保數據庫保持最佳的狀態一旦掌握了數據庫語言就可以獲取數據並將其轉換為信息然後從這些信息中獲得我們所需的知識
成本
當然在考慮安裝和操作數據庫的同時考慮到數據庫的成本因素也是很重要的對於一個企業級DBMS數據庫廠商的售價可能高達數十萬美元而對於一個開源的DBMS可能可以免費獲取請記住天下沒有免費的午餐開源的DBMS可能在當前可以節省費用但是在專業經驗時間工具的可用性以及維護成本方面的代價很快就會超過節省的費用對於選擇的每一種DBMS必須考慮其總成本(total cost of ownershipTCO)
返回目錄SQL實戰新手入門
編輯推薦
Oracle索引技術
高性能MySQL
數據倉庫與數據挖掘培訓視頻教程
From:http://tw.wingwit.com/Article/program/SQL/201311/16494.html