我有大約50,000個第三方數據饋送,每五分鐘讀取一次。這個想法是檢查更新的內容。我有以下表格:在MySQL中插入大量潛在重複行的策略
飼料
- ID
- 名
- 網址
帖子
- ID
- FEED_ID
- 標題
- 內容
- 網址
- unique_hash(基於URL +標題)
我的第一種方法是使posts.unique_hash唯一索引字段,以便在嘗試INSERT後,我得到一個失敗。大部分INSERT都會失敗(按照預期)。然而,我的問題是,我會經常需要在'posts'表上運行SELECT(對於此應用程序的另一部分),因此大量INSERTS不斷運行(有許多失敗)將消耗表的資源。
我當然可以在試圖插入INSERT之前在'posts'表上做一個SELECT,但這會佔用更多的資源。
我正在尋找最好的方法,這將使我的'職位'表的資源免費進行許多SELECT查詢。使用索引表?使用緩存機制?