分布式系統資料庫
⑴ 目前主流的分布式資料庫系統實現方案有哪些
(1)方案一(資料庫保存所有伺服器索引信息)
全對稱結構,沒有中央伺服器
web方案:
只從本地資料庫檢索符合條件的記錄,給出結果
每次檢索都要從本地伺服器的海量數據中進行
資料庫方案:
資料庫保存所有伺服器的索引內容
緩存命中率高的記錄,減少檢索時間
伺服器負載分析:
伺服器負載假設:
一百個結點,每結點一百人同時使用,每個結點一萬條記錄
web伺服器:同時一百線程在本地資料庫伺服器檢索
資料庫伺服器:每次接收一百個查詢請求;每個請求要從一百萬條索引中檢索(最壞的情況);緩沖機制可以稍微減輕負擔
數據更新操作:
同時更新所有資料庫/只更新本地,伺服器間相互同步
方案二(資料庫保存本地索引及少量緩沖)
每高校作為一個結點
所有結點全對稱結構,網路中沒有一個中央伺服器
web方案:
接收到請求時同時多線程向其它伺服器同時搜索(伺服器壓力問題?)
資料庫方案:
資料庫保存本地數據
資料庫保存一定量緩沖數據,
伺服器負載分析:
伺服器負載假設:
一百個結點,每結點一百人同時使用
則每個web伺服器同時發起一萬個線程向其它數據伺服器搜索(oops!)
每個資料庫伺服器會同時接收到一萬個查詢請求(oops!)
採用學習過程只能少量減少查詢請求和web伺服器搜索線程
數據更新操作:
只更新本地
方案三(中央伺服器方案一)
每高校一個結點
每結點結構相同,連接到同一個中央伺服器
web方案
每個查詢向中央伺服器進行,由中央伺服器實行檢索,中央伺服器返回檢索結果
資料庫方案
中央資料庫保存所有索引信息
每結點可以只用小型資料庫保存本地用戶和其它信息即可
伺服器負載分析:
伺服器負載假設:
一百個結點,每結點一百人同時使用,每結點資料記錄一萬條
web伺服器:同時發起一百個進程向中央資料庫查詢
資料庫伺服器(中央):同時接收一萬條查詢請求並返回大容量結果
資料庫伺服器(結點):少量工作
數據更新操作:
只更新中央伺服器
方案四(中央伺服器方案二)
每高校一個結點
每結點結構相同,連接到同一中央伺服器
web方案:
每個查詢向中央伺服器進行,由中央伺服器根據查詢內容進行轉發到結點資料庫,再由結點資料庫返回結果
資料庫方案:
中央伺服器保存各結點分類信息,根據頁面請求的分類轉發查詢到相應伺服器
伺服器負載分析:
伺服器負載假設:
一百個結點,每結點一百人同時使用,每結點資料記錄一萬條,每結點一百個類別
web伺服器:同時一百個進程向中央資料庫查詢
資料庫伺服器(中央):同時接收一萬條請求並轉發
資料庫伺服器(結點):從中央伺服器接收查詢請求,最壞情況下每結點接收到一萬條查詢請求
數據更新操作:
只更新本地伺服器
分類變化時更新中央伺服器
⑵ 什麼是分布式資料庫
分布式軟體系統(Distributed Software Systems)是支持分布式處理的軟體系統,是在由通信網路互聯的多處理機體系結構上執行任務的系統。它包括分布式操作系統、分布式程序設計語言及其編譯(解釋)系統、分布式文件系統和分布式資料庫系統等。
分布式操作系統負責管理分布式處理系統資源和控制分布式程序運行。它和集中式操作系統的區別在於資源管理、進程通信和系統結構等方面。
分布式程序設計語言用於編寫運行於分布式計算機系統上的分布式程序。一個分布式程序由若干個可以獨立執行的程序模塊組成,它們分布於一個分布式處理系統的多台計算機上被同時執行。它與集中式的程序設計語言相比有三個特點:分布性、通信性和穩健性。
分布式文件系統具有執行遠程文件存取的能力,並以透明方式對分布在網路上的文件進行管理和存取。
分布式資料庫系統由分布於多個計算機結點上的若干個資料庫系統組成,它提供有效的存取手段來操縱這些結點上的子資料庫。分布式資料庫在使用上可視為一個完整的資料庫,而實際上它是分布在地理分散的各個結點上。當然,分布在各個結點上的子資料庫在邏輯上是相關的。
---------------
分布式資料庫系統是由若干個站集合而成。這些站又稱為節點,它們在通訊網路中聯接在一起,每個節點都是一個獨立的資料庫系統,它們都擁有各自的資料庫、中央處理機、終端,以及各自的局部資料庫管理系統。因此分布式資料庫系統可以看作是一系列集中式資料庫系統的聯合。它們在邏輯上屬於同一系統,但在物理結構上是分布式的。
分布式資料庫系統已經成為信息處理學科的重要領域,正在迅速發展之中,原因基於以下幾點:
1、它可以解決組織機構分散而數據需要相互聯系的問題。比如銀行系統,總行與各分行處於不同的城市或城市中的各個地區,在業務上它們需要處理各自的數據,也需要彼此之間的交換和處理,這就需要分布式的系統。
2、如果一個組織機構需要增加新的相對自主的組織單位來擴充機構,則分布式資料庫系統可以在對當前機構影響最小的情況下進行擴充。
3、均衡負載的需要。數據的分解採用使局部應用達到最大,這使得各處理機之間的相互干擾降到最低。負載在各處理機之間分擔,可以避免臨界瓶頸。
4、當現有機構中已存在幾個資料庫系統,而且實現全局應用的必要性增加時,就可以由這些資料庫自下而上構成分布式資料庫系統。
5、相等規模的分布式資料庫系統在出現故障的幾率上不會比集中式資料庫系統低,但由於其故障的影響僅限於局部數據應用,因此就整個系統來講它的可靠性是比較高的。
特點
1、在分布式資料庫系統里不強調集中控制概念,它具有一個以全局資料庫管理員為基礎的分層控制結構,但是每個局部資料庫管理員都具有高度的自主權。
2、在分布式資料庫系統中數據獨立性概念也同樣重要,然而增加了一個新的概念,就是分布式透明性。所謂分布式透明性就是在編寫程序時好象數據沒有被分布一樣,因此把數據進行轉移不會影響程序的正確性。但程序的執行速度會有所降低。
3、集中式資料庫系統不同,數據冗餘在分布式系統中被看作是所需要的特性,其原因在於:首先,如果在需要的節點復制數據,則可以提高局部的應用性。其次,當某節點發生故障時,可以操作其它節點上的復制數據,因此這可以增加系統的有效性。當然,在分布式系統中對最佳冗餘度的評價是很復雜的。
分布式系統的類型,大致可以歸為三類:
1、分布式數據,但只有一個總? 據庫,沒有局部資料庫。
2、分層式處理,每一層都有自己的資料庫。
3、充分分散的分布式網路,沒有中央控制部分,各節點之間的聯接方式又可以有多種,如鬆散的聯接,緊密的聯接,動態的聯接,廣播通知式聯接等。
---------------------
什麼是分布式智能?
NI LabVIEW 8的分布式智能結合了相關的技術和工具,解決了分布式系統開發會碰到的一些挑戰。更重要的是,NI LabVIEW 8的分布式智能提供的解決方案不僅令這些挑戰迎刃而解,且易於實施。LabVIEW 8的分布式智能具體包括:
可對分布式系統中的所有結點編程——包括主機和終端。尤為可貴的是,您可以利用LabVIEW圖形化編程方式,對大量不同類型的對象進行編程,如桌面處理器、實時系統、FPGA、PDA、嵌入式微處理器和DSP。
導航所有系統結點的查看系統——LabVIEW Project Explorer。您可使用Project Explorer查看、編輯、運行和調試運行於任何對象上的結點。
經簡化的數據共享編程界面——共享變數。使用共享變數,您可輕松地在系統間(甚至實時系統間)傳輸數據且不影響性能。無通信循環,無RT FIFO,無需低層次TCP函數。您可以利用簡單的對話完成共享變數的配置,從而將數據在各系統間傳輸或將數據連接到不同的數據源。您還可添加記錄、警報、事件等數據服務――一切僅需簡單的對話即可完成。
實現了遠程設備及系統內部或設備及系統之間的同步操作——定時和同步始終是定義高性能測量和控制系統的關鍵問題。利用基於NI技術的系統,探索設備內部並編寫其內部運行機制,從而取得比傳統儀器或PLC方式下更為靈活的解決方案。
--------------------
在分布式計算機操作系統支持下,互連的計算機可以互相協調工作,共同完成一項任務。
也可以這么解釋:
一種計算機硬體的配置方式和相應的功能配置方式。它是一種多處理器的計算機系統,各處理器通過互連網路構成統一的系統。系統採用分布式計算結構,即把原來系統內中央處理器處理的任務分散給相應的處理器,實現不同功能的各個處理器相互協調,共享系統的外設與軟體。這樣就加快了系統的處理速度,簡化了主機的邏輯結構.
易游貝貝祝你好運
⑶ 目前主流的分布式資料庫系統實現方案有哪些
集中式系統,主要指IBM、HP等小型機以上檔次的系統,一個主機帶多個終端。終端沒有數據處理能力,運算全部在主機上進行。現在的銀行系統,大部分都是這種集中式的系統,此外,在大型企業、科研單位、軍隊、政府等也有分布。集中式系統,主要流行與上個世紀。現在還在使用集中式系統的,很大一部分是為了沿用原來的軟體,而這些軟體往往很昂貴。分布式系統,一般採用客戶機/伺服器模式、多層、伺服器集群等技術。是現在的主流。兩種系統,各有各的好處。而且這兩種系統的劃分,一般是從工程的角度來說的,教科書上並沒有這樣的定義。
⑷ 如何實現分布式系統的資料庫同步
你所說的分布式是主從分離么?還是從個表的連接查詢呢? 如果是主從分離,只用查slave就行了,多個表的連接查詢使用join就可以了
⑸ 分布式系統,資料庫設計方面,應注意哪些方面
分布式是分布式,集群是集群。分布式比如有ABCD用戶,將AB提交的數據寫到資料庫1去,CD用戶群組的數據提交到資料庫2去優點:降低單個資料庫的壓力(數據量少,單個資料庫不會被頻繁操作到,如提交事務,少幾個人少去搶占資源),不然,像上面單個資料庫同時要處理四個人的數據,肯定比處理兩個的壓力小得多了(PS:1、2兩個資料庫的內容是不一致的,但是結構是一致的)。響應速度快,一般用於大客戶的解決方案缺點:用的硬體較多,開發成本較高(不像單台機器那樣,不管如何都寫到一台機器上)。集群:構建多個相同資料庫(內容一樣),類似備份(一個數據一生成一條數據,立馬將該數據同步到另一台上面去,查詢時可以多台任選一台,單台壓力低),一台掛了,別一台上面還是有備份的,也有分布式的優點,不過,需要集群的幾台機器網路環境較好,數據推送才能及時。大概就是這樣
⑹ 什麼叫分布式資料庫
1.分布式資料庫是資料庫的一種,是資料庫技術和網路技術的結合產物。
2.各有優點和缺點.分布式資料庫分為邏輯上分部物理上分布及邏輯上分布物理上集中兩種。
是的,分布式數據文件便於資料庫的管理維護。
⑺ 分布式文件系統和分布式資料庫有什麼不同
分布式文件系統(dfs)和分布式資料庫都支持存入,取出和刪除。但是分布式文件系統比較暴力,可以當做key/value的存取。分布式資料庫涉及精煉的數據,傳統的分布式關系型資料庫會定義數據元組的schema,存入取出刪除的粒度較小。
分布式文件系統現在比較出名的有GFS(未開源),HDFS(Hadoop
distributed
file
system)。分布式資料庫現在出名的有Hbase,oceanbase。其中Hbase是基於HDFS,而oceanbase是自己內部實現的分布式文件系統,在此也可以說分布式資料庫以分布式文件系統做基礎存儲。
⑻ 什麼叫分布式、分布式資料庫。網路上面有沒有分布式
分布式表明數據及數據的儲存是分開分散的,不在同一個子網路內。分布資料庫有兩種:一種是物理上分布的,但邏輯上卻是集中的。這種分布式資料庫只適宜用途比較單一的、不大的單位或部門。另一種分布式資料庫系統在物理上和邏輯上都是分布的,也就是所謂聯邦式分布資料庫系統。網路上很多的物流管理,網上銀行,網上商城等等都屬分布式。
⑼ 分布式資料庫系統
分布式資料庫系統(DDBS)包含分布式資料庫管理系統(DDBMS)和分布式資料庫(DDB)。在分布式資料庫系統中,一個應用程序可以對資料庫進行透明操作,資料庫中的數據分別在不同的局部資料庫中存儲、由不同的 DBMS進行管理、在不同的機器上運行、由不同的操作系統支持、被不同的通信網路連接在一起。
一個分布式資料庫在邏輯上是一個統一的整體,在物理上則是分別存儲在不同的物理節點上。一個應用程序通過網路的連接可以訪問分布在不同地理位置的資料庫。它的分布性表現在資料庫中的數據不是存儲在同一場地。更確切地講,不存儲在同一計算機的存儲設備上。這就是與集中式資料庫的區別。從用戶的角度看,一個分布式資料庫系統在邏輯上和集中式資料庫系統一樣,用戶可以在任何一個場地執行全局應用。就好像那些數據是存儲在同一台計算機上,有單個資料庫管理系統(DBMS)管理一樣,用戶並沒有什麼感覺不一樣。
分布式資料庫系統是在集中式資料庫系統的基礎上發展起來的,是計算機技術和網路技術結合的產物。分布式資料庫系統適合於單位分散的部門,允許各個部門將其常用的數據存儲在本地,實施就地存放本地使用,從而提高響應速度,降低通信費用。分布式資料庫系統與集中式資料庫系統相比具有可擴展性,通過增加適當的數據冗餘,提高系統的可靠性。在集中式資料庫中,盡量減少冗餘度是系統目標之一.其原因是,冗餘數據浪費存儲空間,而且容易造成各副本之間的不一致性.而為了保證數據的一致性,系統要付出一定的維護代價.減少冗餘度的目標是用數據共享來達到的。而在分布式資料庫中卻希望增加冗餘數據,在不同的場地存儲同一數據的多個副本,其原因是:①.提高系統的可靠性、可用性當某一場地出現故障時,系統可以對另一場地上的相同副本進行操作,不會因一處故障而造成整個系統的癱瘓。②.提高系統性能系統可以根據距離選擇離用戶最近的數據副本進行操作,減少通信代價,改善整個系統的性能。
⑽ 分布式系統為什麼要選mysql資料庫
分布式系統看它是否支持事務,如果用在統計分析場景中,不需要支持事務,這時候分布式的各個節點,選擇列存儲更好,選擇mysql是一種錯誤,它不適合分析型場景。
如果是事務場景,並發數和數據量都極大,需要分布式場景, 將數據按照一定的規則分布在不同的伺服器(節點)上,每個節點採用某類型的行存資料庫, 如果要滿足需求的行存資料庫需要有以下特點
1、支持事務;
2、支持高並發的能力;
3、在與分布式中間件通訊時,能夠為了適配業務的需求,可以做些定製開發;
4、數據量增大,進行拓展的時候,數據操作方便;
5、核心組件升級容易;
6、維護容易;
綜上所述,目前可選的 是mysql為最優。