* Your assessment is very important for improving the workof artificial intelligence, which forms the content of this project
Download Databases Definition - Database It is often said that we live in an
Survey
Document related concepts
Entity–attribute–value model wikipedia , lookup
Expense and cost recovery system (ECRS) wikipedia , lookup
Data Protection Act, 2012 wikipedia , lookup
Versant Object Database wikipedia , lookup
Concurrency control wikipedia , lookup
Data center wikipedia , lookup
Data analysis wikipedia , lookup
3D optical data storage wikipedia , lookup
Data vault modeling wikipedia , lookup
Information privacy law wikipedia , lookup
Clusterpoint wikipedia , lookup
Transcript
Databases Definition - Database It is often said that we live in an information society and that information is a very valuable resource (or, as some people say, information is power). In this information society, the term database has become a rather common term although its meaning seems to have become somewhat vague. Some people use the term database of an organisation to mean all the data in the organisation (whether computerised or not). Other people use the term to mean the software that manages the data. We would use it to mean a collection of computerised information such that it is available to many people for various uses. Some authors would put it to us that a database is a collection of data that is organised so that its contents can easily be accessed, managed, and updated, or simply a database is a self-describing collection of integrated records but a more encompassing definition would be as follows: 1. A database is a collection of interrelated data designed to meet the varied information needs of anorganisation. It has 2 most important properties: It is integrated and it is shared. Integration allows reduction of data redundancy and facilitates data access since previously distinct data files will have been logically and coherently organised. Sharing allows all potential users in an organisation to have access to the same data for use in a variety of ways/ activities. Databases contain aggregations of data records or files, such as sales transactions, product catalogsand inventories, and customer profiles. 2. A database is a well-organised collection of data that are related in a meaningful way, which can beaccessed in different logical orders but are stored only once. The data in the database is therefore integrated, structured, and shared. Some of the Database characteristics Shared collection of logically related data (and a description of this data), designed to meet the information needs of an organisation. System catalog (metadata) provides description of data to enable program–data independence. Logically related data comprises entities, attributes, and relationships of an organisation's information. Database application. An application program (or set of related programs) that is used to perform a series of database activities (create, read, update, and delete) on behalf of database users. Characteristics of the database approach a single repository of data is maintained that is defined once and the accessed by various users. Self describing nature of a database system The db system contains not only the database itself but also a complete definition or description of the database. This definition is stored in the system catalog. The system catalog contains information such as the structure of each file, the type and storage format of each data item, etc. The information in the catalog is called meta-data. Insulation between programs and data, and data abstraction „ In traditional file processing the structure of files is embedded in the access programs, so any changes to the structure of a file may require changing all Programs that access the file while in the DB approach the structure of data files is stored in the DBMS catalog separately from the access programs. This is called program- data independence. „ When we consider object oriented databases we may also talk of programoperation independence „ Data abstraction allows program-data independence and program-operation independence. - Support of multiple views of the data - Sharing of data and Multi-user transaction processing Traditional File systems vs. database systems File-based Systems Collection of application programs that perform services for the end users (e.g. reports). Each program defines and manages its own data.- each user defines and implements the files needed for each specific application.- there is redundancy in defining and storing data which in turn results in wasted storage space. Why a database system is needed? Limitations of File-based Approach 1.File processing systems store groups of records in separate files… 2. Separation and isolation of data - Each program maintains its own set of data. - Users of one program may be unaware of potentially useful data held by other programs. 3. Duplication of data (redundancy) - Same data is held by different programs. - Wasted space and potentially different values and/or different formats for the same item => data integrity problem: produce inconsistent results 4. Data dependence/ application program dependency – File structure/ format and records are defined in the program/application code. – Changes in formats must be reflected in the code – Time consuming and error prone tasks 5. Incompatible file formats – Programs are written in different languages, and so cannot easily access each other’s files, rather files written in different programming languages cannot readily be combined or compared. 6. Fixed Queries/Proliferation of application programs - Programs are written to satisfy particular functions. Any new requirement needs a new program. 7. Difficulty of representing data in user’ view point - Relationships among records are not readily represented or processed Database Approach Arose because: – Definition of data was embedded in application programs, rather than being stored separately and independently. – No control over access and manipulation of data beyond that imposed by application programs. Result – The database and Database Management System (DBMS). Database Approach - Integrated data - All the application data is stored in a database - Programmer is not responsible for co-ordinating files; DBMS will do it. - Less duplication of data - Data is stored in only one place - Less data integrity problems - Program/data independence - Record formats are stored in DB itself, so it is accessed by DBMS, not by application programs - Minimises the impact of data format changes on application programs - Easier representation of user’s view of data. - Controlled access to database Controlled access to database may include: – A security system. – An integrity system. – A concurrency control system. – A recovery control system. – A user-accessible catalog. Benefits of the database approach: - Minimal data redundancy and improved data consistency The concept of normalisation ensures that there is reduced data redundancy in a database. - Ease of access to data/ Improved data accessibility and responsiveness Data in a database is interrelated and is in the same format. This facilitates better data retrieval for general use. - Increased of development productivity/Ease of application development and reduced program maintenance/ reduced application development time. New application programs to manipulate data can be written with ease because the data is integrated and is in the same format. Designing and implementing a new database from scratch may take more time. - Improved data sharing Database systems allow multiple access and update of data in a consistent manner. They also allow different views of the same data. - Enforcement of standards/Improved security and integrity - Improved data quality - Availability of up to date information - Flexibility/Program-data independence - Data is independent from applications and shared by multiple users and applications. It should be possible to effect changes to an application program that accesses the data without having to change the structure of the data itself. Similarly it should be possible to change the structure of the data without affecting the application program that operates on it. - Persistence It is possible to maintain data over long periods of time, independent of any program that accesses it. - Resilience The ability of data to survive hardware and software failures without sustaining loss or becoming inconsistent can be provided for in a DB environment.