2011-01-14 16 views
2

我有一些大量的文本(日誌文件),可能非常大(高達千兆字節)。它們與我在數據庫中存儲的實體相關聯,我試圖弄清楚是否應該將它們存儲在SQL數據庫或外部文件中。用於在SQL數據庫中存儲大文本blob的選項?

對於MySQL中的LONGTEXT字段,數據庫內存似乎限制爲4GB,並且可能其他DB具有類似的限制。此外,在數據庫中存儲大概會阻止任何尋求查看這些數據時的尋求 - 我不得不加載全部數據來渲染它的任何部分,對吧?

因此,我似乎傾向於將這些數據存儲在數據庫外:我對數據庫中存儲大型數據塊的擔心是否有效,如果我要將它們存儲在數據庫之外,那麼是否存在任何框架/圖書館來幫助?

(我在python工作,但我有興趣在過其他語言技術)

回答

2

你的疑慮是有效的。

DB在幾年前獲得了處理大型二進制和文本字段的能力,在大家嘗試之後我們放棄了。

問題源於這樣一個事實,即您對大對象的操作往往與您在原子值上的操作大不相同。所以代碼變得困難和不一致。

所以大多數退伍軍人只是將它們存儲在文件系統中,並在數據庫中使用指針。

0

我知道的PHP/MySQL/ORACLE /概率更可讓您與大型數據庫對象,如果你有一個文件指針,這解決了內存問題。

+0

你能提供一個關於如何爲mysql執行這種文件式訪問的信息的鏈接嗎? – kdt 2011-01-18 15:10:19

相關問題