最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

MySQL中字符串索引對(duì)update的影響分析

 更新時(shí)間:2016年04月19日 11:57:13   作者:moxiaomomo  
這篇文章主要介紹了MySQL中字符串索引對(duì)update的影響,結(jié)合實(shí)例形式分析了添加索引操作對(duì)于update語句的性能所造成的影響,需要的朋友可以參考下

本文分析了MySQL中字符串索引對(duì)update的影響。分享給大家供大家參考,具體如下:

對(duì)某一個(gè)類型為varchar的字段添加前綴索引后,基于該子段的條件查詢時(shí)間基本大幅下降;但對(duì)于update操作,所耗的時(shí)間卻急劇上升,主要原因是在更新數(shù)據(jù)的同時(shí),mysql會(huì)執(zhí)行索引的更新。

下面做了一個(gè)簡單的試驗(yàn)。

(1)首先對(duì)某個(gè)億級(jí)記錄的表字段所有記錄執(zhí)行更新:

for idx in range(1, count+1):
  sql = "update tbl_name set platforms='"+datetime.now().strftime('%Y%m%d%H%M%S%f')+"' where id="+str(idx)+";"
  cursor.execute(sql)

統(tǒng)計(jì)用時(shí)4個(gè)小時(shí)左右。

(2)然后對(duì)某個(gè)億級(jí)記錄的表子段添加索引:

sql = "alter table tbl_name add index platforms_index(platforms(8));"
cursor.execute(sql)

然后再執(zhí)行同上的update語句,統(tǒng)計(jì)用時(shí)將近9個(gè)小時(shí)。

(3)由此可見字符串索引對(duì)于update等操作在性能上有極大的影響。

雖然以上小試驗(yàn)并沒有多大實(shí)際意義,但是可以延伸一下,如果不對(duì)該字段添加索引,而是直接把該字段數(shù)據(jù)存儲(chǔ)到另一個(gè)小表b,然后在該表添加一個(gè)id字段映射到小表b,然后再執(zhí)行update操作;這樣性能又如何呢?

理論上性能應(yīng)該與記錄的重復(fù)度有關(guān),如果重復(fù)率高,小表b將會(huì)很小(unique去重);而更新所用時(shí)間為通過原表映射查詢表b字段的時(shí)間+更新表b記錄的時(shí)間,總體上應(yīng)該比更新記錄的時(shí)間+更新索引的時(shí)間要少。

不過只是估算,結(jié)果如何感興趣的朋友可以動(dòng)手驗(yàn)證一下。

更多關(guān)于MySQL相關(guān)內(nèi)容感興趣的讀者可查看本站專題:《MySQL事務(wù)操作技巧匯總》、《MySQL存儲(chǔ)過程技巧大全》、《MySQL數(shù)據(jù)庫鎖相關(guān)技巧匯總》及《MySQL常用函數(shù)大匯總

希望本文所述對(duì)大家MySQL數(shù)據(jù)庫計(jì)有所幫助。

相關(guān)文章

  • mysql模糊查詢like和regexp小結(jié)

    mysql模糊查詢like和regexp小結(jié)

    在mysql中實(shí)現(xiàn)模糊查詢有兩種方法一種是LIKE/NOT LIKE,另一種是REGEXP/NOT REGEXP方法,下面我來給大家介紹它們的用法,希望此教程對(duì)各位同學(xué)會(huì)有所幫助。
    2014-09-09
  • 提升MongoDB性能的方法

    提升MongoDB性能的方法

    在本篇文章中我們給大家總結(jié)了提升MongoDB性能的方法以及相關(guān)知識(shí)點(diǎn)內(nèi)容,有需要的朋友們可以學(xué)習(xí)下。
    2018-09-09
  • MySQL數(shù)據(jù)庫SELECT查詢表達(dá)式解析

    MySQL數(shù)據(jù)庫SELECT查詢表達(dá)式解析

    這篇文章主要介紹了MySQL數(shù)據(jù)庫SELECT查詢表達(dá)式解析,文中給大家介紹了select_expr 查詢表達(dá)式書寫方法,需要的朋友可以參考下
    2018-04-04
  • 詳解MySQL雙活同步復(fù)制四種解決方案

    詳解MySQL雙活同步復(fù)制四種解決方案

    這篇文章主要介紹了MySQL 雙活同步復(fù)制四種方案,主從復(fù)制分成三步,本文給大家介紹的非常詳細(xì),具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2018-08-08
  • mysql 8.0.22 winx64安裝配置方法圖文教程

    mysql 8.0.22 winx64安裝配置方法圖文教程

    這篇文章主要為大家詳細(xì)介紹了mysql8.0.22 winx64安裝配置方法圖文教程,文中安裝步驟介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2020-11-11
  • Mysql執(zhí)行原理之索引合并步驟詳解

    Mysql執(zhí)行原理之索引合并步驟詳解

    這篇文章主要介紹了Mysql執(zhí)行原理之索引合并詳解,本文給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2022-12-12
  • MySql 設(shè)置表格字段key中的值

    MySql 設(shè)置表格字段key中的值

    本文主要介紹了MySql 設(shè)置表格字段key中的值,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2024-05-05
  • MySQL多列IN查詢的實(shí)現(xiàn)

    MySQL多列IN查詢的實(shí)現(xiàn)

    多列 IN 查詢是一種強(qiáng)大的篩選工具,它允許通過多字段組合快速過濾數(shù)據(jù),本文主要介紹了MySQL 多列 IN 查詢的實(shí)現(xiàn),具有一定的參考價(jià)值,感興趣的可以了解一下
    2025-03-03
  • MySQL開啟遠(yuǎn)程訪問權(quán)限的最新方法

    MySQL開啟遠(yuǎn)程訪問權(quán)限的最新方法

    這篇文章主要給大家介紹了關(guān)于MySQL開啟遠(yuǎn)程訪問權(quán)限的最新方法,在MySQL中,要實(shí)現(xiàn)遠(yuǎn)程訪問,首先需要在MySQL服務(wù)端上開啟相應(yīng)的權(quán)限,需要的朋友可以參考下
    2023-08-08
  • mysql雙機(jī)熱備實(shí)現(xiàn)方案【可測試】

    mysql雙機(jī)熱備實(shí)現(xiàn)方案【可測試】

    雙機(jī)熱備從廣義上講,就是對(duì)于重要的服務(wù),使用兩臺(tái)服務(wù)器,互相備份,共同執(zhí)行同一服務(wù)。這篇文章主要介紹了mysql雙機(jī)熱備實(shí)現(xiàn)方案,需要的朋友可以參考下
    2019-10-10

最新評(píng)論

潢川县| 普兰县| 修武县| 搜索| 虹口区| 兴国县| 凤庆县| 措勤县| 大宁县| 临西县| 宁安市| 积石山| 徐州市| 白沙| 二手房| 三原县| 绵竹市| 阳信县| 隆化县| 攀枝花市| 阳春市| 开化县| 双城市| 德钦县| 安远县| 大宁县| 黎平县| 金华市| 周至县| 娄底市| 平利县| 太和县| 遂宁市| 武威市| 池州市| 天门市| 洛川县| 溧阳市| 阳江市| 彭山县| 大邑县|