2011-12-14 156 views

回答

4

從mat文件中讀取數據,也是一個「數據庫」,其中您從文件中讀取數據。
最終,您必須自己執行查詢,並處理許多其他問題。
此外,它不是一個可擴展的解決方案,這意味着對於大量的數據,它將無法正常工作。
當然,如果你有少量的數據,而且只有基本的查詢,那麼使用SQL建立數據庫的麻煩是不值得的。

關於你的第二個問題,它確實取決於你在那裏的數據。

+0

很好的瞭解,數據庫仍然是更快 – mugetsu

+0

@mugetsu:我認爲,開銷要低得多用墊子文件足夠小或秩序井然的數據集,是微不足道的查詢。 – Jonas

+1

@Jonas我正在處理包含圖像的大墊子文件,如果你聽說過VOC圖像或Caltech101圖像,那就是我正在使用的。表結構非常簡單,但可以有數十萬行。那麼墊子會更好嗎? – mugetsu

4

我同意安德烈。這取決於數據和你想要做什麼。我在Matlab中創建了一個小程序,用於查詢相對較小的.mat數據庫,但隨着數據庫和用戶數量的增長,性能一直在下降。

鑑於此,我們決定使用MySQL數據庫。我創建了一個小型Java應用程序,與數據庫對話並將其導入到Matlab中,以在Matlab和MySQL之間移動數據。但是我必須爲我的數據創建特定的查詢。如果有人能給我一個更好的解決方案,我將不勝感激。

也許在Matlab和SQL數據庫之間生成一個在.mat數據之間移動數據的通用腳本並不是一個好主意。將數據存儲在結構中並使用它來創建表。

如果你想通過電子郵件進一步討論這樣的事情,我會很樂意。也許我們可以相互學習一兩件事。

+2

只是瘋狂的猜測,嘗試將mat轉換爲XML,然後使用一些標準的數據庫工具導入它。例如,Microsoft Access。 –

+0

我將不得不嘗試這個!我有一些大型的.MAT文件,我將它們轉換爲SQLite數據庫,但由於我不是一個真正的MATLAB人員,所以我非常痛苦,所以我必須在Python中構建一個解析器來處理許多MANY嵌套的結構(該死的你MATLAB! )。任何方式我用Python解析它,然後通過熊貓保存到數據庫。 –