MySQL Oracle 查詢快慢和表的資料量多少有沒有關係?
自己原文公眾號: https://mp.weixin.qq.com/s/xieQP6SNryzKOE8R3Qy1Tg
先說一下觀點。沒有!時至今日還是依然有很多人認為資料庫中資料量大了查詢會慢。實在不好意思,這個觀點是不對的。
我看到一句SQL select * from a where a.code like '%XXXX%' 執行了57秒,這個有點小兒科了。估計大家都知道這樣是用不到索引的,而這個列式有索引的。去掉前%,執行一下15毫秒。57000除以15約等於3800.也就是說不能增加任何硬體,提升了幾千倍。系統的效能明顯提升,而且穩定性也極大提升,至少敢說是支援併發了。
為什麼前後%呢?基本可以猜出來,設計的時候沒考慮,或者開發偷懶。這些都好解決,改一下SQL程式碼就行。怕就怕,使用者希望的就是前後都模糊,即用一個MYSQL來實現百度的功能,這樣的想法是很可怕的。
其實一般來說,不用高階的手段,僅僅使用索引就能解決99%的問題。為什麼?因為關係型資料庫的索引構成決定了索引層級都很低。2千萬和20億極有可能是一個層級。關於層級我覺得應該開一篇專題談談。
很多時候都是其實不是資料庫不行,而是使用方法有問題?
坡道起步的時候掛五檔會如何?考過駕照的人都知道是熄火。那麼你怪車還是怪坡?
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/637517/viewspace-2847317/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- Oracle查詢表的外來鍵引用關係Oracle
- mysql 表資料量大量查詢慢如何優化MySql優化
- ORACLE查詢表之間的主外來鍵關係Oracle
- 查詢Oracle資料庫使用者表中的多少資料量Oracle資料庫
- Oracle 查詢表與表之間的 主外來鍵關係Oracle
- 大資料量查詢容易OOM?試試MySQL流式查詢大資料OOMMySql
- 查詢資料量的大小
- oracle查詢沒有主鍵的表Oracle
- MySQL查詢資料庫中沒有主鍵的表MySql資料庫
- oracle 雜湊查詢與巢狀查詢跟表的先後關係測試Oracle巢狀
- 關於Hibernate多層1對多關係查詢
- mysql 三表關聯查詢MySql
- mysql三表關聯查詢MySql
- 關於MySQL 查詢表資料大小的總結MySql
- 在EFCore中多對多關係的設計資料插入與查詢
- mysql新建表和多表查詢,關鍵字joinMySql
- 查詢資料庫的資料量的大小資料庫
- mysql大資料量分頁查詢方法及其優化MySql大資料優化
- Oracle 查詢鎖之間的依賴關係Oracle
- gorm 關係一對一,一對多,多對多查詢GoORM
- 請教大資料量查詢怎麼分頁查詢?資料量大概有7,8億條。謝謝大資料
- mysql三張表關聯查詢MySql
- 查詢MySQL資料庫,MySQL表的大小MySql資料庫
- Spring data jpa 多表查詢(三:多對多關係動態條件查詢)Spring
- mysql千萬級資料量根據索引優化查詢速度MySql索引優化
- MySQL表關係的理解MySql
- 異構資料庫的關聯查詢 oracle hsodbc 關聯mysql資料庫OracleMySql
- 查詢依賴關係的objects 是否有被DDL過Object
- mysql查詢表的資料體積MySql
- Oracle 查詢多個資料Oracle
- oracle查詢並殺掉鎖表及物件的session及相關係統程式Oracle物件Session
- mysql帶AND關鍵字的多條件查詢MySql
- MYSQL A、B表陣列關聯查詢MySql陣列
- mysql三表關聯查詢練習MySql
- oracle-tom-表和段關係Oracle
- 有關表空間查詢的sql指令碼SQL指令碼
- MySQL 百萬級資料量分頁查詢方法及其最佳化MySql
- mysql千萬級資料量根據索引最佳化查詢速度MySql索引