发布网友 发布时间:2024-10-23 21:20
共2个回答
热心网友 时间:2024-10-27 02:44
Along with the calculator technical quick development, Be computing the business of on board processing also from according to the mathematics operation, document of the single machine processing, according to in brief link of the internal business of the internal network processing, transact automation's etc. to develop to connect the business enterprise class of net(Internet) a calculator a processing system and the information share in the world scope and business processing with each other according to the complicated internal net(Intranet), business enterprise exterior net(Extranet), world.At the system handle an ability exaltation of in the meantime, the conjunction ability of system also in the continuous exaltation.But at the time of linking an ability information and circulating an ability exaltation, according to network conjunction of the safe problem is also increasingly outstanding, the whole network safety mainly expresses a few aspects at the following:The physical safety, network of network rushes toward a structure safety, network system safety, application system safety and network management of safe etc..
So the calculator safe problem, should the elephant each per family's fire prevention guard against theft the problem is similar, attaining to guard against in not yet.Even will not thought of you will also become the time of[with] target by yourself, threatenning have already appeared, once taking place, usually caught unprepared, result in pole great damage.
规定字数有限,想要详细信息,麻烦请给我邮箱,谢谢
热心网友 时间:2024-10-27 02:42
Data Management
1 why Data Management ?
We have already considered hardware and software in some detail. In this chapter, we turn our attention to a third basic computer resource, data. Many computer applications require that data be stored for subsequent processing. [1] Simply storing the data is not enough, however. A typical computer system, even a small one, can have dozens of disks and tapes, each holding data for dozens of different applications. For any given application, one and only one set of data will do. We must be able to store, Locate, and retrieve the specific data needed by a given program. That is the concern of data management.
2 Accessing Data
Imagine a single diskette containing several programs. For a particular application, only one of those programs will do. How is a given program selected, loaded, and executed? In Chapter 6, we learned that the operating system, responding to a use’s command, reds the disk’s index, searches it for the requested program name, extracts the program’s track and sector address, and issues primitive commands to read it into main memory. Later, following a RUN command, the program is given control of the processor.
Accessing data presents a similar problem. A single diskette can hold data for several different applications. For a given application, one and only one set of data will do, and finding the right data is much like finding the right program. There are differences between accessing programs and accessing data, however. When a program is need, all its instructions must be loaded into memory. Data, on the other hand, are typically processed selectively, a few elements at time. Thus, it is not enough merely to locate the data; we must be able to distinguish the individual data elements, too.
2.1 Data Structures
The key to retrieving data is remembering where they are stored, If the data elements are stored according to a consistent and well understood structure, it is possible to retrieve by remembering that structure.
The simplest data structure is a list. For example, data for a program that computes an average might be stored as a series of numbers separated by commas (Fig.8.1). The commas distinguish the individual data elements.
Most programming languages support amore complex data structure called an array (Fig 8.2). Each array element can hold one data value. Each element is assigned a unique identifying number or numbers, and individual data elements can be inserted, extracted, or manipulated by referencing those numbers. For example, in the array pictured in Fig. 8.2 elements are identified by a row number and a column number, and row 1, column3 (element1,3) contains the value 29. Once an array has been filled, it can be written to disk, tape, or any other secondary medium, and back into memory for processing.
Consider a program that generates name and address labels. For each label, we need a name, a street address, a city, a state, and a zip code. If we needed only a few labels, we might store the data in a list, but separating the elements would soon become tedious. An option is to set up an array of names and addresses, with each row holding the data for a single label. The only problem is that the entire array must be in main memory before the individual elements can be accessed, and main memory space is limited. Thus, even with an array, we could generate relatively few labels.
Fig. 8.1 The simplest data structure is a list. Separators, such as these commas, serve to distinguish individual values. Often, a “sentinel” value, such as a negative number, marks the end of the list.
4410, 843, 184, 31, 905, 6357, 44, 7702, 228, 59, -1
Fig. 8.2 Most programming languages support a more complex data structure called an array Individual cells are assigned a number or numbers, and data values are inserted manipulated, and extracted by referencing those numbers.
A better solution is to organize the data as a file (Fig.8.3). All computer data begin as patterns of bits, On a file, the bits are grouped to form characters. Groups of characters, in turn, form meaningful data elements called fields. A group of related fields is a record the file is a set of related records. For example, in a name and address file, an individual’s name is a field. Each record holds a complete set of data for data for a single individual ( a name, a street address, and so on) .the file consists of all the records.
Fig 8.3 Characters are grouped to form fields. Fields are prouped to form records. A file is a group of related records.
The data in a file are processed record by record. Normally, the file is stored on a secondary medium such as disk. Programs are written to read a record. process its fields, generate the appropriate output, and then read and process another record. Because only one record is in main memory at a time, very little memory is needed. Because many records can be stored on a single disk, a great deal of data can be processed in this limited space.
2.2 Locating Files
Imagine a file stored on disk. The first step in accessing its data is finding the file. The task is much like finding a program, but there are differences. Following a command such as LOAD or RUN, programs are loaded by the application system. Data, on the other hand, are processed by application programs, in the context of a program’s logic. Typically, just before the data are required, the program asks the operating system to open the file. Each file has a name; the open logic ( fig.8.4 ) reads the index, searches it by name, and finds the address of the first record in the file.
Fig.8.4 when a file is opened, the disk index is read into main memory and searched for the desired file’s name. If the file name is found, the file’s start address is extracted from the index.
2.3 Locating Records
Once a file has located, the process of accessing its records can begin. When a program needs input data, it reads a record; when it is ready to output results, it writes a record. Note that these instructions deal with selected records, not with the entire file. We open files. We read and write records.
Let’s examine the data accessing process more closely. A programmer views data logically, requesting the next record, or the name and address for a particular customer. The data are stored on a secondary medium such as disk. To access a record physically, the disk drive must be give a set of primitive commands: seeks, reads, and writes. The programmer thinks in terms of logical I/O. The external device stores and retrieves physical sectors; it “thinks” in terms of physical I/O. There must be a mechanism for translating the programmer’s logical requests to the appropriate physical commands (Fig 8.5). On small computers, much of the logic is found in the operating system’s input/output control system; on larger machines, access methods are use. Increasingly, the programmer’s logical data request is translated to physical form by a database management system.
2.4 The Relative Record Concept
How does software, be it operating system, access method, or database software, find specific records in a file? [2] The key to many storage and retrieval techniques is the relative record number. Imagine a string of 100 records. Numbers indicate a given record’s position relative to the first record in the file. The file’s first record ( relative record 0 ) is at “ start of file plus 0 ”;
Its second record is at “ start of file plus 1”, and so on.
3. Access Methods
Imagine preparing meeting announcements for a club. You need a set of mailing labels, and each member’s name and address is recorded on an index card. Probably the easiest way to generate the labels is to copy the data from the first card, turn to the second card and copy it, and so on, processing the records sequentially, form the beginning of the file to the end.
Magazine publishers face the same problem with each new issue, but need mailing labels for tens of thousands of subscribers. Rather than using index cards, they store customer data on disk or magnetic tape, one record per subscriber. The easiest way to ensure that all labels are generated is to process the records in the order in which they are stored, proceeding sequentially from the fist record in the file to the last. To simplify handing, the records might be presorted by zip code or a mailing zone, but the basic idea of processing the data in physical order still holds.
How dos this relate to the relative record number concept? A relative record number indicates a record’s position on the file. With sequential access, processing begins with relative record 0, then moves to relative record 1, 2, and son on. Accessing data sequentially involves little more than counting. For example, imagine a program has just finished processing relative record 14. What is the next record? Obviously, relative record 15. We’ve already seen how a relative record number can be converted to read them, or write them, in physical order.
Processing records in sequence is not always acceptable. For example, when a subscriber moves, his or her address must be changed in the fire .searching for that subscriber’s record sequentially is like looking for a telephone number by starting with the first page of the telephone book and reading line and line. That’s no how we use a telephone book. Instead, knowing the record are stored in alphabetical order ,we quickly narrow our search to a portion of a single page and then begin reading the entries, ignoring the bulk of the data . the way we use a telephone book is good example of direct, or random, access.
A disk drive reads or writes one record at a time. To randomly access a specific record, all the programmer must do is remember its address, and ask for it the problem is remembering all those disk addresses,. One solution is maintaining an index of the record. Again, we’ll use the name and address fire as an example. We want to access individual customer record by name. As the file is created, records are written one at a time, in relative record number order. Additionally, as each record is written, the customer name and the associated relative record number are recorded in an array or index. After the last record has been written to disk and its position recorded on the index, the index is itself stored.
Once the index has been created, it can be used to find individual records. Assume, for example, that Susan Smith has changed her address. To record her now address on the file, a program could.
1. read the file index,
2. search the index for her name,
3. find her relative record number,
4. compute the disk address, and read her record,
5. change her address, and
6. rewrite the record to the same place on disk.
Note that this specific record is accessed directly, and that no other records in the file are involved.
The basic idea of direct access is assigning each record an easy to remember, logical, and then converting that key to a relative record number, Given this relative location, a physical address can be computed, and record accessed. Using an index is one technique for converting keys to physical addresses. An option is passing a numeric key to an algorithm and computing a relative record number. Both techniques have the same objective; converting a programmer’s logical data requests to physical form.
Earlier in the chapter we identified the gap separating logical and physical I/O. An access method is a software module that bridges this gap, converting logical keys to physical addresses, and issuing the appropriate primitive commands. There are many variations of sequential, indexed, and direct organizations, and each one has its own access rules. Using a variety of data access techniques can be confusing, and this is one reason for the growing popularity of database management systems
4 Database Management
There are problems with traditional data management. Many result from viewing applications independently. For example, consider payroll. Most organizations prepare their payrolls by computer because using a machine instead of a small army of clerks saves money. Thus, the firm develops a payroll program to process a payroll file, Inventory, accounts receivable, accounts payable, and general ledger analysis are similar applications, so the firm develops an inventory program, and inventory file, an accounts receivable program, an accounts receivable file, and so on. Each program is independent, and each processes it own independent data file.
Why is this a problem? For on thing, different application often need the same data elements. For example, schools generate both bills and student grade reports. View the applications independently. The billing program reads a file of billing data, and the grade report program reads an independent file of grade data. The outputs of both program are mailed to each student’s home; thus, student names and addresses must be redundantly recorded on both file. What happens when a student moves? Unless both file are up data, one will be wrong. Redundant data are difficult to maintain.
A more subtle problem is data dependency. Each access method has its own rules for storing and retrieving data, and certain “tricks of the trade” can significantly improve the efficiency of a given program. Bacause the motivation for using the computer is saving money. The programmer is often tempted to save even more by taking advantage of these efficiencies. Thus, the program’s logic becomes dependent upon the physical structure of the data. When a program’s logic is tied to its physical data structure, changing that structure will almost certainly require changing the program. As a result, programs using traditional access method can difficult to maintain.
The solution to both problems is often organizing the data as a single, integrated database. The task of controlling access to all the data can then be concentrated in a centralized database management system.
How dose the use of a centralized database solve the data redundancy problem? All data are collected and stored in a single place; consequently, there is one and only one of any given data element. When the value of an element ( an address, for example) changes, the single database copy is corrected, Any program requiring access to this data element gets the same value, because there is only on value.
How dose a database help to solve the data dependency problem? Since the responsibility for accessing the physical data rests with the database management system, the programmer can ignore the physical data structure. As a result, programs tend to be much less dependent upon their data, and generally much easier to maintain. Expect the trend toward database management to continue.
There are problems with traditional data management. Because different applications often require the same data, certain data elements may be stored in several different places, and such redundant data are difficult to maintain. Another problem is data dependency. If a program’s logic is too closely linked to the physical structure of its data, that program can be difficult to maintain. The solution to both problems is often collecting all the organization’s data in a centralized database. With a database, there is only one copy of each data element, so the data redundancy problem is eliminated. Because every program must access data through a database management system, programs are insulated from the physical data structure; thus, data dependency is reduced.