文章詳情頁
mysql - 查詢 修改數據庫優化問題吧
瀏覽:245日期:2022-06-13 10:40:30
問題描述
我有一張表 有幾十萬個數據 每次觸發某個事件的話 都會對所以表進行查詢 符合條件的話(大部分都會符合) 對表數據的某個字段進行修改(修改的數據每個都不一樣) 請問怎么做效率最高 因為是新手 不是很懂 非常感謝
問題解答
回答1:第一有查詢,所以查詢的條件必須讓建立的索引起效。第二批量的修改,,修改索引必須起效。但假如絕大部分的數據符合你這樣的條件時候,索引比較容易失效,所以建議可以獲取所有符合的id值,跟個通過id值去更新數據
回答2:如果一個事件會引起幾十萬條 UPDATE 的話:
檢查是否設計有問題;
如果設計是正確的,嘗試增加 redis 等緩存層,再使用消息隊列等異步方法去更新數據庫表;
相關文章:
1. boot2docker無法啟動2. docker-compose中volumes的問題3. java - SSH框架中寫分頁時service層中不能注入分頁類4. node.js - antdesign怎么集合react-redux對input控件進行初始化賦值5. 關于docker下的nginx壓力測試6. docker安裝后出現Cannot connect to the Docker daemon.7. 老師,按tab鍵不起作用怎么回事8. dockerfile - 為什么docker容器啟動不了?9. mac里的docker如何命令行開啟呢?10. 關docker hub上有些鏡像的tag被標記““This image has vulnerabilities””
排行榜

網公網安備