亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

數據庫與平面文件

數據庫與平面文件

數據庫與平面文件我工作的公司正在嘗試將使用平面文件格式的產品切換為數據庫格式。我們正在處理相當大的數據文件(即:25GB /文件),并且它們可以非??焖俚馗?。我們需要運行隨機訪問數據的查詢,以及連續的方式。我試圖說服他們使用數據庫的優勢,但我的一些同事似乎不愿意這樣做。所以我想知道你們是否可以通過一些理由或鏈接到我們應該使用數據庫的帖子來幫助我,或者至少澄清為什么平面文件更好(如果是的話)。
查看完整描述

3 回答

?
縹緲止盈

TA貢獻2041條經驗 獲得超4個贊

這是我前段時間已經給出的答案:

它完全取決于特定于域的應用程序需求。很多時候,直接文本文件/二進制文件訪問可以非??焖?,高效,并且為您提供操作系統文件系統的所有文件訪問功能。

此外,您的編程語言很可能已經有一個內置模塊(或很容易制作)用于特定的解析。

如果您需要的是許多附加(INSERTS?)和順序/少數訪問很少/沒有并發,文件是要走的路。

另一方面,當您對并發,非順序讀/寫,原子性,原子權限,數據的性質等要求時,您最好使用關系數據庫或OO數據庫。

使用SQLite3可以實現很多功能,它非常輕便(300kb以下),符合ACID標準,用C / C ++編寫,并且非常普遍(如果它還沒有包含在您的編程語言中 - 例如Python-,肯定有一個可用)。即使對于140 TB或128 tebibytes(鏈接到數據庫大小)的db文件,它也可能更有用。

如果你的要求更大,甚至沒有討論,那就去找一個完整的RDBMS。

正如你在評論中所說的那樣,“系統”只是一堆腳本,那么你應該看看pgbash。


查看完整回答
反對 回復 2019-08-26
?
慕萊塢森

TA貢獻1810條經驗 獲得超4個贊

如果你能買它,不要建造它。

我最近聽到了這句話,它似乎很適合作為指導。問自己這個...花了多少時間處理你的應用程序的文件處理部分?我懷疑在優化此代碼以獲得性能方面花費了相當多的時間。如果您一直使用關系數據庫,那么處理這部分應用程序的時間會少得多。您可以有更多時間來應用您應用的真正“業務”方面。


查看完整回答
反對 回復 2019-08-26
  • 3 回答
  • 0 關注
  • 702 瀏覽

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號