程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 數據庫知識 >> SqlServer數據庫 >> 關於SqlServer >> 如何緊急恢復SQL Server數據庫文件

如何緊急恢復SQL Server數據庫文件

編輯:關於SqlServer
 

導讀:很多公司都在開發自己的分布式數據庫架構,且不少公司都可能使用上了,也有很多人在講分布式數據庫架構,這些是真正意義上的分布式數據庫嗎?

若要我加一個詞的話, 我一般說偽分布式或者說所謂的分布式數據庫架構,是跟陳國慶分享的NoSQL一樣,只是起一個簡單且好聽點的名字,之所以談這個話題,就是想與大家分享一下個人對偽分布式數據庫架構的理解及所實踐的。

PPT主要的內容主要有幾點:什麼是分布式數據庫;什麼是偽分布式數據庫;分布式和偽分布式數據庫架構的優缺點;偽分布式數據庫架構適用的場景;二種偽分布式數據庫架構的設計思路,一類適用於電子商務等領域,另外一類適合於SNS游戲等領域。

首先申明二個要點:第一點不支持分布式事務的,肯定不是分布式數據庫;第二點分布式強調的是強調可用性、可靠性和數據一致性,數據一致性又分松散一致性和嚴密一致性,因為分布式數據庫有不同的實現算法,為此數據一致性都有各種差異。

接下來,我們看一下分布式數據庫的定義:由一組存儲在網絡中不同服務器上的數據組成,網絡中每個節點具有獨立執行局部應用的能力,也可以通過網絡通信系統執行全局應用的能力。

為什麼需要偽分布式數據庫產品?是因為集中式數據庫,當數據量越來越大,數據的讀寫量也越來越大,且無法通過垂直增加或升級硬件設備而滿足的,以及越來越成為業務增長的瓶頸,我們就不得不考慮革新,適用一種更加有效、可行的方案解決。

偽分布式數據庫的應用場景,稍微羅列了下:電子商務平台(C2C、B2B、B2C) 、SNS平台、IM即時通信軟件、電子郵件系統、日志分析系統、SNS游戲、其他平台型網站。

大致總結了下,使用偽分布式數據庫架構場景的三要素:

  1. 大數據容量,且垂直升級擴展受限的;
  2. 高並發事務型的;
  3. 數據更新量遠大於數據讀取,且數據更新量非常大;

接下來我們看一下分布式數據庫一個最獨特的架構圖,但是看之前,先了解下分布式數據庫的四個是核心模塊。我們把四個名詞解釋一下:

什麼叫局部數據庫管理系統;

什麼是全局數據庫管理系統;

什麼是全局數據字典;

什麼是通信管理;

l LDBMS

建立和管理局部數據庫,提供場地自治能力,執行局部應用及全局查詢的子查詢;

l GDBMS

提供分布透明性,協調全局事務執行,協調各局部DBMS完成全局應用,保證數據庫全局一致性、執行並發控制、實現更新同步和提供全局恢復等功能;

l 全局數據字典

存放全局概念模式、分片模式、分布模式的定義以及各模式之間映像的定義,存放有關用戶存取權限的定義,保證全局用 戶的權限和數據庫的安全,存放數據完整性約束條件定義;

l 通信管理

實現分布式數據庫各場地之間消息和數據傳遞;

 

 

這是分布式數據庫最復雜的一種結構,每個節點都有一個全局數據字典和全局數據庫管理系統,但市場上的產品中都不會使用這種架構。因為此架構的分布式數據庫產品的實現技術難度高,各個節點之間通信和管理成本高,好處就是全局數據庫管理系統和全局數據字典不會成為單點,為此市場上的產品多是采用多個全局數據庫管理系統和全局數據字典解決單點的問題,但不是每個節點都用。

接下來回到我們的重點:什麼是偽分布數數據庫架構,大家千萬不要像迷戀NoSQL一樣迷戀偽分布式這個名字,同一個道理。偽分布式我簡單的理解就是多個集中式數據庫,再加上數據庫自身復制,最外層再加上開發的軟件和一些其他的組件;

分布式數據庫的優點蠻多的,大致羅列了四點:

1>.數據獨立性:數據邏輯獨立性、物理獨立性、分布獨立惡性;

2>.適當數據的冗余,實現高可用性;

3>.集中和自治相結合的控制結構;

4>.全局的一致性、可串行性、可恢復性;

一個產品有優點,其自然也會存在一些負面的,大致如下

1>.部署復雜,對硬件、網絡等環境要求更高;

2>.事務、數據查詢性能相比較下降;

3>.商業產品費用較貴,開源產品暫時存在瑕疵;

4>.技術實現復雜,開發成本高;

那接下來我們繼續談下偽分布數據庫架構的優缺點。偽分布式的優點就是提供了類似分布式數據庫的數據庫透明性;解決集中式數據庫的擴展局限性;能夠提高數據的訪問性能、可用性和可靠性,因為把很多數據拆到很多不同的服務器上,數據被打散了,而且現在PC服務器的處理能力非常不錯,可以通過偽分布式數據庫架構提供的自動切換功能,使得可用性和可靠性有保障。

偽分布式數據庫架構的實現技術也不難,有很多現成的方案,開發成本也不高。而且我拆分了數據庫之後,可以用一些自動化的工具模塊,使對數據庫的維護成本可控的。  

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved