文章詳情頁
mysql - 查詢 修改數據庫優化問題吧
瀏覽:126日期:2022-06-13 10:40:30
問題描述
我有一張表 有幾十萬個數據 每次觸發某個事件的話 都會對所以表進行查詢 符合條件的話(大部分都會符合) 對表數據的某個字段進行修改(修改的數據每個都不一樣) 請問怎么做效率最高 因為是新手 不是很懂 非常感謝
問題解答
回答1:第一有查詢,所以查詢的條件必須讓建立的索引起效。第二批量的修改,,修改索引必須起效。但假如絕大部分的數據符合你這樣的條件時候,索引比較容易失效,所以建議可以獲取所有符合的id值,跟個通過id值去更新數據
回答2:如果一個事件會引起幾十萬條 UPDATE 的話:
檢查是否設計有問題;
如果設計是正確的,嘗試增加 redis 等緩存層,再使用消息隊列等異步方法去更新數據庫表;
相關文章:
1. docker不顯示端口映射呢?2. dockerfile - 我用docker build的時候出現下邊問題 麻煩幫我看一下3. angular.js - node.js中下載的angulae無法引入4. docker-compose中volumes的問題5. php - 想要遠程推送emjio ios端怎么搞 需要怎么配合6. docker 下面創建的IMAGE 他們的 ID 一樣?這個是怎么回事????7. android - 添加multidex后在部分機型上產生anr的問題,該如何解決8. 一個走錯路的23歲傻小子的提問9. mysql - 數據庫如何存儲小說數據比較好?10. mysql里的大表用mycat做水平拆分,是不是要先手動分好,再配置mycat
排行榜
