資料庫緩衝,資料庫緩衝機制

來源:互聯網
上載者:User

資料庫緩衝,資料庫緩衝機制
重新整理資料庫緩衝
 exec dbms_stats.gather_table_stats('PRO','tbl_request',cascade => true);
 alter system flush shared_pool;
資料庫緩衝機制是什?就是緩衝是怎作用資料庫的?越詳細越好要對的

首先你要瞭解下什麼是 資料庫緩衝機制 (最好找書本來看下)
已經過了很久了。我都忘記了。不過可以舉個類似的例子 希望協助你下理解。
還有些需要具體例子代碼看的話,最好還是找資料庫的相關書籍講解比較詳細 網上很少能詳細講解的 如果在學校就最好了。找老師問就可以 或者你去些關於資料庫方面的論壇上找找資料

資料庫緩衝機制 緩衝是介於應用程式和物理資料來源之間,其作用是為了降低應用程式對物理資料來源訪問的頻次,從而提高了應用的運行效能。緩衝內的資料是對物理資料來源中的資料的複製,應用程式在運行時從緩衝讀寫資料,在特定的時刻或事件會同步緩衝和物理資料來源的資料。
緩衝的介質一般是記憶體,所以讀寫速度很快。但如果緩衝中存放的資料量非常大時,也會用硬碟作為緩衝介質。緩衝的實現不僅僅要考慮儲存的介質,還要考慮到管理緩衝的並發訪問和快取資料的生命週期。

再如:

靜態網站的內容都是些簡單的靜態網頁直接儲存在伺服器上,可以非常容易地達到非常驚人的訪問量。但是動態網站因為是動態,也就是說每次使用者訪問一個頁面,伺服器要執行資料庫查詢,啟動模板,執行商務邏輯到最終產生一個你所看到的網頁,這一切都是動態即時產生的。從處理器資源的角度來看,這是比較昂貴的。
對於大多數網路應用來說,過載並不是大問題。因為大多數網路應用並不是washingtonpost.com或Slashdot;它們通常是很小很簡單,或者是中等規模的網站,只有很少的流量。但是對於中等至大規模流量的網站來說,儘可能地解決過載問題是非常必要的。這就需要用到緩衝了。
緩衝的目的是為了避免重複計算,特別是對一些比較耗時間、資源的計算。
 
Hibernate的緩衝技術有什

緩衝是資料庫資料在記憶體中的臨時容器,它包含了庫表資料在記憶體中的臨時拷貝,位於資料庫與應用程式之間,其作用是為了降低應用程式對物理資料來源訪問的頻次,從而提高應用的運行效能。

Hibernate的緩衝機制

1.1持久化層的緩衝的範圍

持久層設計中,往往需要考慮幾個不同層次中的資料緩衝策略。這些層次的劃分標準針對不同情況有所差異,一般而言,ORM的資料緩衝應包含如下幾個層次:

事務級緩衝(Transaction Layer Cache)

緩衝只能被當前事務訪問。緩衝的生命週期依賴於事務的生命週期,當事務結束時,緩衝也就結束生命週期。在此範圍下,緩衝的介質是記憶體。事務可以是資料庫事務或者應用事務,每個事務都有獨自的緩衝,緩衝內的資料通常採用相互關聯的對象形式。

應用級/進程級緩衝(Application/Process Layer Cache)

緩衝被進程內的所有事務共用。這些事務有可能是並發訪問緩衝,因此必須對緩衝採取必要的事務隔離機制。緩衝的生命週期依賴於進程的生命週期,進程結束時,緩衝也就結束了生命週期。進程範圍的緩衝可能會存放大量的資料,所以存放的介質可以是記憶體或硬碟。緩衝內的資料既可以是相互關聯的對象形式也可以是對象的鬆散資料形式。對象的鬆散資料形式有點類似於對象的序列化資料,但是對象分解為鬆散的演算法比對象序列化的演算法要求更快。

叢集級緩衝(Cluster Layer Cache)

在叢集環境中,緩衝被一個機器或者多個機器的進程共用。緩衝中的資料被複製到叢集環境中的每個進程節點,進程間通過遠程通訊來保證緩衝中的資料的一致性,緩衝中的資料通常採用對象的鬆散資料形式。對大多數應用來說,應該謹慎地考慮是否需要使用叢集範圍的緩衝,因為訪問的速度不一定會比直接存取資料庫資料的速度快多少。

持久層提供以上多種層次的緩衝。如果在事務級緩衝中沒有查到相應的資料,還可以到進程級或叢集級緩衝內查詢,如果還是沒有查到,那麼只有到資料庫中查詢。事務級緩衝是持久化層的第一級緩衝,通常它是必需的;進程級或叢集級緩衝是持久化層的第二級緩衝,通常是可選的。

1.2 hibernate緩衝機制

Hibernate提供了兩種緩衝,第一種是Session的緩衝,又稱為一級緩衝。由於Session對象的生命週期通常對應一個資料庫事務或者一個應用事務,因此它的緩衝是事務範圍的緩衝。第一級緩衝是必需的,不允許而且事實上也無法卸載。在第一級緩衝中,持久化類的每個執行個體都具有唯一的OID。
 

相關文章

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.