解析:怎樣理解分布處理和分布式數據庫
壹個分布式數據庫在用戶面前為單個邏輯數據庫,但實際上是由存儲在多臺計算機上的壹組數據庫組成。在幾臺計算機 上的數據庫通過網絡可同時修改和存取,每壹數據庫受它的局部的DBMS控制。分布式數據庫中每壹個數據庫服務器合作地維護全局數據庫的壹致性。 在系統中的每壹臺計算機稱為結點。如果壹結點具有管理數據庫 軟件,該結點稱為數據庫服務器。如果壹個結點為請求服務器的信息的壹應用,該結點稱為客戶。在ORACLE客戶,執行數據庫應用,可存取數據信息和與用戶交互。在服務器,執行ORACLE軟件,處理對ORACLE數據庫並發、***享數據存取。ORACLE允許上述兩部分在同壹臺計算機上,但當客戶部分和服務器部分是由網連接的不同計算機上時,更有效。 分布處理是由多臺處理機分擔單個任務的處理。在ORACLE數據庫系統中分布處理的例子如: 客戶和服務器是位於網絡連接的不同計算機上。 單臺計算機上有多個處理器,不同處理器分別執行客戶應用。 SQL*NET是ORACLE網絡接口,允許運行在網絡工作站的ORACLE工具和服務器上,可存取、修改、***享和存儲在其它服務器上的數據。SAQL*NET可被認為是網絡通信的程序接口。SQL*NET利用通信協議和應用程序接口(API)為OARCLE提供壹個分布式數據庫和分布處理。 SQL*NET驅動器為在數據庫服務器上運行的ORACLE進程與ORACLE工具的用戶進程之間提供壹個接口。 參與分布式數據庫的每壹服務器是分別地獨立地管理數據庫,好 像每壹數據庫不是網絡化的數據庫。每壹個數據庫獨立地被管理,稱為場地自治性。場地自治性有下列好處: ◆系統的結點可反映公司的邏輯組織。 ◆由局部數據庫管理員控制局部數據,這樣每壹個數據庫管理員責任域要 小壹些,可更好管理。 ◆只要壹個數據庫和網絡是可用,那麽全局數據庫可部分可用。不會因壹個數據庫的故 障而停止全部操作或引起性能瓶頸。 ◆故障恢復通常在單個結點上進行。 ◆每個局部數據庫存在壹個數據字典。 ◆結點可獨立地升級軟件。 可從分布式數據庫的所有結點存取模式對象,因此正像非分布的局部的DBMS,必須提供壹種機制,可在局部數據庫中引用壹個對象。分布式DBMS必須提供壹種命名模式,以致分布式數據庫中壹個對象可在應用中唯壹標識和引用。壹般彩在層次結構的每壹層實施唯壹性。分布式DVMS簡單地擴充層次命名模型,實施在網絡上唯壹數據庫命名。因此壹個對象的全局對象名保證在分布式數據庫內是唯壹。 ORACLE允許在SQL語句中使用佤對象名引用分布式數據庫中的模式對象(表、視圖和過程)。在ORACLE中,壹個模式對象的全局名由三部分組成:包含對象的模式名、對象名、數據庫名、其形式如: SCOTT.EMP@SALES.DIVISION3.ACME.COM 其中SCOTT為模式名,EMP為表名,@符號之後為數據庫名. 壹個遠程查詢為壹查詢,是從壹個或多個遠程表中選擇信息,這些表駐留在同壹個遠程結點. 壹個分布式查詢可從兩個或多個結點檢索數據.壹個分布式更新可修改兩個或兩個以上結點的數據. 壹個遠程事務為壹個事務,包含壹人或多個遠程語句,它所引用的全部是在同壹個遠程結點上.壹個分布式事務中壹個事務,包含壹個或多個語句修改分布式數據庫的兩個或多個不同結點的數據. 在分布式數據庫中,事務控制必須在網絡上直轄市,保證數據壹致性.兩階段提交機制保證參與分布式事務的全部數據庫服務器是全部提交或全部回滾事務中的語句. ORACLE分布式數據庫系統結構可由ORACLE數據庫管理員為終端用戶和應用提供位置透明性,利用視圖、同義詞、過程可提供ORACLE分布式數據庫系統中的位置透明性. ORACLE允許在SELECT(查詢)、INSERT、UPDATE、DELETE、SELECT…FOR UPDATE和LOCK TABLE語句中引用遠程數據。對於查詢,包含有連接、聚合、子查詢和SELECT …FOR UPDATE,可引用本地的、遠程的表和視圖。對於UPDATE、INSERT、DELETE和LOCK TABLE語句可引用本地的和遠程的表。註意在引用LONG和LONG RAW列、序列、修改表和封鎖表時,必須位於同壹個結點。ORACLE不允許作遠程DDL語句。 在單場地或分布式數據庫中,所有事務都是用COMMIT或ROLLBACK語句中止。ORACLE提供兩種機制實現分布式數據庫中表重復的透明性:表快照提供異步的表重復;觸發器實現同步的表的重復。在兩種情況下,都實現了對表重復的透明性。