sql讀為什麼比sql寫快?

時間 2021-05-06 14:52:11

1樓:mysqlops

這個可能不能絕對化,簡單描述下:1.UPDATE 肯定比SELECT慢,因為需要UPDATE一條記錄得先讀出來,剩下的是計算和寫回去,甚至還可能需要維護索引,更新同一條記錄肯定比讀同一條記錄慢,因為IO操作更多;

2.INSERT與SELECT比較,寫同一條記錄與要讀同一條記錄就可能速度不一樣,甚至SELECT要比INSERT慢。INSERT肯定是需要多個IO,不僅要把元資料寫進去,肯定還要維護索引的變更;但是SELECT同一條記錄,若是查詢的條件沒有建立索引或索引效果不好那肯定就慢;

所以說一半情況下是讀SQL比寫SQL快,磁碟的IO也是讀比寫快的,而且寫SQL能更加方便地優化等,比如增加資料庫的快取功能,這樣就可能直接通過快取就獲得了!

2樓:

說點題外話,讀文章也比寫文章快,我感覺任何資訊,讀取都比寫入快。

寫入是乙個「持久化」的過程,需要在物理結構上產生改變記錄東西,但一旦這種結構性改變完成之後,複製乙份就非常方便了

而且讀取往往是一種瞬間的臨時操作,是不用對之後的事情負責的

寫乙個800行的SQL語句是什麼樣的體驗?

取經科技 曾經突破編譯器可容許SQL位元組量的上限的老資料民工,來答一波。如果是關聯式資料庫,比如MySQL或者Oracle,幾百行的SQL伺服器會很有壓力,一般業務上也很少大幾百行來寫。但是對於離線大資料工具hive,幾百行的sql是很常見的。原因是 現在網際網路業務資料複雜 一般存放在多個業務資...

Presto為什麼比Spark SQL快?

讀位元組 Presto為什麼比Spark SQL快?Spark SQL屬於MMP架構的嗎?第乙個問題 Presto作為SQL查詢引擎是乙個純記憶體的計算引擎,它對記憶體的優化近乎於一種極致的追求。Presto的架構主要是主從式,主節點是coordinator負責SQL的優化和執行計畫分配,同時還負責...

為什麼ssd的4k隨機讀寫,讀比寫慢?

knowwei 並不是所有SSD的4k隨機都是讀比寫明顯慢的,例如下面這塊M.2 SATA匯流排的大廠出品SSD,就能保證單執行緒4k隨機讀寫 多執行緒4K隨機讀寫,幾乎都是一樣的。這就是大廠品質! 如果讀比寫慢,一是,因為普通ssd有記憶體顆粒做快取記憶體,所以先寫到快取記憶體裡,因而寫會很快。二...