專案的開展總離不開乙個科學高效的資料管理系統為我們服務,oracle資料庫絕對是其中的佼佼者。下面通過我這幾天的一些認識來給大家做一些分享和總結。
oracle 是乙個 rdbms 系統,也是一款應用軟體。oracle 資料庫除了將資料儲存於檔案中外,還通過乙個被稱為例項的後台機制向外提供服務。
例項是訪問 oracle 資料庫的通道,包含共享記憶體和後台程序。乙個 oracle 例項一次只能開啟乙個 oracle 資料庫,而乙個 oracle 資料庫可以同時被多個例項開啟。被多例項開啟的 oracle 資料庫,必須是乙個 rac 資料庫。 更進一步講,rac 應該是 oracle rdbms 的乙個選件。
oracle 需要將資料儲存在資料檔案中,為了能夠支援大量的併發使用者訪問資料庫,並且提高資料庫的訪問效能,oracle 需要引入共享記憶體,從而實現資源的共享。比如,針對 sql 引擎,每個 sql 最終將會被解析為一系列的執行步驟,這就是我們常說的執行計畫。如果同乙個 sql 執行多次,每次都要重新生成執行計畫,那麼效率就比較低下了,oracle 引入了共享池來實現這方面的共享。同樣,如果乙個資料塊每次讀取都要訪問檔案,那麼效率就不高了,於是 oracle 引入了 db cache 來快取這些資料。同乙個資料塊可能被多個使用者修改,如果每次修改就要直接存檔,那麼效率也會降低,於是 oracle設計了 dbwr 程序,來專門負責將資料塊寫入檔案。
資料檔案是儲存 oracle 資料庫中的資料的,也是 oracle 資料庫中最為核心的檔案。oracle
資料庫中的表、索引等都是記錄在資料檔案中的。其中系統表空間包含的資料檔案裡儲存了資料
庫的元資料(metadata),這部分資料是十分關鍵的,如果 metadata 出現故障,那麼我們在訪問
資料庫的資料時就會發生問題。
db cache是 oracle 資料庫中對效能影響最大的元件,優化 db cache 也是乙個 dba 最基本的職責。搞過軟體開發的人都知道,緩衝區是提高效能的有效機制,db cache 的存在主要是為了提高會話訪問資料檔案中資料的效率。 oracle 的 db cache 機制與其資料儲存結構關係十分緊密,oracle 的資料在檔案中是以 block為單位存放的,因此 db cache 和資料塊緊密對應。在記憶體中,db cache 儲存的就是 block 的完整映象。
1、db cache 是以 block 為單位組織的緩衝區,不同的 block size 的資料塊對應於不同的 db cache。從 oracle 9i 開始,rdbms 支援多種不同塊大小的表空間,如果我們要使用它們,就必須為這種特殊的資料塊大小的資料檔案設定單獨的緩衝池。而預設的 db cache、keep pool、recycle pool 只能用於預設塊大小的表空間。
2、使用者訪問 db cache 的資料比訪問磁碟上的資料,速度要快數十倍甚至上百倍,因此應用系統應該盡可能多地從 db cache 中訪問資料。在大多數情況下,db cache 的命中率越高,訪問效能就越好。
3、db cache 是由一系列共享記憶體組成的,是在 sga 中統一分配的乙個元件。sga 管理的共享記憶體區域是通過類似 shmget,shmat 等 unix 系統呼叫獲取的。根據作業系統及其引數設定的不同,sga 可能是經過多個共享記憶體申請獲取到的記憶體的總和。在 sga 中,系統根據初始化引數的設定,分配相應的 db cache。
剛剛接觸到oracle資料庫系統會有太多新的概念需要一點點理解消化,雖然還不是一名專業的dba但是這樣帶有探索性的學習和認識還是很讓人興喜快樂的,等我實際的應用一段時間,再來和大家更加系統的說明,榮幸與您分享!
分布式資料庫
網路選課系統中分布式資料庫設計 何翠雙王巧雲張麗麗 摘要 關鍵字 選課 分布式 資料庫 distributed system of on line course choosing abstract key words course choosing distributed database 隨著學校...
分布式資料庫
1 背景 我們知道資料是乙個公司的命脈,隨著業務越做越大,資料量也會越來越大,計算也會越來越複雜,效能,可靠性,可擴充套件性的需求就會越來越強烈,這個時候乙個集中式的資料庫顯然已經滿足不了需求了。對於技術決策者來說有兩條路可以走,第一 按照現有的大型資料庫的解決方案,比如sql server clu...
分布式資料庫
一 分布式資料庫的出現的場景 網際網路 軟體國產化 o2o 五新 新零售 新製造,新金融 新資源 新技術 等主題接連提出來,並且在各個行業落地,給資料庫帶來了巨大機會,具體包含3個方向 1.遠超單機資料庫容量的資料儲存和訪問峰值 2.實時資料分析檢索 oltp兼顧olap 3.更高階別的容災需求。這...