2011-12-11 53 views
0

我正在用python的pyinotify模塊(實際上是執行作業的linux內核)跟蹤一個linux文件系統(可能是任何類型)。許多目錄/文件夾/文件(與用戶想要的一樣多)正在跟蹤我的應用程序,現在我想跟蹤每個文件的md5sum並將它們存儲在數據庫中(包括每個移動的,重命名的,新的文件等) 。用於文件系統跟蹤的最具性能的免費數據庫

我想數據庫應該是存儲每個文件的所有md5sum的最佳選擇......但是,什麼應該是最好的數據庫呢?當然,這是一個非常具有表現力的。我正在尋找一個免費的應用程序,因爲應用程序將是GPL。

+0

什麼_is_ performatic? –

回答

0

聽起來像你想要一個鍵值存儲而不是一個完整的數據庫。你可以看看谷歌的LevelDB。鑑於它沒有完整的SQL數據庫所具有的功能,並且是爲提高效率而設計的,因此它可能是最具性能的解決方案。鏈接頁面上有一些表演編號。

0

我想嘗試的第一個數據庫是SQLite3。 SQLite3易於使用,經過很好的測試,提供了大量的接口庫和預編寫的工具來處理數據庫,並且很容易「嵌入」到應用程序中。 (比在系統上安裝MySQL或PostgreSQL要容易得多)。

對於人們來說,SQLite3似乎比Berkeley DB更容易,這是SQLite3的主要替代方案。

+0

讓我們假設複雜的安裝和維護不是一個交易斷路器。你會選擇什麼?仍然與SQLite3?恐怕用戶選擇追蹤郵件假脫機目錄,到達大量郵件(以及創建大量文件)和跟蹤器一直工作,並且添加每個文件的md5checksum將需要一個非常輕而快的數據庫將負載平衡提升到天空,不是嗎? – Pabluez

0

你可以試試Redis。這當然是快速的。

但實際上,由於您正在跟蹤文件系統,而磁盤與中速數據庫相比磁盤速度較慢,因此性能不應成爲您的首要關注點。

相關問題