Re: [閒聊] 資料庫與檔案系統

作者: vity (逍遙盃-佛得)   2012-06-22 23:14:27
※ 引述《snobbery (egoist)》之銘言:
: 資料庫與檔案系統到底有什麼差別呢?
: 我查閱過教科書, 是說資料庫是專門為"資料查詢"所設計,
: 對於資料存取有比較好的效率.
: 但是對於這樣的解釋我仍不太能接受, 原因是:
先給你個觀念 你用來建資料庫建表格的是資料庫"管理"系統
而不是資料庫, 所以說, MySQL是資料庫"管理"系統
: - 如MySQL之類的軟體不也是灌在Windows上的嗎?
: 所以實際上在檔案存放在硬碟裡的層次上來說,
: 不也仍是FAT32的架構嗎?
這裡講的檔案系統、資料庫都是著重在存放資料用的
不要和OS裡面的檔案系統搞混了
在OS裡講的偏向實作面, 檔案系統要比的話是和Database Engine比
在儲存裝置建索引之類的, 但不需要講到這麼細節
通常講檔案系統, 是指以前沒用資料庫時, 把交易資料存在文件檔阿
或是就存在DOS裡, 一筆一筆的存, 欄位非常的多
後來為了節省儲存空間, BOM表式的資料庫阿, 網路式的資料庫就出來了
但都被Codd有數學原理的關聯式資料庫幹掉
它好在哪?好在很省空間資料又不會錯, 舉個例子吧
Trade BuyerName SellerName ProductName
1 A E H
2 B F I
3 C G J
檔案系統就沒在管, 就照這樣子存放資料
但資料庫就會把他分割成幾張表格來存
不但省空間, 資料又一致(欲知詳情請google)
: - 那如果不是如此的話,
: 是否一個資料庫系統的軟體是否能夠獨立於作業系統之外,
: 譬如給你一個空硬碟, 然後直接裝上一個資料庫系統軟體,
: 從此之後這個硬碟只能負責資料庫查詢的工作,
: 而效率的提升來自於這個資料庫系統對於各個
: record如何放在實體硬碟上有特殊之處
資料庫放在硬碟上的特殊之處就是它的索引建立了
為了符合關聯式表格有它特殊的結構
你要它不裝OS也行 上面就要有Kernal去控OS
我只懂SQL Server不太知道DB2和Oracle跟Cybase會不會這樣幹
: - 但是如果是這樣的話, 又要怎麼解釋MySQL灌在Windows
: 上的例子呢?
就MySQL沒辦法直接控硬體 需要OS當中介
作者: NullLife (廢材大叔有點累)   2012-08-28 09:07:00
最近在摸這一塊 推一個!!

Links booklink

Contact Us: admin [ a t ] ucptt.com