關於資料庫讀取速度與檔案IO讀取速度的比較分析

2021-07-22 12:24:40 字數 539 閱讀 6871

最近看到了這個很有意思的問題,以前也沒有思考過。如果有人問,到底是在**中跟

io檔案交換速度快,還是跟資料庫交換速度快呢?

這個問題還是比較複雜的,

資料庫的儲存資料方式要比單純的檔案儲存複雜很多。其實,如果我們熟悉資料庫的結構,那麼很容易解決這個問題。簡單的來講,乙個執行的資料庫例項是由兩部分組成的,sga(說白了就是記憶體區域,包含各種執行引數以及快取資訊)與資料檔案。

就乙個簡單的操作而言,如果我們只是insert一條語句,如果比較速度,那麼當然是寫入檔案快,這只是乙個簡單的io操作。此時寫入資料庫的話,首先需要建立連線,這個需要時間,其次要先在記憶體中sga進行分析,解析sql語句,再加上一些必要的操作,最後寫入到資料庫檔案中,這個本質上也是乙個檔案。

但是,資料庫的功能遠遠的大於文字檔案,而且這兩個概念是不能相比的。資料庫的sga快取優化,能夠大大減少搜尋時間。而且文字檔案只是乙個簡單的儲存,沒有檢索功能。

所以,如果是簡單的配置引數或者說特別小的資料,可以考慮儲存在檔案中,速度快。但是如果大批量的資料,肯定是存在資料庫中。一般也沒有人選擇存在文字檔案中吧。

mysql的i o讀取大 資料庫I O讀寫速度

工作中遇到的乙個實際問題。問題如下 長時間,大量插入資料的速度慢的問題。7 24小時的不間斷想資料庫中插入資料,單錶的插入資料量平均目前平均35條 秒。有 40多個單表表都需要插入。插入資料的同時還要對40多個單錶進行更新和查詢操作。如此頻繁的對資料庫進行操作的情況下,資料庫的速度已經不能滿足我們的...

資料庫中儲存與讀取檔案

if exists select from dbo.sysobjects where id object id n dbo p binaryio and objectproperty id,n isprocedure 1 drop procedure dbo p binaryio go bcp 實現...

資料庫中儲存與讀取檔案

if exists select from dbo.sysobjects where id object id n dbo p binaryio and objectproperty id,n isprocedure 1 drop procedure dbo p binaryio go bcp 實現...