資料庫架構
『壹』 什麼叫資料庫結構
資料庫結構是指在計算機的存儲設備上合理存放的相關聯的有結構的數據集合的結構。一個資料庫結構含有各種成分,包括資料庫、數據表、欄位等。
資料庫(Database)
Visual Basic中使用的資料庫是關系型資料庫(Relational Database)。一個資料庫由一個或一組數據表組成。每個資料庫都以文件的形式存放在磁碟上,即對應於一個物理文件。不同的資料庫,與物理文件對應的方式也不一樣。對於dBASE,FoxPro和Paradox格式的資料庫來說,一個數據表就是一個單獨的資料庫文件,而對於Microsoft Access、Btrieve格式的資料庫來說,一個資料庫文件可以含有多個數據表。
1、數據表(Table)
簡稱表,由一組數據記錄組成,資料庫中的數據是以表為單位進行組織的。一個表是一組相關的按行排列的數據;每個表中都含有相同類型的信息。
表實際上是一個二維表格,例如,一個班所有學生的考試成績,可以存放在一個表中,表中的每一行對應一個學生,這一行包括學生的學號,姓名及各門課程成績。
2、記錄(Record)
表中的每一行稱為一個記錄,它由若干個欄位組成。
3、欄位(Field)
也稱域。表中的每一列稱為一個欄位。每個欄位都有相應的描述信息,如數據類型、數據寬度等。
(1)資料庫架構擴展閱讀:
資料庫結構的其他組成結構:
1、索引(Index)
為了提高訪問資料庫的效率,可以對資料庫使用索引。當資料庫較大時,為了查找指定的記錄,則使用索引和不使用索引的效率有很大差別。
索引實際上是一種特殊類型的表,其中含有關鍵欄位的值(由用戶定義)和指向實際記錄位置的指針,這些值和指針按照特定的順序(也由用戶定義)存儲,從而可以以較快的速度查找到所需要的數據記錄。
2、查詢(Query)
一條SQL(結構化查詢語言)命令,用來從一個或多個表中獲取一組指定的記錄,或者對某個表執行指定的操作。當從資料庫中讀取數據時,往往希望讀出的數據符合某些條件,並且能按某個欄位排序。使用SQL,可以使這一操作容易實現而且更加有效。
SQL是非過程化語言(有人稱為第四代語言),在用它查找指定的記錄時,只需指出做什麼,不必說明如何做。每個語句可以看作是一個查詢(query),根據這個查詢,可以得到需要的查詢結果。
3、過濾器(Filter)
過濾器是資料庫的一個組成部分,它把索引和排序結合起來,用來設置條件,然後根據給定的條件輸出所需要的數據。
4、視圖(view)
數據的視圖指的是查找到(或者處理)的記錄數和顯示(或者進行處理)這些記錄的順序。在一般情況下,視圖由過濾器和索引控制。
『貳』 如何構建資料庫的主從架構
「資料庫」主要有資料庫外部體系結構、內部體系結構兩種。
從資料庫最終用戶角度看,資料庫系統的結構分為單用戶結構、主從式結構、分布式結構、客戶/伺服器、瀏覽器/應用伺服器/資料庫伺服器多層結構,這是資料庫外部體系結構。
物理存儲結構、邏輯存儲結構、內存結構和實例進程結構,這是內部體系結構。
『叄』 資料庫-架構和資料庫-管理指的是什麼
資料庫架構:
下面是基於SQLserver資料庫來談的。
SQLServer經過這些年的發展,其實已經有很多很好的技術可以使用,如Replication、SSB、Cluster、Mirroring等(可以參考我在SQLServer DBA 三十問和SQLServer 高可用、高性能和高保護延伸 中的一些技術方面的知識),而且這些技術在可靠性方面已經通過了市場的認可,有很多公司在為提高其程序的可靠性、安全性和高效性等方面或多或少的採用了其中的某些技術,以下就我接觸過的這些技術方面的應用,主要針對網站這種流量很大,讀多寫少的應用,就資料庫架構方面做些探討,希望對各位有所幫助,如有不對的地方,歡迎大家指正和交流。
資料庫架構需要考慮的問題:
數據可靠和一致性;
數據容災;
當數據量和訪問壓力變大時,方便擴充;
高度可用,出問題時能及時恢復,無單點故障;
不應因為某一台機器出現問題,導致整網性能的急劇下降;
方便維護。
資料庫管理:
資料庫管理(Database Manager)是有關建立、存儲、修改和存取資料庫中信息的技術,是指為保證資料庫系統的正常運行和服務質量,有關人員須進行的技術管理工作。負責這些技術管理工作的個人或集體稱為資料庫管理員(DBA)。資料庫管理的主要內容有:資料庫的調優、資料庫的重組、資料庫的重構、資料庫的安全管控、報錯問題的分析和匯總和處理、資料庫數據的日常備份. 資料庫的建立:資料庫的設計只是提供了數據的類型、邏輯結構、聯系、約束和存儲結構等有關數據的描述。這些描述稱為數據模式。
『肆』 資料庫組織結構
相山地區地學空間資料庫是一個三維結構的層次資料庫,每一個專題圖層作為資料庫的一個層面,它們是垂直疊放的。該資料庫主要由地質圖數據子庫和影像數據子庫所組成(文檔和二維表格數據未建庫) ,影像數據子庫由航放數據組、重磁數據組、遙感數據組和 DEM 數據構成。具體劃分見表 2.2。
表2.2 相山地區資料庫圖層的劃分及數據類型
以火山岩系圖層為例,其屬性表結構見表 2.3,屬性表見圖 2.2。
表2.3 火山岩系圖層屬性表結構
圖2.2 火山岩系圖層屬性表
『伍』 資料庫的主要架構有幾種
從資料庫最終用戶角度看,資料庫系統的結構分為單用戶結構、主從式結構、分布式結構、客戶/伺服器、瀏覽器/應用伺服器/資料庫伺服器多層結構。這是資料庫外部體系結構。
物理存儲結構、邏輯存儲結構、內存結構和實例進程結構。這是內部體系結構
『陸』 什麼是架構,SQL中的架構有哪些
架構(Schema)是一組資料庫對象的集合,它被單個負責人(可以是用戶或角色)所擁有並構成唯一命名空間。你可以將架構看成是對象的容器。
在 SQL Server 2000 中,用戶(User)和架構是隱含關聯的,即每個用戶擁有與其同名的架構。因此要刪除一個用戶,必須先刪除或修改這個用戶所擁有的所有資料庫對象。
在 SQL Server 2005 中,架構和創建它的資料庫用戶不再關聯,完全限定名(fully-qualified name)現在包含4個部分:server.database.schema.object
1. 體系結構(Architecture)
體系結構亦可稱為架構,所謂軟體架構,根據Perry 和Wolfe之定義:Software Architecture = {Elements,Forms, Rationale / Constraint },也就是軟體主架構 = {組件元素,元素互助合作之模式,基礎要求與限制}。Philippe Kruchten採用上面的定義,並說明主架構之設計就是:將各組件元素以某些理想的合作模式組織起來,以達成系統的基本功能和限制。體系結構又分為多種樣式,如Pipes and Filters等。
2. 框架(Framework)
框架亦可稱為應用架構,框架的一般定義就是:在特定領域基於體系結構的可重用的設計。也可以認為框架是體系結構在特定領域下的應用。框架比較出名的例子就是MVC。
3. 庫(Library)
庫應該是可重用的、相互協作的資源的集合,供開發人員進行重復調用。它與框架的主要區別在於運行時與程序的調用關系。庫是被程序調用,而框架則調用程序。比較好的庫有JDK。
4. 設計模式(Design Pattern)
設計模式大家應該很熟悉,尤其四人幫所寫的書更是家喻戶曉。「四人幫」將模式描述為「在一定的環境中解決某一問題的方案」。這三個事物 — 問題、解決方案和環境 — 是模式的基本要素。給模式一個名稱,考慮使用模式將產生的結果和提供一個或多個示例,對於說明模式也都是有用的。
5. 平台(PlatForm)
由多種系統構成,其中也可以包含硬體部分。
對於以上的概念有一個比較清楚的認識之後,就可以在軟體的開發過程中進行應用。理論和實踐是缺一不可的,相輔相成的。沒有理論的指導,實踐就缺乏基礎;沒有實踐的證明,理論就缺乏依據,因此我一直認為:對於當代的程序員,在有一定的實踐基礎後,必須學習更深的理論知識。無論你是從那方面先開始學習的。
在軟體的開發過程中,從許多過程實踐和方法中,大致可以提煉出五大步驟:需求、分析、設計、編碼、測試。而體系結構是軟體的骨架,是最重要的基礎。體系結構是涉及到每一步驟中。一般在獲取需要的同時,就應該開始分析軟體的體系結構。體系結構現在一般是各個大的功能模塊組合成,然後描述各個部分的關系。
我一般認為框架是體系結構中每個模塊中更細小的結構。如需要表示web技術,就會用到MVC框架,而web功能只是整個軟體體系中的一個功能模塊。每個框架可以有許多個實例,如用java實現的MVC框架structs。
而在框架之下就是設計模式,設計模式一般是應用中框架之中的,也可以說是對框架的補充。因為框架只是提供了一個環境,需要我們我裡面填入更多的東西。無論是否應用了設計模式,你都可以實現軟體的功能,而正確應用了設計模式,是我們對前人軟體的設計或實現方法的一種繼承,從而讓你的軟體更軟。
體系結構是可以從不同視角來進行分析的,所以軟體體系結構的設計可以按照不同的視角來進行的。按4+1 views的論述,那是四種views:邏輯、開發、過程、物理和場景。因此體系結構是逐漸細化的,你不可能開始就拿出一個完美的體系結構,而只能根據開發過程逐漸對體系結構進行細化。
打個比方:如果我們准備建一個房子,那房子如果按功能來分:牆壁、地板、照明等,它是按那種樣式來組成的,房子是四方的還是圓形的等,這樣就組成了房子的體系結構。在體系結構之下,我們可以把框架應用在每個模塊中,例如牆壁,我們准備應用什麼框架。牆壁可以包括:窗戶、門等。窗戶和門的組成的就是一種框架。而窗戶是什麼形狀的或者是大還是小,是要為了實現屋內的亮度的,因此挑選什麼樣的窗戶就是設計模式。
『柒』 資料庫系統中的幾種架構及處理方式
主從式結構
是指一個主機帶多個終端的多用戶結構。在這種結構中,資料庫系統,包括:應用程序、DBMS、數據,都集中存放在主機上.所有處理任務都由主機來完成,各個用戶通過主機的終端並發地存取資料庫,共享數據資源.
主從式結構的優點是簡單,數據易於管理與維護。缺點是當終端用戶數目增加到一定程度後,主機的任務會過分繁重,形成瓶頸,從而使系統性能大幅度下降。另外當主機出現故障時,整個系統都不能使用,因此系統的可靠性不高。
集中式架構
是一種遠程桌面控制技術,使用此技術,遠程用戶能夠使用任何類型的終端系統,通過任何類型的網路連接,使用遠程伺服器上的應用程序。用戶甚至能夠使用同一個終端系統訪問甚至遠程多個不同平台、不同網路協議伺服器上的多個應用,這些應用被集成在一個訪問界面中,操作簡便。
C/S架構
(Client/Server或客戶/伺服器模式):Client和Server常常分別處在相距很遠的兩台計算機上,Client程序的任務是將用戶的要求提交給Server程序,再將Server程序返回的結果以特定的形式顯示給用戶;Server程序的任務是接收客戶程序提出的服務請求,進行相應的處理,再將結果返回給客戶程序。
C/S (Client/Server)結構,即大家熟知的客戶機和伺服器結構。它是軟體系統體系結構,通過它可以充分利用兩端硬體環境的優勢,將任務合理分配到Client端和Server端來實現,降低了系統的通訊開銷。目前大多數應用軟體系統都是Client/Server形式的兩層結構,由於現在的軟體應用系統正在向分布式的Web應用發展,Web和Client/Server 應用都可以進行同樣的業務處理,應用不同的模塊共享邏輯組件;因此,內部的和外部的用戶都可以訪問新的和現有的應用系統,通過現有應用系統中的邏輯可以擴展出新的應用系統。這也就是目前應用系統的發展方向。
傳統的C/S體系結構雖然採用的是開放模式,但這只是系統開發一級的開放性,在特定的應用中無論是Client端還是Server端都還需要特定的軟體支持。由於沒能提供用戶真正期望的開放環境,C/S結構的軟體需要針對不同的操作系統系統開發不同版本的軟體, 加之產品的更新換代十分快,已經很難適應百台電腦以上區域網用戶同時使用。而且代價高, 效率低。
C/S結構的優點
C/S結構的優點是能充分發揮客戶端PC的處理能力,很多工作可以在客戶端處理後再提交給伺服器。對應的優點就是客戶端響應速度快。缺點主要有以下幾個:
只適用於區域網。而隨著互聯網的飛速發展,移動辦公和分布式辦公越來越普及,這需要我們的系統具有擴展性。這種方式遠程訪問需要專門的技術,同時要對系統進行專門的設計來處理分布式的數據。
客戶端需要安裝專用的客戶端軟體。首先涉及到安裝的工作量,其次任何一台電腦出問題,如病毒、硬體損壞,都需要進行安裝或維護。特別是有很多分部或專賣店的情況,不是工作量的問題,而是路程的問題。還有,系統軟體升級時,每一台客戶機需要重新安裝,其維護和升級成本非常高。
對客戶端的操作系統一般也會有限制。可能適應於Win98, 但不能用於win2000或Windows XP。或者不適用於微軟新的操作系統等等,更不用說Linux、Unix等。
『捌』 資料庫架構怎麼劃分
資料庫的架構,如果你不清楚怎麼劃分的話,說明你的技術還有待提高,可以查看一下相關的書本書名或者是自己看一看。
『玖』 傳統資料庫結構主要有什麼
傳統資料庫是關系型資料庫,開發這種資料庫的目的,是處理永久、穩定的數據。
關系資料庫強調維護數據的完整性、一致性,但很難顧及有關數據及其處理的定時限制,不能滿足工業生產管理實時應用的需要,因為實時事務要求系統能較准確地預報事務的運行時間。