版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
1、數(shù)據(jù)庫( database,有時也可拼為data base)也可稱為電子數(shù)據(jù)庫,是為了方便計算機的快速查找和檢索而專門組織起來的一組集合、數(shù)據(jù)和信息。 由于各種數(shù)據(jù)處理操作命令的支持,數(shù)據(jù)庫的數(shù)據(jù)存儲、恢復、修改和刪除得以簡化。數(shù)據(jù)庫可以被存儲在磁盤、磁帶、光盤或其它的一些二級存儲設(shè)備上。數(shù)據(jù)庫由一個或一套文件組成。這些文件的信息可以被分解為多個記錄,每個記錄又包含一個或多個字段。字段是數(shù)據(jù)存儲的基本單位,通常用來表示與數(shù)據(jù)庫所描述的實體相關(guān)的某一屬性信息。用戶通過使用鍵盤和各種排序命令,能夠快速查找、整理、 分組和選擇在許多記錄中的字段,還可以檢索某一類數(shù)據(jù)或創(chuàng)建報表。除了最簡單的, 所有數(shù)
2、據(jù)庫都有復雜的數(shù)據(jù)關(guān)系和鏈接。用于處理和創(chuàng)建、訪問和維護數(shù)據(jù)庫記錄相關(guān)任務的系統(tǒng)軟件包被稱為數(shù)據(jù)庫管理系統(tǒng)(DBMS)。 DBMS 軟件包中的程序可以在數(shù)據(jù)庫和用戶之間創(chuàng)建接口。(這些用戶可以是應用程序員,管理員及其他需要信息的人員,和各種OS程序)一個 DBMS 可以組織、 處理和表示從數(shù)據(jù)庫中選出來的數(shù)據(jù)元。這個功能可以讓決策者能夠搜索、 探索和查詢數(shù)據(jù)庫內(nèi)容,從而獲取到常規(guī)報告中不可用的、非經(jīng)常性和無計劃的答案。這些答案最初可能是模糊或者定義不清晰的,但是人們可以通過“瀏覽”數(shù)據(jù)庫直到獲取他們所需要的信息。簡而言之,DBMS 會“管理”存儲的數(shù)據(jù)項,以及結(jié)合公共數(shù)據(jù)庫中所需的數(shù)據(jù)項用以回
3、答那些非程序員的查詢。DBMS 由三個主要的部分組成:( 1)一個用來存儲和檢索文件數(shù)據(jù)的存儲子系統(tǒng);( 2)一個提供組織數(shù)據(jù)以及添加,刪除,維護,更新數(shù)據(jù)的方法的建模和操作子系統(tǒng);(3)還有一個是數(shù)據(jù)庫和用戶之間的接口。在提高數(shù)據(jù)庫管理系統(tǒng)的價值和有效性方面正在展現(xiàn)以下一些重要發(fā)展趨勢:管理人員:需要最新的信息以做出有效的決策??蛻簦盒枰絹碓綇碗s的信息服務以及更多的有關(guān)其訂單,發(fā)票和賬號的當前信息。用戶:發(fā)現(xiàn)他們可以使用傳統(tǒng)的程序設(shè)計語言,在很短的一段時間內(nèi)用數(shù)據(jù)庫系統(tǒng)開發(fā)客戶應用程序。商業(yè)公司:發(fā)現(xiàn)了信息的戰(zhàn)略價值,他們利用數(shù)據(jù)庫系統(tǒng)領(lǐng)先于競爭對手。數(shù)據(jù)庫模型數(shù)據(jù)庫模型描述了在數(shù)據(jù)庫中結(jié)
4、構(gòu)化和操作數(shù)據(jù)的方法,模型的結(jié)構(gòu)部分描述了數(shù)據(jù)如何被描述 (例如樹、 表等) :模型的操作部分規(guī)定了添加、刪除、顯示、 維護、打印、查詢、選擇、分類和更新數(shù)據(jù)的操作。分層模型第一個數(shù)據(jù)庫管理系統(tǒng)使用的是分層結(jié)構(gòu)模型,該模型把記錄設(shè)計成樹形結(jié)構(gòu)。一些記錄是根記錄, 而其它所有記錄則是唯一的父記錄。樹形結(jié)構(gòu)的設(shè)計反應了哪些數(shù)據(jù)會被首先使用, 樹的根記錄會被首先使用,然后是根節(jié)點下面的記錄,等等。分層模型得以發(fā)展是因為分層關(guān)系在商業(yè)領(lǐng)域普遍存在。如你所知,一個組織結(jié)構(gòu)圖表通常描述了一種分層關(guān)系:高層管理人員在最高層,中層管理人員在更低的層次,負責具體事務的雇員在最底層。在一個嚴格的分層結(jié)構(gòu)體系中,
5、每個層次的管理者都有許多雇員或多個層次的雇員, 但是每個雇員只有一個管理者。分層結(jié)構(gòu)就是以數(shù)據(jù)之間的一對多關(guān)系為特征的。在分層方法中, 在創(chuàng)建數(shù)據(jù)庫的時候每個關(guān)系必須得明確定義。在分層數(shù)據(jù)庫中的每一記錄只能包含一個關(guān)鍵字段,每個關(guān)系只被允許存在于兩個字段之間。由于數(shù)據(jù)并不總是遵循這一嚴格分層結(jié)構(gòu)關(guān)系,所以可能會出現(xiàn)一些問題。關(guān)系模型1970 年,關(guān)于數(shù)據(jù)庫的研究產(chǎn)生了一個重大突破,E. F. Codd提出了一種完全不同的方法來管理數(shù)據(jù)庫。這種方法被稱為關(guān)系模型,它使用了一個表作為數(shù)據(jù)結(jié)構(gòu)。關(guān)系數(shù)據(jù)庫是被最廣泛使用的數(shù)據(jù)庫結(jié)構(gòu)。 數(shù)據(jù)被組織到對應的表。 每個表由被稱為記錄的行和被稱為字段的列組成
6、。 每個記錄包含了專用項目的字段值。 例如,一張表中包含了雇員的信息,一個記錄則包含了數(shù)據(jù)的字段,比如一個人的姓、名和所居住的街道地址。結(jié)構(gòu)化查詢語言(SQL)是一種用于關(guān)系數(shù)據(jù)庫中處理數(shù)據(jù)的查詢語言。它是非程序性或者描述性語言, 用戶只須指定一種類似于英語的描述, 用來確定操作, 記錄或描述記錄組合。查詢優(yōu)化編輯器會把這些描述翻譯成數(shù)據(jù)庫的操作過程并執(zhí)行。網(wǎng)狀模型網(wǎng)絡(luò)模型通過在數(shù)據(jù)之間創(chuàng)建一個鏈表結(jié)構(gòu),使得子記錄可以鏈接到多個父記錄。這種記錄和鏈接結(jié)合在一起的方法,就是所謂的指針。它是指向一個記錄存儲位置的存儲地址。使用網(wǎng)狀方法, 一個子記錄可以鏈接到一個關(guān)鍵記錄。同時, 它本身也可以作為一
7、個關(guān)鍵記錄與其它一系列記錄相鏈接。在歷史上, 網(wǎng)狀模型比其它數(shù)據(jù)庫模型更具性能上的優(yōu)勢。但是在今天, 這種優(yōu)勢的特點只有在大容量和高速處理過程中才是最重要的,比如自動柜員機網(wǎng)絡(luò),航空預定系統(tǒng)等。分層和網(wǎng)狀數(shù)據(jù)庫都是專用程序。如果開發(fā)一個新的應用程序,那么維護數(shù)據(jù)的一致性的是非常困難的。例如,假如開發(fā)一個新的退休金應用程序,雖然數(shù)據(jù)是相同的,但是必須創(chuàng)建一個新的數(shù)據(jù)庫。對象模型最新的數(shù)據(jù)庫管理方法是使用對象模型, 記錄由被稱為對象的實體表示, 對象既可以存儲數(shù)據(jù),又可以提供方法或程序執(zhí)行特定的任務。對象模型使用的查詢語言與開發(fā)數(shù)據(jù)庫程序所使用的面向?qū)ο蟮某绦蛟O(shè)計語言是一樣的,這就產(chǎn)生了問題,因為
8、沒有像SQL這樣簡單統(tǒng)一的查詢語言。對象模型相對較新,只有很少的面向?qū)ο髷?shù)據(jù)庫存在。但是對象模型已經(jīng)引起關(guān)注,因為人們希望在選擇開發(fā)面向?qū)ο蟪绦虻臅r候希望有一個基于面向?qū)ο蟮臄?shù)據(jù)庫。分布式數(shù)據(jù)庫同樣,分布式數(shù)據(jù)庫是一種數(shù)據(jù)庫的各個部分都分別存儲在物理上相互分離的計算機上的數(shù)據(jù)庫。分布式數(shù)據(jù)庫的一個目標是訪問數(shù)據(jù)時不考慮其存儲的物理位置。要注意的是,當用戶和數(shù)據(jù)分開時,通信和網(wǎng)絡(luò)則開始發(fā)揮作用。分布式數(shù)據(jù)庫需要常駐于大型主機上的軟件,這些軟件類似個人和大型機之間的橋梁,解決數(shù)據(jù)格式不兼容的問題。在理想情況下, 大型主機上的數(shù)據(jù)庫看起來像是一個大的信息倉庫,而大部分處理則在個人計算機上完成。分布式
9、數(shù)據(jù)庫的一個缺點是它經(jīng)常以主機中心模型為基礎(chǔ),大型主機看起來像個主人,而個人計算機就好比一個奴隸。這個方法也有一些優(yōu)勢。通過集中控制下的數(shù)據(jù)庫,前面提到的數(shù)據(jù)完整性和安全性的問題都得以解決。但是如今個人計算機、部門計算機, 和分布式處理都需要計算機和計算機上之間以及應用程序之間在相等或?qū)Φ鹊幕A(chǔ)上進行相互通信。在數(shù)據(jù)庫中,客戶機 / 服務器模型提供用于分發(fā)數(shù)據(jù)庫的框架。一種利用許多相互連接的計算機上運行的數(shù)據(jù)庫應用程序的方法是把應用程序分解為相互獨立的又相互合作的部分??蛻舳耸且粋€最終用戶或通過網(wǎng)絡(luò)申請資源的計算機程序。服務器是一個運行著的計算機軟件,存儲著那些通過網(wǎng)絡(luò)傳輸?shù)纳暾?。當申請的資源
10、是數(shù)據(jù)庫中的數(shù)據(jù)時,客戶機 / 服務器模型則為分布式數(shù)據(jù)庫提供了框架結(jié)構(gòu)。文本服務器是一種通過網(wǎng)絡(luò)提供文件訪問的軟件。專用文本服務器是指一臺指定作為文本服務器的計算機。這是有用的,例如,如果文件很大并且要求快速訪問,在這種情況下,一臺微型計算機或大型主機將會被用作文本服務器。分布式文件服務器把文件分散在多個,而不是單獨一個計算機上。后一種文本服務器的優(yōu)勢包括存儲和檢索其它計算機上的文件,并且可以消除每臺計算機上的重復文件。但是, 這樣會有一個很大的缺點。因為讀寫請求需要通過網(wǎng)絡(luò)傳播,所以在刷新文件的時候可能會產(chǎn)生問題。例如,兩個用戶同時請求同一個文件上的同一條記錄并改變它時。 解決這個問題的辦
11、法叫做記錄鎖定,這意味著在請求同一記錄時, 第二個請求必須得等到第一個請求完成時才可獲取到請求記錄。同時,另外一些用戶可以查看這個記錄,但是同樣不可以對這個記錄做改變。數(shù)據(jù)庫服務器是一個通過網(wǎng)絡(luò)為數(shù)據(jù)庫申請?zhí)峁┓盏能浖?,假設(shè)一個用戶在他或她的個人計算機上輸入一條數(shù)據(jù)查詢指令,如果應用程序按照客戶端/ 服務器模型設(shè)計,那么個人計算機上的查詢語言通過網(wǎng)絡(luò)傳送數(shù)據(jù)庫服務器上,并且當發(fā)現(xiàn)請求的數(shù)據(jù)時會發(fā)出通知。在工程界中可以找到許多分布式數(shù)據(jù)庫系統(tǒng)的例子。如 SUN公司的網(wǎng)絡(luò)文件系統(tǒng) ( NFS)被應用到計算機輔助工程應用程序中,將數(shù)據(jù)分散到由SUN工作站組成的網(wǎng)絡(luò)上的不同硬盤之間。分布式數(shù)據(jù)庫
12、是一種革命性的進步, 因為把數(shù)據(jù)放在它被使用的地方是最合理的。例如,一個大公司各個部門的計算機應該把數(shù)據(jù)存放在本地,當公司的管理人員想整合部門數(shù)據(jù)時,這些數(shù)據(jù)應當允許被授權(quán)訪問。DBMS軟件會保護數(shù)據(jù)庫的安全性和完整性,分布式數(shù)據(jù)庫和非分布式數(shù)據(jù)庫它們的用戶而言將沒有區(qū)別。Database Management Systems( 3th Edition ),Wiley ,2004,5-12A introduction to Database Management SystemRaghu RamakrishnanA database (sometimes spelled data base) i
13、s also called an electronic database, referringto any collection of data, or information, that is specially organized for rapid search and retrieval by a computer. Databases are structured to facilitate the storage, retrieval , modification, and deletion of data in conjunction with various data-proc
14、essing operations .Databases can be stored on magnetic disk or tape, optical disk, or some other secondary storage device.A database consists of a file or a set of files. The information in these files may be broken down into records, each of which consists of one or more fields. Fields are the basi
15、c units of data storage , and each field typically contains information pertaining to one aspect or attribute of theentity described by the database . Using keywords and various sorting commands, users canrapidly search , rearrange, group,and select the fieldsin many records to retrieve or createrep
16、orts on particular aggregate of data.Complex data relationships and linkages may be found in all but the simplest databases .The system software package that handles the difficult tasks associated with creating ,accessing, and maintaining database records is called a database management system(DBMS)
17、.The programs in a DBMS package establish an interface between the database itself and the users of the database. (These users may be applications programmers, managers and others with information needs, and various OS programs.)A DBMS can organize, process, and present selected data elements form t
18、he database. This capability enables decision makers to search, probe, and query database contents in orderto extract answers to nonrecurring and unplanned questions that aren reports. These questions might initially be vague and/or poorly t available in regular defined ,but people can“browse ” thro
19、ugh the database until they have the needed information. In short, the DBMSwill “ manage” the stored data items and assemble the needed items from the commondatabase in response to the queries of those who arentprogrammers.A database management system (DBMS) is composed of three major parts:(1)a sto
20、ragesubsystem that stores and retrieves data in files;(2) a modeling and manipulation subsystem thatprovides the means with which to organize the data and to add , delete, maintain, and update the data;(3)and an interface between the DBMS and its users. Several major trends are emerging that enhance
21、 the value and usefulness of database management systems;Managers: who require more up-to-data information to make effective decisionCustomers: who demand increasingly sophisticated information services and more current information about the status of their orders, invoices, and accounts.Users: who
22、find that they can develop custom applications with database systems in a fraction of the time it takes to use traditional programming languages.Organizations : that discover information has a strategic value; they utilize their database systems to gain an edge over their competitors.The Database Mo
23、delA data model describes a way to structure and manipulate the data in a database. The structural part of the model specifies how data should be represented(such as tree, tables, andso on ).The manipulative part of the model specifies the operation with which to add, delete, display, maintain, prin
24、t, search, select, sort and update the data.Hierarchical ModelThe first database management systems used a hierarchical model-that is-they arranged records into a tree structure. Some records are root records and all others have unique parent records. The structure of the tree is designed to reflect
25、 the order in which the data will be usedthat is ,the record at the root of a tree will be accessed first, then records one level below the root ,and so on.The hierarchical model was developed because hierarchical relationshipsare commonlyfoundin business applications. As you have known, an organiza
26、tionchar often describes ahierarchical relationship: top management is at the highest level, middle management at lowerlevels, and operational employees at the lowest levels. Note that within a strict hierarchy, eachlevel of management may have many employees or levels of employees beneath it, but e
27、achemployee has only one manager. Hierarchical data are characterizedby this one-to-manyrelationship among data.In the hierarchical approach, each relationship must be explicitly defined when the database is created. Each record in a hierarchical database can contain only one key field andonly one r
28、elationship is allowed between any two fields. This can create a problem because data do not always conform to such a strict hierarchy.Relational ModelA major breakthrough in database research occurred in 1970 when E. F. Coddproposed afundamentally different approach to database management called re
29、lational model ,which usesa table as its data structure.The relational database is the most widely used database structure. Data is organized intorelated tables. Each table is made up of rowscalled and columns called fields. Each recordcontains fields of data about some specific item. For example, i
30、n a table containing informationon employees, a record would contain fieldsofdata suchas a person s last name ,firstname ,and street address.Structured query language(SQL)is a querylanguage formanipulating datain a relationaldatabase .It is nonprocedural or declarative, in which the user need only s
31、pecify an English-likedescription that specifies the operation and the described record or combination of records. Aquery optimizer translates the description intoa procedure to performthe databasemanipulation.Network ModelThe network model creates relationships among data through a linked-list stru
32、cture in which subordinate records can be linked to more than one parent record. This approach combines records with links, which are called pointers. The pointers are addresses that indicate the location of a record. With the network approach, a subordinate record can be linked to a key record and
33、at the same time itself be a key record linked to other sets of subordinate records.The network mode historically has had a performance advantage over other database models. Today , such performance characteristics are only important in high-volume ,high-speed transaction processing such as automati
34、c teller machine networks or airline reservation system.Both hierarchical and network databases are application specific. If a new application is developed ,maintaining the consistency of databases in different applications can be very difficult. For example, suppose a new pension application is dev
35、eloped .The data are the same, but a new database must be created.Object ModelThe newest approach to database management uses an object model , in which recordsare represented by entities called objects that can both store data and provide methods or procedures to perform specific tasks.The query la
36、nguage used for the object model is the same object-oriented programming language used to develop the database application .This can create problems because there is no simple , uniform query language such as SQL . The object model is relatively new, and only a few examples of object-oriented databa
37、se exist. It has attracted attention because developers who choose an object-oriented programming language want a database based on an object-oriented model.Distributed DatabaseSimilarly , a distributed database is one in which different parts of the database reside onphysically separated computers
38、. One goal of distributed databases is the access ofinformationwithout regard to where the data might be stored. Keeping in mind that once the users and theirdata are separated , the communication and networking concepts come into play . Distributed databases require software that resides partially
39、in the larger computer. Thissoftware bridges the gap between personal and large computers and resolves the problems of incompatible data formats. Ideally, it would make the mainframe databases appear to be large libraries of information, with most of the processing accomplished on the personal compu
40、ter.A drawback to some distributed systems is that they are often based on what is called a mainframe-entire model , in which the larger host computer is seen as the master and the terminal or personal computer is seen as a slave. There are some advantages to this approach . With databases under cen
41、tralized control , many of the problems of data integrity that wementioned earlier are solved . But today s personal computers, departmental computers, and distributed processing require computers and their applications to communicate with each otheron a more equal or peer-to-peerbasis. In a databas
42、e, the client/servermodel provides theframework for distributing databases.One way to take advantage ofmany connected computers running database applicationsis to distributethe application into cooperatingparts that are independentof one anther. Aclient is an end user or computer program that reques
43、ts resources across a network. A server is acomputer running software that fulfills those requestsacross a network . When the resourcesare data in a database ,the client/server model provides the framework for distributing database.A file serve is software that provides access to files across a netw
44、ork. A dedicated file server is a single computer dedicated to being a file server. This is useful ,for example ,if the files are large and require fast access .In such cases, a minicomputer or mainframe would be used as a file server. A distributed file server spreads the files around on individual
45、 computers instead of placing them on one dedicated computer.Advantages of the latter server include the ability to store and retrieve files on other computers and the elimination of duplicate files on each computer. A major disadvantage , however, is that individual read/write requests are being moved across the network and problems can arise when updating files. Suppose a user requests a record fr
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
- 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025寫字樓車位租賃合同范本
- 2024新高考地理一輪復習專題四自然環(huán)境的內(nèi)在規(guī)律與環(huán)境對人類的活動的影響高頻考點42自然災害的成因及避災防災新人教版
- 2024高中地理課時作業(yè)1地理環(huán)境對區(qū)域發(fā)展的影響含解析新人教版必修3
- 2025年吐魯番道路貨運駕駛員從業(yè)資格證考試
- 2025廊坊市勞動合同范文
- 2025農(nóng)村房屋買賣合同協(xié)議模板
- 上海現(xiàn)代化工職業(yè)學院《工程實踐II》2023-2024學年第一學期期末試卷
- 上?,F(xiàn)代化工職業(yè)學院《報紙排版與設(shè)計》2023-2024學年第一學期期末試卷
- 上海外國語大學賢達經(jīng)濟人文學院《巖體力學》2023-2024學年第一學期期末試卷
- 上海外國語大學《鄉(xiāng)村規(guī)劃與設(shè)計》2023-2024學年第一學期期末試卷
- 2024國開大學《經(jīng)濟學基礎(chǔ)》形考任務2答案
- 14《答謝中書書》對比閱讀-2024-2025中考語文文言文閱讀專項訓練(含答案)
- DL∕T 5494-2014 電力工程場地地震安全性評價規(guī)程
- 顱腦外傷病人的急救和護理
- 大型儲罐制作安裝施工方案
- 2024版《供電營業(yè)規(guī)則》學習考試題庫500題(含答案)
- 環(huán)境工程原理智慧樹知到期末考試答案章節(jié)答案2024年西華大學
- 現(xiàn)代食品加工技術(shù)(食品加工新技術(shù))智慧樹知到期末考試答案章節(jié)答案2024年中國農(nóng)業(yè)大學
- 教科版小學科學四上《3.6運動的小車》課件
- 型鋼懸挑卸料平臺施工驗收要求
- 學校護校隊工作制度
評論
0/150
提交評論