我正在研究一個項目,其中我有一組關鍵字[abc,xyz,klm]`。我也有一堆文本文件的內容[1.txt,2.txt,3.txt]。這是一個高效的MySQL數據庫設計嗎?
我正在做的是將關鍵字與文本文件相撞以找到關鍵字所在的行,並且可以多次執行此操作。所以我想爲每個事件存儲ID (text file name without .txt), Extracted_Data, Line_Number, Spwaned_Across (keyword may be spread across 2 lines)
。
我決定爲每個關鍵字創建一個表來存儲這些數據。
表:ABC,XYZ,KLM
表ABC樣本數據:
ID Extracted_Data Line_Number Spawned_Across
12 MySQL is wonderful. What is 'abc' 34 1
所以我結束了對每個關鍵字的表。在我的項目中,有大約150個關鍵字,它可以增長。所以有150張桌子。
爲什麼我選擇這樣做?
現在我需要找到關鍵字是否存在於一個文件中,我相信在將來我會被要求顯示它在文件中出現的位置或方式。我計劃爲每個新關鍵字自動創建一個表,這樣我就不必手動創建每個關鍵字或一個有100列的巨大表格。
我做出了正確的決定嗎?您的意見非常感謝。
我嘗試了整個solr/Lucene大約一週,但無法調整架構以適應我的情況。如果索引所有文檔,你認爲solr可以吐出關鍵字,爲每個文件提取匹配的行(多次)?我開始探索,發現它是一隻野獸,需要很多時間來馴服它! – ThinkCode
我認爲它會比你的關係解決方案效果更好。 – duffymo