VIRTUAL INFORMATION IN DATA-BASE SYSTEMS. Jeffrey J. Folinus, Stuart E. Madnick, Howard B. Schutzman
|
|
|
- Christina Wilcox
- 10 years ago
- Views:
Transcription
1 VIRTUAL INFORMATION IN DATA-BASE SYSTEMS Jeffrey J Folinus, Stuart E Madnick, Howard B Schutzman Information Systems Group Sloan School of Management Massachusetts Institute of Technology Cambridge, Mass ABSTRACT This paper examines the concept and implications of virtual information in data base systems Virtual information is any fact which does not physically exist in the data base, but is nonetheless accessible through combinations of algorithms and other data Physically recorded information is only one of a number of ways to obtain information from a data-base system Viewing an information system as a collection of functions shows that pure data and pure algorithm from the endpoints of a spectrum of ways function values can be realized, with the middle range being various types of virtual information Several classes of virtual information are identified, and their usefulness is examined to show the appropriateness of the cor~cept in a data-base system Finally, the model is evaluated in light of the implications of virtual information for inference and automatic restructuring within a data base CONTENTS Abstract 1 Acknowledgements[ [[[[[[[[[[[[[[[[[[[[ ~[ 1 Introduction A Model of Information[ [[ [ [[[[ [][[ [[ [[ [[[[[ [[ [ 23 Classes and Uses of Virtual Information 6 Implications for Data-Base Systems 9 Summary and Conclusions 13 Bibliography 14 ACKNOWLEDGMENTS The research reported in this paper is part of the continuing work of the Information Systems Group at MIT's Sloan School Of Management The goal of the Group's research effort is to develop information systems that deal with issues such as optimizing performance, automatic restructuring, inference, and information security The specific advances in this paper derive in part from earlier research in information systems for buidling design ~arried out in MIT's Department of Civil Engineering That department and the facilities of the Civil Engineering Systems Laboratory provided the environment within which this paper was written
2 INTRODUCTION One view of data-base systems is as a method of describing and mapping data structures into physical storage An alternative view is that, given appropriate stored data, the problem is how we use it to meet requests for information Requests for "answers", whether made to processing programs or a stored data base, are essentially requests for a value of a function, given various argument values A model of an information system as a collection of such functions helps unify many of our notions about data and algorithms, and provides a convenient construct for resolving several problems in data-base systems Such a model will be presented in this paper Much recent work in data-base systems has concentrated in two areas : deriving a suitably powerful logical structure for abstractly representing information, and formulating ways of declaring the policies used to map this structure into a stored form Logical structures based on the mathematical concept of relations have been proposed by Codd (4) and Mealy (21), whereas the Data Base Task Group (6), Engles (9), and Senko, et al (24) have used groupings of objects with similar properties, sometimes referred to as entity sets Several others have proposed methods for mapping the resulting logical data structures to a physical storage medium: trees and other hierarchical organizations (as in GIS (12) and IMS (13)), chained list structures based on rings (Bachman (i), DBTG (6), and IDMS (25)), encoded strings (Senko, et al (24)), and schemes using symbolic rather than physical pointers (Davies (8) and Raver (23)) Data relationships in recent information structuring models, however, essentially group and categorize data in some static fashion in the data base But relationships can also be defined in a procedural fashion An example of such an item is age For example, to maintain a completely accurate value of someone's age, it would have to be updated continuously Therefore, rather than assigning a particular stored value to the data item age, it might be preferable to define it procedurally as current date minus date of birth This leads directly to the idea that a model of information should allow not only static, grouping relationships, but procedural relationships as well This paper presents a model of information based on functional requests to an information system This model includes not only the classical concepts of pure data and pure algorithm, but also important classes of virtual information based on procedural relationships The usefulness of various types of virtual information are presented to show its appropriateness as a concept in a data-base system Finally, we examine the implications of virtual information for automatic restructuring and inference within a data base The idea of virtual information by itself is not new, having previously been discussed by the DBTG (6) and Engles (9) Many systems, especially inquiry-oriented reporting systems, already virtualize information, although they often don't consider it as such All of
3 this previous work, however, has treated virtual information as a special case, and dealt with it in a largely ad hoc fashion The real value of this concept occurs only when considered within a larger structure for information which also includes data and algorithms In such a context, work can occur on the relative suitability of each for solving problems in data-base systems A MODEL OF INFORMATION Resolving issues in data-base systems has become easier in recent years as the computer community has developed a clearer set of notions about information Of particular importance has been the distinction between the logical structuring of facts, and the physical structuring of stored data The essential characteristic of a data-base system is the sharing of data by multiple applications This type of environment demands a clearly defined distinction between system internals and the external view of the application programs, or what has been called data independence A significant degree of data independence means that access methods and data organization are transparent to application programs, and that the physical aspects of storage are considered apart from the logical aspects of information This implies a logical data structure against which application programmers can define their files and specify their requests for information Many data base designs assume each fact is physically recorded in the data base Actually, physically recorded data is only one point within a spectrum of ways to obtain information, such as by algorithm or even by derivation from physically recorded data Although these other alternatives are occasionally desirable, they have been largely ignored As a consequence, most models of information are not adequate for obtaining dynamic or procedural relationships in the data base Viewing an information system as a collection of functions avoids these inadequacies All requests for information are in a sense requests for a value of a function, given various argument values This functional model retains all of the power to describe information of the models of Codd (4), Engles (9), and Mealy (21) Basically, a function can establish relations (in the set theoretic sense) between argument values and function values; it can thus serve the same purpose as a data map Although conventionally a function returns a single value, our consideration includes functions which can return a set or series of values (which itself could be considered a value) by calling more primitive functions repeatedly We also allow for a function value of "null" As Iverson (14) notes: "In classical applied mathematics, most functions of interest can be approximated by some algorithm which becomes, for practical purposes, the definition of the function In other areas, however, many functions of practical, if not general, interest (such as the correspondence between employee name and salary) can be specified only by an exhaustive listing of each argument 3
4 value and its corresponding function value" Most functions of interest in a data-base system are of this latter type The basic algorithm applied to evaluate these functions is a search of the list of arguments, ie, a comparison of the given argument with the list of arguments to determine the correspondent to be selected It thus becomes efficient to physically record the lists of function values on storage media Recorded facts which are independent of other information in the data base may be considered as pure data These enumerated facts can be obtained merely by use of retrieval procedures Function specification can also be by means of algorithm Functions requiring no reference to the stored data base are pure alqorithms (such as SINE) In most conventional systems, whenever function values can be determined without an exhaustive listing of argument values and functions values, the algorithm is usually associated with the processing program and not with data management Certain functions should be associated with data-base systems in order to guarantee data independence The functions of concern pertain to attribute values, such as summaries, which can be realized either through a search of a stored representation of a data map or by other means Function references to information may require more than simple retrieval of a stored grouping of bits Intermediate algorithms in the data management system will put the stored pure data into the necessary form for processing programs A model of information, then, must include more than pure data and pure algorithm -- it requires combinations of algorithms working against values that are either stored in the data base or derived by other algorithms Information obtained in this way, rather than by retrieval procedures or pure algorithms, can be termed virtual information In the most general sense, virtual information is any fact which is accessible through combinations of pure algorithm and pure data, but which is not physically stored in the data base Viewing an information system as a collection of functions shows that pure data and pure algorithm are merely two different ways to furnish function values in response to argument values Pure data and pure algorithm form the endpoints of a spectrum of ways these values can be realized, with the middle range being various types of virtual information (Figure i) More generally, function requests are always satisfied by combining data and algorithms Pure data is merely the special case involving no program, just as pure algorithm is the special case involving no data When one asks for SIIQE(372), it is irrelevant whether the appropriate function value is obtained by table look-up, a Taylor series expansion, or possibly by interpolation between stored table entries Which method is used to realize the value is properly a concern of data-base management As Engles (9) notes, the important point in regard to data independence is that the intermediate algorithms necessary to map stored data into the logical structure (and vice versa) must be transparent to the processing programs (If something is virtual, you can see it, but it isn't there; if something is transparent, it is there, but you can't see it) The opportunity
5 Function class Examples PURE DATA table look-up V I f(al,a 2, a n ) SINE(372) VIRTUAL INFORMATION interpolation from a stored table PURE ALGORITHM Taylor series expansion FIGURE 1 The Spectrum of Information Functions PRODUCT! INDUSTRY SALES SHARE OF MARKET PRICE SALES COSTS PROFIT MARGIN PRODUCT 2 INDUSTRy SALES SHARE OF MARKET PRICE SALES COSTS PROFIT MARGIN I TOTAL SALES TOTAl COSTS j SALES GROSS PROFIT OTHER INCOME GENERAL AND ADMINISTRATWE NET PROFIT TAXES EARNINGS FIGURE 2 Transferred data (from reference 15) 5
6 to realize the information in the logical structure by other tools than merely stored data should make it easier to achieve data independence In summary, a model of an information system as a collection of functions not only helps unify our view of algorithms and data, but also is consistent with other trends and needs in the computer field Increasingly centralized control of information in data bases necessitates functions in data-base management to preserve data independence Finally, the procedural definition of information resolves the constraints resulting from physical limitations in much the same way as procedural definition, or virtualization, of other system resources (eg, virtual memory, virtual processors) CLASSES AND USES OF VIRTUAL INFOP44ATION Several categories of virtual information are of sufficient generality to merit their inclusion in data-base systems In particular, various classes of virtual information can resolve the fundamental issues of representation and materialization in data-base systems identified by Engles (9) Representation, or data type, is the relationship between data items and values The same data item can be represented as different values; different data items can be interpreted as the same value Representation is thus primarily a matter of form The same fact can be represented in many forms The form which is appropriate to application programs is not necessarily the best representation for storage in the data base Numbers to be displayed to users are not in the same form required for computation The form required for computation by a particular CPU or programming language is not necessarily the best form for storage The key issue, then, becomes how to provide a fact, once it has been retrieved by our system of functions, in the form desired In the DBTG proposal (6), this is accomplished by the mapping between subschema and schema data definitions More generally, data-base systems need to contain a library of conversion procedures that enable any obtained fact to be translated into any appropriate standard data type Where conversion is necessary, the resulting value is virtual information Such converted forms enable a data-base system to provide many views of the same collection of facts A special case of conversion occurs when facts are not represented as standard data types, but are represented as encoded forms, such as may be required for security or storage compaction considerations Compaction techniques can save considerable amounts of storage but require a transformation between the encoded and decoded forms Many attributes with a limited number of possible values can be more efficiently stored as code to save space Engles (9) offers the example of an application program which stores or retrieves a field which contains the name of a state The data item as manipulated by the application program is a character string such as 'CALIFORNIA' 6
7 In the data base, however, the value is represented by a numeric code and a function maps these state codes into state names and vice versa Such mapping functions should be part of data-base management and their use should be transparent to application programs Materialization is primarily a matter of content Specifically, it is the matter of obtaining facts from the information system, regardless of form In the real world, facts are mostly derived rather than pure data As an example, consider the chart of accounts for a firm The only pure data needed are original journal entries; all other facts are derived by manipulating this data Derived facts must exist in data-base systems as well as in the real world The key issues related to materialization are diverse On a practical level, storing facts procedurally as virtual information will typically involve tradeoffs of storage and access time, and will obviate updating More significantly, there is the matter of obtaining facts which are implicitly available given a collection of pure data and pure algorithms As a corollary, there is the question of which facts should be represented in this collection to maximize the amount of implicit information Three major classes of virtual information deal with these issues of extracting the factual content: factored facts, inferred facts, and computed facts Factored facts As Senko, et al (24) note, recognizing and taking advantage of the distinction between types (such as sets of entities) and instances (such as individual entity occurrences) offers great power in building data-base systems To improve efficiency, information that is common to all instances of a particular type can be collected and placed in a catalog The complete information about a particular instance is thus a combination of the information common to all instances of this type and information that is specific to it Factoring, the process of looking for collections of instance information common to all instances of a collection and placing it into a type description, is a powerful method of organizing, simplifying, and condensing the information about a collection of instances Recombining factored values requires procedures to produce the virtual information about each individual entity from the type description This task becomes more formidable if multi-level factoring is employed For example, in considering information about U S cities, we might factor out information that pertains to all cities in the same state (eg, name of governor), as well as information that pertains to all states (eg, name of president) (This multilevel factoring is a major motivation for so-called "tree-structured" data-base systems) The user should be able to access information independent of the factoring employed Inferred facts Data maps between different entity sets lead to the notion of related data maps Consider the maps EMPLOYEE ---> POSITION, POSITION ---> SALARY, and EMPLOYEE ---> DEPARTMENT Using these basic maps, we can infer the mapping of EMPLOYEE ---> SALARY In addition, the mapping DEPARTMENT ---> EMPLOYEE can be inferred by
8 the inverse of the EMPLOYEE ---> DEPARTMENT map Furthermore, the DEPARTMENT ---> NUMBER-OF-EMPLOYEES data map can be derived from the inferred inverse map DEPARTMENT ---> EMPLOYEE This may be preferable to storing a representation of the DEPARTMENT ---> NUMBER-OF-EMPLOYEES data map, which has to be updated whenever a change is made to the EMPLOYEE ---> DEPARTMENT data map The user should be able to access the data to ascertain the NUMBER-OF-EMPLOYEES in a DEPARTMENT, whether the desired fact is actually stored or inferred A simple form of an inferred fact is a single data item referenced in several ways Consider two entities with the same attribute value For example, each MANAGER has a NAME, but also, each EMPLOYEE (which includes MANAGERS) has a NAME If we define one attribute as having the same value as another (similar to the "ACTUAL/VIRTUAL SOURCE" clause in (6)), only one data item needs to be changed during updating What has been called "transferred data" (15) is similar Transferred data is summarized data based on a supporting subschedule and forwarded to a given portion of a line item (Figure 2) Thus, a data item in one summary table can be a virtual "copy" of more elementary data elsewhere in the data base (eg, NUMBER-OF-EMPLOYEES in a DEPARTMENT may be derived from a summary of the EMPLOYEE ---> DE PARTMENT data) More complex forms of inferred facts stem from the observation that, in a data base of any complexity, there will be several alternative combinations of related data maps that could be used to access a given fact Selecting the best access path structure from a set of possible candidates becomes a crucial factor in achieving performance Senko, et al (24) propose that possible access paths ("strings") be explicitly specified The access path catalog would record facts (such as length of this path and device characteristics) useful in access path selection In the most general sense, all inferred facts are instances where the appropriate fact exists in our collection of functions; the only problem is obtaining that fact Explicitly specifying access paths (6, 24) is one solution, but such a solution seems to be more for the convenience of the system developer than of the end user If implicit information is available, why should the user be allowed to get at it only if he had the foresight and knowledge of the database structure to specify it as an access path? Users may even attempt to specify unlikely access paths "just in case, " leading to a data base cluttered with needless relational information This leads to some of the same problems encountered in Codd's normalization strategies (4), which require a user to know which fields will be used as identifiers when the data base is defined Frequently, this will be difficult and the result will be the designation of an identifier with many fields, some of which are completely unnecessary A more appropriate solution is to let the information system itself develop the proper access strategy for a fact An information system could use the explicit intermediate relationships necessary to define the data base to discover whether implicit relationships exist
9 Computed facts Whereas factored and inferred facts are developed merely by accessing facts available in the data-base system, computed facts are derived by processing algorithms A major distinction to be noted here is that some computed facts are in terms of an individual entity occurrence, whereas others are in terms of an entire entity set, or more complex forms An example of the first would be that, given an entity such as a ROOM whose attributes are LENGTH and WIDTH, its AREA could be defined in a form such as PRODUCT (LENGTH,WIDTH) The DBTG (6) "ACTUAL/VIRTUAL RESULT" clause is of this type, and allows user-defined procedures to be used A database system should incorporate common functions, such as SUM and PRODUCT More significant facts can be developed by performing operations over an entire entity set Classification requests such as "List the ROOMS whose COLOR is BEIGE" can employ simple comparison operators on a single fact, such as =, >, <, and combinations thereof Boolean conditions such as &, I, and q can be used to construct even more complicated types of requests Finally, functions such as COUNT, MAX, MIN, and AVERAGE can be combined with any of these above types of requests Lists of suggested operators to use in data-base systems are presented in (5), (7), and (9) All three types of facts -- factored, inferred, and computed -- may be used either singly or in combination to extract information from our collection of functions Any fact may also be subject to any representation conversions that may be necessary IMPLICATIONS FOR DATA-BASE SYSTEMS Virtual information completes the spectrum between pure data and pure algorithm, and allows an information system to be modelled as a collection of functions Such a model provides a clearer and more consistent framework for studying the concept of information and provides new insights into the design and implementation of database systems This section explores some of the implications of our information model Two areas are examined: technical issues of system efficiency and conceptual issues of system effectiveness Technical issues Data-base systems increase the variety and flexibility of ways to store a given fact Data independence implies that the methods used within a system for representation and materialization are irrelevant to the user concerned only with logical issues In a system with many users, such internal decisions should be made on a global basis, using a set of criteria which optimizes system performance as a whole It has been suggested that, because users and uses of data change over time, the system could monitor itself and perform data restructuring dynamically (17) Rules need to be developed to aid the system in choosing the appropriate materialization method The basic goal in formulating such rules is minimization of cost Three types of costs need to be considered: space, update, and
10 access The space issue is concerned with how many bits a particular materialization method uses Update deals with how static a particular data value is; certain data items, such as population of the United States, change value quite frequently while others, such as a particular person's social security number, have a constant value The access problem involves the costs incurred in satisfying a request for a value When considering the form a particular value should take, the tradeoffs between the various cost types must be weighed before a decision can be made For example, consider storing areas of rectangular rooms given a known length and width The problem is whether to: l)store each room's area with the information for that room, or 2)store the algorithm for computing the area in the logical dexcriptor for the general entity "room" An access time/space tradeoff is involved Storing each room's area has the advantage of a decreased materialization time but the disadvantage of utilizing more space (assuming a large number of rooms) The essential characteristics of the tradeoff are illustrated in Figure 3 For a small number of requests for areas of rooms, alternative 2 has a smaller cost However, as the number of such requests grow, the cost for alternative 2 increases faster than for alternative i, and alternative 1 becomes attractive Conceptual Issues Although a functional model for data provides the potential for improving technical performance and efficiency of the system, of more importance is the logical consistency provided by looking at information in this fashion Rather than examining each type of information as a special case, the model supplies a uniform view of facts, as well as the capability of making information systems cleaner and more powerful An information system is, in some sense, a model of recorded facts about the real world Unfortunately, the modelling process does not capture all of the knowledge about a real world system; certain characteristics are simplified and omitted By improving the way in which an information system is conceived, that is, by making the model of information more accurately reflect the real world, the capabilities of the information system can be improved This can be accomplished by giving the system more "knowledge" about itself This is known as giving the system an inferential ability to use this knowledge The result is what has been termed "information profit", or the ability to make intelligent assumptions about the manipulation of information (17) Such a system could develop answers to questions even though these answers had not been explicitly defined in the data base Current models of information lack this quality of providing the system with some intelligence The relational model of Codd (4), for example, views information relationships in terms of the mathematical concept of relations Returning to the example of the area of a rectangular room, this information can be expressed as the following relation : i0
11 Alternative 2 Cost Alternative I # of requests for room area cost " f(space) + f(# of requests) FIXED VARYA3LE FIGURE 3 Access cost v space tradeoff ii
12 Room Id Length Width Area By expressing the information in this way, however, the system loses some knowledge about how the data was derived Most models of information suffer from the same weakness They only allow relationships to be defined by grouping and set type operations It is up to the user of such systems to distinguish the underlying characteristics of these relationships The Automatic Programming Group at MIT's Project MAC have attacked this problem by classifying types of relationships which can exist In their MAPL system (19,20), they allow such constructs as "a kind of" and " a characteristic of" to give some meaning to the defined relationships The user, given several of these primitive types of relationships, can define his own more complex types The major problem with this approach is that a complete set of primitives needs to be defined before all types of information relationships can be constructed -- a formidable task In fact, one of the problems encountered in MAPL is that no procedural type of primitives are defined, so expressing a relation like area is not possible By taking the view that all facts are obtained through applying a function, the problem of giving a system increased inferential ability is reduced to defining the implicit concepts behind the functions which are applied (coming up with a good model for the functions, if you will) With some information, this is difficult to do As an example, describing exactly what is meant by the concept of "color" is a non-trivial problem in artificial intelligence With many functions, however, especially those near the pure algorithm end of the information spectrum, a good model is reasonably easy to do Defining rectangular area as PRODUCT(LENGTH,WIDTH), for example, is a reasonably complete conceptual description One benefit from a system with inferential ability is ease of use Because the system can infer things about its information structure, the user is saved from doing some work Returning to the rectangular area example, the user only needs to input the length and width of a particular room, but he can query the system about the room's area even though that information was not explicitly given to the system Another benefit is a reduction in inconsistency of information in the data base As the amount and complexity of information grows, the probability increases that contradictory facts exist in the data base Mealy (21) uses the example data of a person whose date of death precedes her date of birth If the information relationships are more explicitly defined, it is easier to build in consistency checks to help eliminate this problem An example of how a functional view of data can improve a system's inferential capability is in the area of handling units of measure 12
13 (22) The association of a unit of measure with an attribute can either be done with each occurrence of a data item or factored into a catalog describing common characteristics of all instances In many systems, this distinction is important; viewing all facts as function values, it becomes irrelevant Conversion between various units of measure is analagous to converting between data types except the conversion is based on the content of the information rather than the form of its representation Representation of complex units of measure, such as pounds per square inch, is easily accomplished since procedural definitions are allowed A more complicated units of measure problem is typified by the request for the cost in cents of five bolts if bolt cost is stored in units such as dollars per ton The system must change the unit of cost so that it reflects cost per bolt rather than cost per unit weight This can be accomplished by defining an "each" function which, given the weight of a bolt, performs the transformation The bolt problem illustrates another level to information systems besides the physical and the logical This is the inferential level Many inferential problems require that the system be given additional information For example, solution of the bolts problem required the system to be able to ask for the weight of bolts This implies the need for an inferential model of information as well Virtual information, through procedural ways of relating data maps, provides a good starting point for such a model SUMMARY AND CONCLUSIONS This paper presents a model of an information system as a collection of functions which produce values in response to arguments Virtual information unifies data, algorithms, and their combinations into a range of alternative methods for meeting requests for information Various classes of virtual information prove useful in resolving the issues of representation and materialization Together, the functional model and virtual information have important implications in data-base systems in terms of improving system performance and by allowing a conceptually simple, yet consistent view of many formerly disparate issues In particular, these concepts are useful in dealing with significant issues such as automatic restructuring and inference Such issues will be critical in the "intelligent" data-base systems needed for the future 13
14 BIBLIOGRAPHY i Bachman, C W "Data Structure Diagrams," Data Base (Quarterly Newsletter of ACM-SIGBDP), Vol l, No 2 (1969), pp 4-10 "The Evolution of Storage Structures," Communications of the ACM, Vol 15, No 7 (July 1972), pp CODASYL Systems Committee Feature Analysis of Generalized Data Base Management Systems New York: ACM, 1971 Codd, E F "A relational model of data for a large shared data bank, "Communications of the ACM, Vol 13, No 6 {June 1970), pp "A Data Base Sublanguage Founded on the Relational Calculus, "1971 SIGFIDET Workshop Proceedings New York: ACM, 1971 pp Data Base Task Group New York: ACM, 1971 CODASYL Data Base Task Group Report Date, CJ, and Hopewell, P "File Definition and Logical Date Independence, "1971 SIGFIDET Workshop Proceedings New York: ACM, 1971 pp i0!i Davies, C T A Logical Concept for th e Control and Management of Data Report AR , International Business Machines Corp, System Development Division, Poughkeepsie, New York (1967) Engles, R W A Tutorial on Data-Base Organization Report TR , International Business Machines Corp, System Development Division, Poughkeepsie, New York (1970) Folinus, J J Design of a Data-Base Information System for Building Design Research Report R73-52 Cambridge, Mass: MIT Dept of Civil Engineering, 1973 Hsaio, D K and Harary, F "A Formal system for information retrieval from files, "Communications of the ACM, Vol 13, No 2 (February 1970), pp International Business Machines Corp Generalized Information System GIS/360: Application Description Manual (Version 2) Form GH , Data Processing Division, White Plains, New York (1970) Information Management System IMS/360: Application Description Manual Form GH i, Data Processing Division, White Plains, New York (1971) 14
15 14 Inverson, K E A Proqrammin q Lanquaqe New York : John Wiley and Sons, Kingston, P L "Concepts of financial models," IBM Systems Journal, Vol 12, No 2 (1976), pp Madnick, S E Desiqn Strateqies for File Systems MAC Report TR-78 Cambridge, Mass: MIT, 1970 Project "Automated Information Systems Generation Project, " Internal Memo, Sloan School Information Systems Group, MIT (October 1973) Madnick, S E, and Alsop, J W "A Modular Approach to File System Design," AFIPS Conference Proceedinqs, Vol 34 (1969 SJCC) Martin, W A and Krumland, R "MAPL -- A Language for Describing Models of the World," Inernal Memo No 6, Automatic Programming Group, Project MAC, MIT Martin, W A, Krumland, R B, and Sunguroff, A "More MAPL Specifications and Basic Structures, " Internal Memo No 8, Automatic Programming Group, Project MAC, MIT Mealy, G H "Another look at data," AFIPS Conference Proceedinqs, Vol, 31 (1967 FJCC), pp Oshrin, A, and Schutzman, H B "The Units of Measure Problem," Internal Memo, Sloan School Information Systems Group, MIT (October 1973) Raver, N "File Organiztion in Management Information and Control Systems," File Orqanization - Selected Papers from File-68, IFIP Administrative Data Processing Group (IAG), Pulication No 3, 1969 Senko, M E, Altman, E B, Astrahan, M M and Fehder, P~ L "Data Structures and Accessing in Data Base Systems," IBM Systems Journal, Vol 12, No i, pp Schubert, R F "Basic Concepts in Data-base Management," Datamation, July 1972, pp
New Hash Function Construction for Textual and Geometric Data Retrieval
Latest Trends on Computers, Vol., pp.483-489, ISBN 978-96-474-3-4, ISSN 79-45, CSCC conference, Corfu, Greece, New Hash Function Construction for Textual and Geometric Data Retrieval Václav Skala, Jan
æ A collection of interrelated and persistent data èusually referred to as the database èdbèè.
CMPT-354-Han-95.3 Lecture Notes September 10, 1995 Chapter 1 Introduction 1.0 Database Management Systems 1. A database management system èdbmsè, or simply a database system èdbsè, consists of æ A collection
IS YOUR DATA WAREHOUSE SUCCESSFUL? Developing a Data Warehouse Process that responds to the needs of the Enterprise.
IS YOUR DATA WAREHOUSE SUCCESSFUL? Developing a Data Warehouse Process that responds to the needs of the Enterprise. Peter R. Welbrock Smith-Hanley Consulting Group Philadelphia, PA ABSTRACT Developing
2. Basic Relational Data Model
2. Basic Relational Data Model 2.1 Introduction Basic concepts of information models, their realisation in databases comprising data objects and object relationships, and their management by DBMS s that
Component visualization methods for large legacy software in C/C++
Annales Mathematicae et Informaticae 44 (2015) pp. 23 33 http://ami.ektf.hu Component visualization methods for large legacy software in C/C++ Máté Cserép a, Dániel Krupp b a Eötvös Loránd University [email protected]
Files. Files. Files. Files. Files. File Organisation. What s it all about? What s in a file?
Files What s it all about? Information being stored about anything important to the business/individual keeping the files. The simple concepts used in the operation of manual files are often a good guide
Implementation of hybrid software architecture for Artificial Intelligence System
IJCSNS International Journal of Computer Science and Network Security, VOL.7 No.1, January 2007 35 Implementation of hybrid software architecture for Artificial Intelligence System B.Vinayagasundaram and
Overview of Database Management
Overview of Database Management M. Tamer Özsu David R. Cheriton School of Computer Science University of Waterloo CS 348 Introduction to Database Management Fall 2012 CS 348 Overview of Database Management
THE IMPACT OF INHERITANCE ON SECURITY IN OBJECT-ORIENTED DATABASE SYSTEMS
THE IMPACT OF INHERITANCE ON SECURITY IN OBJECT-ORIENTED DATABASE SYSTEMS David L. Spooner Computer Science Department Rensselaer Polytechnic Institute Troy, New York 12180 The object-oriented programming
Overview of Data Management
Overview of Data Management Grant Weddell Cheriton School of Computer Science University of Waterloo CS 348 Introduction to Database Management Winter 2015 CS 348 (Intro to DB Mgmt) Overview of Data Management
[Refer Slide Time: 05:10]
Principles of Programming Languages Prof: S. Arun Kumar Department of Computer Science and Engineering Indian Institute of Technology Delhi Lecture no 7 Lecture Title: Syntactic Classes Welcome to lecture
Extending Data Processing Capabilities of Relational Database Management Systems.
Extending Data Processing Capabilities of Relational Database Management Systems. Igor Wojnicki University of Missouri St. Louis Department of Mathematics and Computer Science 8001 Natural Bridge Road
The Trip Scheduling Problem
The Trip Scheduling Problem Claudia Archetti Department of Quantitative Methods, University of Brescia Contrada Santa Chiara 50, 25122 Brescia, Italy Martin Savelsbergh School of Industrial and Systems
Bringing Business Objects into ETL Technology
Bringing Business Objects into ETL Technology Jing Shan Ryan Wisnesky Phay Lau Eugene Kawamoto Huong Morris Sriram Srinivasn Hui Liao 1. Northeastern University, [email protected] 2. Stanford University,
1 File Processing Systems
COMP 378 Database Systems Notes for Chapter 1 of Database System Concepts Introduction A database management system (DBMS) is a collection of data and an integrated set of programs that access that data.
Clustering through Decision Tree Construction in Geology
Nonlinear Analysis: Modelling and Control, 2001, v. 6, No. 2, 29-41 Clustering through Decision Tree Construction in Geology Received: 22.10.2001 Accepted: 31.10.2001 A. Juozapavičius, V. Rapševičius Faculty
Network Model APPENDIXD. D.1 Basic Concepts
APPENDIXD Network Model In the relational model, the data and the relationships among data are represented by a collection of tables. The network model differs from the relational model in that data are
Chapter 2. Data Model. Database Systems: Design, Implementation, and Management, Sixth Edition, Rob and Coronel
Chapter 2 Data Model Database Systems: Design, Implementation, and Management, Sixth Edition, Rob and Coronel 1 In this chapter, you will learn: Why data models are important About the basic data-modeling
Application Design: Issues in Expert System Architecture. Harry C. Reinstein Janice S. Aikins
Application Design: Issues in Expert System Architecture Harry C. Reinstein Janice S. Aikins IBM Scientific Center 15 30 Page Mill Road P. 0. Box 10500 Palo Alto, Ca. 94 304 USA ABSTRACT We describe an
DATABASE MANAGEMENT SYSTEM
REVIEW ARTICLE DATABASE MANAGEMENT SYSTEM Sweta Singh Assistant Professor, Faculty of Management Studies, BHU, Varanasi, India E-mail: [email protected] ABSTRACT Today, more than at any previous
HELP DESK SYSTEMS. Using CaseBased Reasoning
HELP DESK SYSTEMS Using CaseBased Reasoning Topics Covered Today What is Help-Desk? Components of HelpDesk Systems Types Of HelpDesk Systems Used Need for CBR in HelpDesk Systems GE Helpdesk using ReMind
Semantic Search in Portals using Ontologies
Semantic Search in Portals using Ontologies Wallace Anacleto Pinheiro Ana Maria de C. Moura Military Institute of Engineering - IME/RJ Department of Computer Engineering - Rio de Janeiro - Brazil [awallace,anamoura]@de9.ime.eb.br
Chapter 1. Dr. Chris Irwin Davis Email: [email protected] Phone: (972) 883-3574 Office: ECSS 4.705. CS-4337 Organization of Programming Languages
Chapter 1 CS-4337 Organization of Programming Languages Dr. Chris Irwin Davis Email: [email protected] Phone: (972) 883-3574 Office: ECSS 4.705 Chapter 1 Topics Reasons for Studying Concepts of Programming
Determination of the normalization level of database schemas through equivalence classes of attributes
Computer Science Journal of Moldova, vol.17, no.2(50), 2009 Determination of the normalization level of database schemas through equivalence classes of attributes Cotelea Vitalie Abstract In this paper,
Enforcing Data Quality Rules for a Synchronized VM Log Audit Environment Using Transformation Mapping Techniques
Enforcing Data Quality Rules for a Synchronized VM Log Audit Environment Using Transformation Mapping Techniques Sean Thorpe 1, Indrajit Ray 2, and Tyrone Grandison 3 1 Faculty of Engineering and Computing,
ONTOLOGY FOR MOBILE PHONE OPERATING SYSTEMS
ONTOLOGY FOR MOBILE PHONE OPERATING SYSTEMS Hasni Neji and Ridha Bouallegue Innov COM Lab, Higher School of Communications of Tunis, Sup Com University of Carthage, Tunis, Tunisia. Email: [email protected];
Introduction to Object-Oriented and Object-Relational Database Systems
, Professor Uppsala DataBase Laboratory Dept. of Information Technology http://www.csd.uu.se/~udbl Extended ER schema Introduction to Object-Oriented and Object-Relational Database Systems 1 Database Design
Fuzzy Knowledge Base System for Fault Tracing of Marine Diesel Engine
Fuzzy Knowledge Base System for Fault Tracing of Marine Diesel Engine 99 Fuzzy Knowledge Base System for Fault Tracing of Marine Diesel Engine Faculty of Computers and Information Menufiya University-Shabin
Business Intelligence and Decision Support Systems
Chapter 12 Business Intelligence and Decision Support Systems Information Technology For Management 7 th Edition Turban & Volonino Based on lecture slides by L. Beaubien, Providence College John Wiley
Database Management. Chapter Objectives
3 Database Management Chapter Objectives When actually using a database, administrative processes maintaining data integrity and security, recovery from failures, etc. are required. A database management
Web Document Clustering
Web Document Clustering Lab Project based on the MDL clustering suite http://www.cs.ccsu.edu/~markov/mdlclustering/ Zdravko Markov Computer Science Department Central Connecticut State University New Britain,
THE FUTURE OF INTERNET-BASED SURVEY METHODS
Chapter Seven CONCLUSIONS In this chapter, we offer some concluding thoughts on the future of Internet-based surveys, the issues surrounding the use of e-mail and the Web for research surveys, and certain
Understanding Financial Management: A Practical Guide Guideline Answers to the Concept Check Questions
Understanding Financial Management: A Practical Guide Guideline Answers to the Concept Check Questions Chapter 8 Capital Budgeting Concept Check 8.1 1. What is the difference between independent and mutually
Chapter 23. Database Security. Security Issues. Database Security
Chapter 23 Database Security Security Issues Legal and ethical issues Policy issues System-related issues The need to identify multiple security levels 2 Database Security A DBMS typically includes a database
Optimization of SQL Queries in Main-Memory Databases
Optimization of SQL Queries in Main-Memory Databases Ladislav Vastag and Ján Genči Department of Computers and Informatics Technical University of Košice, Letná 9, 042 00 Košice, Slovakia [email protected]
Data Quality Assessment
Data Quality Assessment Leo L. Pipino, Yang W. Lee, and Richard Y. Wang How good is a company s data quality? Answering this question requires usable data quality metrics. Currently, most data quality
Chapter 7. Using Formulas and Functions
Chapter 7 Using Formulas and Functions Although the majority of your analysis can be performed through the Research Assistant, there may be times when you are building a custom report or chart or working
Using Object And Object-Oriented Technologies for XML-native Database Systems
Using Object And Object-Oriented Technologies for XML-native Database Systems David Toth and Michal Valenta David Toth and Michal Valenta Dept. of Computer Science and Engineering Dept. FEE, of Computer
Reusable Knowledge-based Components for Building Software. Applications: A Knowledge Modelling Approach
Reusable Knowledge-based Components for Building Software Applications: A Knowledge Modelling Approach Martin Molina, Jose L. Sierra, Jose Cuena Department of Artificial Intelligence, Technical University
KNOWLEDGE FACTORING USING NORMALIZATION THEORY
KNOWLEDGE FACTORING USING NORMALIZATION THEORY J. VANTHIENEN M. SNOECK Katholieke Universiteit Leuven Department of Applied Economic Sciences Dekenstraat 2, 3000 Leuven (Belgium) tel. (+32) 16 28 58 09
virtual class local mappings semantically equivalent local classes ... Schema Integration
Data Integration Techniques based on Data Quality Aspects Michael Gertz Department of Computer Science University of California, Davis One Shields Avenue Davis, CA 95616, USA [email protected] Ingo
A Performance Study of Load Balancing Strategies for Approximate String Matching on an MPI Heterogeneous System Environment
A Performance Study of Load Balancing Strategies for Approximate String Matching on an MPI Heterogeneous System Environment Panagiotis D. Michailidis and Konstantinos G. Margaritis Parallel and Distributed
Co-Creation of Models and Metamodels for Enterprise. Architecture Projects.
Co-Creation of Models and Metamodels for Enterprise Architecture Projects Paola Gómez [email protected] Hector Florez [email protected] ABSTRACT The linguistic conformance and the ontological
Introducing Formal Methods. Software Engineering and Formal Methods
Introducing Formal Methods Formal Methods for Software Specification and Analysis: An Overview 1 Software Engineering and Formal Methods Every Software engineering methodology is based on a recommended
Indexing Techniques for Data Warehouses Queries. Abstract
Indexing Techniques for Data Warehouses Queries Sirirut Vanichayobon Le Gruenwald The University of Oklahoma School of Computer Science Norman, OK, 739 [email protected] [email protected] Abstract Recently,
Workflow Management Systems: A Prototype for the University of Coimbra
Workflow Management Systems: A Prototype for the University of Coimbra António Jorge Silva Cardoso Departamento de Engenharia Informática, FCTUC, 3030 Coimbra, Portugal José Carlos Teixeira CCG/ZGDV -
Information Theory and Coding Prof. S. N. Merchant Department of Electrical Engineering Indian Institute of Technology, Bombay
Information Theory and Coding Prof. S. N. Merchant Department of Electrical Engineering Indian Institute of Technology, Bombay Lecture - 17 Shannon-Fano-Elias Coding and Introduction to Arithmetic Coding
A terminology model approach for defining and managing statistical metadata
A terminology model approach for defining and managing statistical metadata Comments to : R. Karge (49) 30-6576 2791 mail [email protected] Content 1 Introduction... 4 2 Knowledge presentation...
Chapter 1: Introduction
Chapter 1: Introduction Database System Concepts, 5th Ed. See www.db book.com for conditions on re use Chapter 1: Introduction Purpose of Database Systems View of Data Database Languages Relational Databases
Information Technology Security Evaluation Criteria. ITSEC Joint Interpretation Library (ITSEC JIL)
S Information Technology Security Evaluation Criteria ITSEC Joint Interpretation Library (ITSEC JIL) Version 2.0 November 1998 This document is paginated from i to vi and from 1 to 65 ITSEC Joint Interpretation
Distributed Database for Environmental Data Integration
Distributed Database for Environmental Data Integration A. Amato', V. Di Lecce2, and V. Piuri 3 II Engineering Faculty of Politecnico di Bari - Italy 2 DIASS, Politecnico di Bari, Italy 3Dept Information
Managing large sound databases using Mpeg7
Max Jacob 1 1 Institut de Recherche et Coordination Acoustique/Musique (IRCAM), place Igor Stravinsky 1, 75003, Paris, France Correspondence should be addressed to Max Jacob ([email protected]) ABSTRACT
6.830 Lecture 3 9.16.2015 PS1 Due Next Time (Tuesday!) Lab 1 Out today start early! Relational Model Continued, and Schema Design and Normalization
6.830 Lecture 3 9.16.2015 PS1 Due Next Time (Tuesday!) Lab 1 Out today start early! Relational Model Continued, and Schema Design and Normalization Animals(name,age,species,cageno,keptby,feedtime) Keeper(id,name)
Abstraction in Computer Science & Software Engineering: A Pedagogical Perspective
Orit Hazzan's Column Abstraction in Computer Science & Software Engineering: A Pedagogical Perspective This column is coauthored with Jeff Kramer, Department of Computing, Imperial College, London ABSTRACT
PGR Computing Programming Skills
PGR Computing Programming Skills Dr. I. Hawke 2008 1 Introduction The purpose of computing is to do something faster, more efficiently and more reliably than you could as a human do it. One obvious point
Secure Authentication and Session. State Management for Web Services
Lehman 0 Secure Authentication and Session State Management for Web Services Clay Lehman CSC 499: Honors Thesis Supervised by: Dr. R. Michael Young Lehman 1 1. Introduction Web services are a relatively
KNOWLEDGE ORGANIZATION
KNOWLEDGE ORGANIZATION Gabi Reinmann Germany [email protected] Synonyms Information organization, information classification, knowledge representation, knowledge structuring Definition The term
Horizontal Aggregations In SQL To Generate Data Sets For Data Mining Analysis In An Optimized Manner
24 Horizontal Aggregations In SQL To Generate Data Sets For Data Mining Analysis In An Optimized Manner Rekha S. Nyaykhor M. Tech, Dept. Of CSE, Priyadarshini Bhagwati College of Engineering, Nagpur, India
Architecture Artifacts Vs Application Development Artifacts
Architecture Artifacts Vs Application Development Artifacts By John A. Zachman Copyright 2000 Zachman International All of a sudden, I have been encountering a lot of confusion between Enterprise Architecture
COMPUTER SCIENCE TRIPOS
CST.98.5.1 COMPUTER SCIENCE TRIPOS Part IB Wednesday 3 June 1998 1.30 to 4.30 Paper 5 Answer five questions. No more than two questions from any one section are to be answered. Submit the answers in five
CHAPTER 7 GENERAL PROOF SYSTEMS
CHAPTER 7 GENERAL PROOF SYSTEMS 1 Introduction Proof systems are built to prove statements. They can be thought as an inference machine with special statements, called provable statements, or sometimes
A Brief Tutorial on Database Queries, Data Mining, and OLAP
A Brief Tutorial on Database Queries, Data Mining, and OLAP Lutz Hamel Department of Computer Science and Statistics University of Rhode Island Tyler Hall Kingston, RI 02881 Tel: (401) 480-9499 Fax: (401)
AIMMS User s Guide - Advanced Data Management
AIMMS User s Guide - Advanced Data Management This file contains only one chapter of the book. For a free download of the complete book in pdf format, please visit www.aimms.com or order your hardcopy
DATA ITEM DESCRIPTION
DATA ITEM DESCRIPTION Form Approved OMB NO.0704-0188 Public reporting burden for collection of this information is estimated to average 110 hours per response, including the time for reviewing instructions,
ISM 318: Database Systems. Objectives. Database. Dr. Hamid R. Nemati
ISM 318: Database Systems Dr. Hamid R. Nemati Department of Information Systems Operations Management Bryan School of Business Economics Objectives Underst the basics of data databases Underst characteristics
Functional Decomposition Top-Down Development
Functional Decomposition Top-Down Development The top-down approach builds a system by stepwise refinement, starting with a definition of its abstract function. You start the process by expressing a topmost
An Eclipse Plug-In for Visualizing Java Code Dependencies on Relational Databases
An Eclipse Plug-In for Visualizing Java Code Dependencies on Relational Databases Paul L. Bergstein, Priyanka Gariba, Vaibhavi Pisolkar, and Sheetal Subbanwad Dept. of Computer and Information Science,
CHAPTER 6 DATABASE MANAGEMENT SYSTEMS. Learning Objectives
CHAPTER 6 DATABASE MANAGEMENT SYSTEMS Management Information Systems, 10 th edition, By Raymond McLeod, Jr. and George P. Schell 2007, Prentice Hall, Inc. 1 Learning Objectives Understand the hierarchy
Course Syllabus For Operations Management. Management Information Systems
For Operations Management and Management Information Systems Department School Year First Year First Year First Year Second year Second year Second year Third year Third year Third year Third year Third
Comprehensive Business Budgeting
Management Accounting 137 Comprehensive Business Budgeting Goals and Objectives Profit planning, commonly called master budgeting or comprehensive business budgeting, is one of the more important techniques
Measurement Information Model
mcgarry02.qxd 9/7/01 1:27 PM Page 13 2 Information Model This chapter describes one of the fundamental measurement concepts of Practical Software, the Information Model. The Information Model provides
Data, Measurements, Features
Data, Measurements, Features Middle East Technical University Dep. of Computer Engineering 2009 compiled by V. Atalay What do you think of when someone says Data? We might abstract the idea that data are
INFO 1400. Koffka Khan. Tutorial 6
INFO 1400 Koffka Khan Tutorial 6 Running Case Assignment: Improving Decision Making: Redesigning the Customer Database Dirt Bikes U.S.A. sells primarily through its distributors. It maintains a small customer
Quotes from Object-Oriented Software Construction
Quotes from Object-Oriented Software Construction Bertrand Meyer Prentice-Hall, 1988 Preface, p. xiv We study the object-oriented approach as a set of principles, methods and tools which can be instrumental
Business Rules and Business
Page 1 of 5 Business Rules and Business Intelligence Information Management Magazine, April 2007 Robert Blasum Business rules represent an essential part of any performance management system and any business
Quality Control in Spreadsheets: A Software Engineering-Based Approach to Spreadsheet Development
Quality Control in Spreadsheets: A Software Engineering-Based Approach to Spreadsheet Development Kamalasen Rajalingham, David Chadwick, Brian Knight, Dilwyn Edwards Information Integrity Research Centre
Big Data Analytics with IBM Cognos BI Dynamic Query IBM Redbooks Solution Guide
Big Data Analytics with IBM Cognos BI Dynamic Query IBM Redbooks Solution Guide IBM Cognos Business Intelligence (BI) helps you make better and smarter business decisions faster. Advanced visualization
Data Modeling Basics
Information Technology Standard Commonwealth of Pennsylvania Governor's Office of Administration/Office for Information Technology STD Number: STD-INF003B STD Title: Data Modeling Basics Issued by: Deputy
Moving from CS 61A Scheme to CS 61B Java
Moving from CS 61A Scheme to CS 61B Java Introduction Java is an object-oriented language. This document describes some of the differences between object-oriented programming in Scheme (which we hope you
WEBVIEW An SQL Extension for Joining Corporate Data to Data Derived from the World Wide Web
WEBVIEW An SQL Extension for Joining Corporate Data to Data Derived from the World Wide Web Charles A Wood and Terence T Ow Mendoza College of Business University of Notre Dame Notre Dame, IN 46556-5646
Web-Based Genomic Information Integration with Gene Ontology
Web-Based Genomic Information Integration with Gene Ontology Kai Xu 1 IMAGEN group, National ICT Australia, Sydney, Australia, [email protected] Abstract. Despite the dramatic growth of online genomic
Business Intelligence Not a simple software development project
Business Intelligence Not a simple software development project By V. Ramanathan Executive Director, Saksoft Date: Mar 2006 India Phone: +91 44 2461 4501 Email: [email protected] USA Phone: +1 212 286 1083
Sources: On the Web: Slides will be available on:
C programming Introduction The basics of algorithms Structure of a C code, compilation step Constant, variable type, variable scope Expression and operators: assignment, arithmetic operators, comparison,
Automated Theorem Proving - summary of lecture 1
Automated Theorem Proving - summary of lecture 1 1 Introduction Automated Theorem Proving (ATP) deals with the development of computer programs that show that some statement is a logical consequence of
BUSINESS RULES CONCEPTS... 2 BUSINESS RULE ENGINE ARCHITECTURE... 4. By using the RETE Algorithm... 5. Benefits of RETE Algorithm...
1 Table of Contents BUSINESS RULES CONCEPTS... 2 BUSINESS RULES... 2 RULE INFERENCE CONCEPT... 2 BASIC BUSINESS RULES CONCEPT... 3 BUSINESS RULE ENGINE ARCHITECTURE... 4 BUSINESS RULE ENGINE ARCHITECTURE...
Chapter 1: Introduction. Database Management System (DBMS) University Database Example
This image cannot currently be displayed. Chapter 1: Introduction Database System Concepts, 6 th Ed. See www.db-book.com for conditions on re-use Database Management System (DBMS) DBMS contains information
estatistik.core: COLLECTING RAW DATA FROM ERP SYSTEMS
WP. 2 ENGLISH ONLY UNITED NATIONS STATISTICAL COMMISSION and ECONOMIC COMMISSION FOR EUROPE CONFERENCE OF EUROPEAN STATISTICIANS Work Session on Statistical Data Editing (Bonn, Germany, 25-27 September
sql-schema-comparer: Support of Multi-Language Refactoring with Relational Databases
sql-schema-comparer: Support of Multi-Language Refactoring with Relational Databases Hagen Schink Institute of Technical and Business Information Systems Otto-von-Guericke-University Magdeburg, Germany
PROBLEM SOLVING APPROACH IN DATA MANAGEMENT. Whtnston [3].
PROBLEM SOLVING APPROACH IN DATA MANAGEMENT William D. Haseraan Carnegie-Melion University Pittsburgh, Pennsylvania Andrew B. Whinston Purdue University Lafayette, Indiana Abstract This paper looks at
CHAPTER - 5 CONCLUSIONS / IMP. FINDINGS
CHAPTER - 5 CONCLUSIONS / IMP. FINDINGS In today's scenario data warehouse plays a crucial role in order to perform important operations. Different indexing techniques has been used and analyzed using
Answers to Review Questions
Tutorial 2 The Database Design Life Cycle Reference: MONASH UNIVERSITY AUSTRALIA Faculty of Information Technology FIT1004 Database Rob, P. & Coronel, C. Database Systems: Design, Implementation & Management,
