文章詳情頁(yè)
mysql - 查詢 修改數(shù)據(jù)庫(kù)優(yōu)化問題吧
瀏覽:155日期:2022-06-13 10:40:30
問題描述
我有一張表 有幾十萬(wàn)個(gè)數(shù)據(jù) 每次觸發(fā)某個(gè)事件的話 都會(huì)對(duì)所以表進(jìn)行查詢 符合條件的話(大部分都會(huì)符合) 對(duì)表數(shù)據(jù)的某個(gè)字段進(jìn)行修改(修改的數(shù)據(jù)每個(gè)都不一樣) 請(qǐng)問怎么做效率最高 因?yàn)槭切率?不是很懂 非常感謝
問題解答
回答1:第一有查詢,所以查詢的條件必須讓建立的索引起效。第二批量的修改,,修改索引必須起效。但假如絕大部分的數(shù)據(jù)符合你這樣的條件時(shí)候,索引比較容易失效,所以建議可以獲取所有符合的id值,跟個(gè)通過id值去更新數(shù)據(jù)
回答2:如果一個(gè)事件會(huì)引起幾十萬(wàn)條 UPDATE 的話:
檢查是否設(shè)計(jì)有問題;
如果設(shè)計(jì)是正確的,嘗試增加 redis 等緩存層,再使用消息隊(duì)列等異步方法去更新數(shù)據(jù)庫(kù)表;
相關(guān)文章:
1. python bottle跑起來(lái)以后,定時(shí)執(zhí)行的任務(wù)為什么每次都重復(fù)(多)執(zhí)行一次?2. javascript - ios返回不執(zhí)行js怎么解決?3. javascript - vue2如何獲取v-model變量名4. node.js - vue中 post數(shù)據(jù)遇到問題5. 前端 - 誰(shuí)來(lái)解釋下這兩個(gè) CSS selector 區(qū)別6. javascript - 求幫助 , ATOM不顯示界面!!!!7. html5 - HTML代碼中的文字亂碼是怎么回事?8. javascript - angular使從elastichearch中取出的文本高亮顯示,如圖所示9. mysql - 分庫(kù)分表、分區(qū)、讀寫分離 這些都是用在什么場(chǎng)景下 ,會(huì)帶來(lái)哪些效率或者其他方面的好處10. python - 爬蟲模擬登錄后,爬取csdn后臺(tái)文章列表遇到的問題
排行榜

熱門標(biāo)簽