“Database Software” redirects here. For the computer vides access to all of the data contained in the database
program, see Europress. (although restrictions may exist that limit access to par-
A database is an organized collection of data.[1] It is ticular data). The DBMS provides various functions that
allow entry, storage and retrieval of large quantities of
information and provides ways to manage how that infor-
mation is organized.
Because of the close relationship between them, the
term “database” is often used casually to refer to both a
database and the DBMS used to manipulate it.
Outside the world of professional information technol-
ogy, the term database is often used to refer to any collec-
tion of related data (such as a spreadsheet or a card index).
This article is concerned only with databases where the
size and usage requirements necessitate use of a database
An example of a SQL database query. management system.[2]

the collection of schemas, tables, queries, reports, views, Existing DBMSs provide various functions that allow
and other objects. The data are typically organized to management of a database and its data which can be clas-
model aspects of reality in a way that supports processes sified into four main functional groups:
requiring information, such as modelling the availability
of rooms in hotels in a way that supports finding a hotel • Data definition – Creation, modification and removal
with vacancies. of definitions that define the organization of the data.
A database management system (DBMS) is a • Update – Insertion, modification, and deletion of the
computer software application that interacts with the actual data.[3]
user, other applications, and the database itself to cap-
ture and analyze data. A general-purpose DBMS is de- • Retrieval – Providing information in a form directly
signed to allow the definition, creation, querying, update, usable or for further processing by other applica-
and administration of databases. Well-known DBMSs tions. The retrieved data may be made available in a
include MySQL, PostgreSQL, MongoDB, MariaDB, form basically the same as it is stored in the database
Microsoft SQL Server, Oracle, Sybase, SAP HANA, or in a new form obtained by altering or combining
MemSQL and IBM DB2. A database is not generally existing data from the database.[4]
portable across different DBMSs, but different DBMS
can interoperate by using standards such as SQL and • Administration – Registering and monitoring users,
ODBC or JDBC to allow a single application to work with enforcing data security, monitoring performance,
more than one DBMS. Database management systems maintaining data integrity, dealing with concurrency
are often classified according to the database model that control, and recovering information that has been
they support; the most popular database systems since corrupted by some event such as an unexpected sys-
the 1980s have all supported the relational model as rep- tem failure.[5]
resented by the SQL language. Sometimes a DBMS is
loosely referred to as a 'database'. Both a database and its DBMS conform to the princi-
ples of a particular database model.[6] “Database system”
refers collectively to the database model, database man-
1 Terminology and overview agement system, and database.[7]
Physically, database servers are dedicated computers
Formally, a “database” refers to a set of related data and that hold the actual databases and run only the DBMS
the way it is organized. Access to this data is usually pro- and related software. Database servers are usually
vided by a “database management system” (DBMS) con- multiprocessor computers, with generous memory and
sisting of an integrated set of computer software that al- RAID disk arrays used for stable storage. RAID is used
lows users to interact with one or more databases and pro- for recovery of data if any of the disks fail. Hardware


and their internal engineering. Only in the mid-1980s did computing hardware purpose DBMSs become powerful enough to allow the wide deployment of relational systems (DBMSs plus applications).relational” and also the development of hybrid object- necessary overhead. and purpose DBMSs such as Adabas. lections of webpages in a database. computer memory. MySQL.inant database models. or more likely Since DBMSs comprise a significant economical market. the query language(s) ters. eras based on data model or structure: navigational. Codd. are also used in large volume sertion and deletion of messages composed of various transaction processing environments. and per- formance of databases and their respective DBMSs Databases are used to support internal operations of or. Oracle and DB2 have Microsoft SQL Server are the top DBMS. the type(s) of computer they run on (from a and the DBMSs’ external interfaces and tuning parame- server cluster to a mobile phone). and post-relational.[10] The dom- been undergoing upgrades since the 1970s. grammers may use a wire protocol directly. which affects performance. in- . departed from this tradition by insisting that ap- plications should search for data by content. and as of 2015 years of development effort. which adds to the complexity.come the inconvenience of object-relational impedance purpose DBMS is not always the optimal solution: in mismatch.[9] Databases are used to hold administrative information SQL/relational. from databases before the inception of Structured Query Many other databases have application software that ac- Language (SQL). has influenced database languages for other cations as possible. first proposed in 1970 by Edgar F. capabilities. rather than by following links. since there was no proper method posing the DBMS interface directly. there are many examples relational databases. but these functions are limited to what is be built around a custom multitasking kernel with built. A com. without ex- dundant and disorderly. and thus need some more the database model(s) that they support (such as relational knowledge and understanding about how DBMSs operate or XML).[lower-alpha 1] Some general. required to handle email and don't provide the user with in networking support. DBMSs may email address. however. Database computer and storage vendors often take into account designers and database administrators interact with the DBMS requirements in their own development plans. scalability. standardised SQL for the rela- purpose DBMSs aim to meet the needs of as many appli. the sizes. used to access the database (such as SQL or XQuery). Therefore. re- cesses the database on behalf of end-users. connected to one or more servers the functions of a general-purpose DBMS such as the in- via a high-speed channel. The data recovered was disparate.2 4 HISTORY database accelerators. General.of ledger-style tables. and 2 Applications computer networks.tional model. and more specialized data. a general. which led to the coining of the term “post- some cases a general-purpose DBMS may introduce un. resilience. ever. but modern DBMSs typically rely all of the functionality that would be available using a on a standard operating system to provide these functions general-purpose DBMS. How. include computerized library systems. such as engineering data or The two main early navigational data models were the economic models. computer storage.ment of database technology can be divided into three tomers and suppliers (see Enterprise software).[8] DBMS through dedicated interfaces to build and main- Databases and DBMSs can be categorized according to tain the applications’ databases. relational systems dominated in all its development typically requires thousands of human large-scale data processing applications. imple- systems. the fact that their development cost can be spread over a large number of users means that they are often Object databases were developed in the 1980s to over- the most cost-effective approach. epitomized by IBM’s IMS system. flight reservation and the CODASYL model (network model). DBMSs are found items of data or associating messages with a particular at the heart of most database applications. Application pro- to fetch it and arrange it in a concrete structure. The develop- ganizations and to underpin online interactions with cus. By the A DBMS has evolved into a complex software system and early 1990s. 4 History Following the technology progress in the areas of processors.have grown in orders of magnitude. through an application programming interface. of systems that use special-purpose databases. and many mented in a number of products such as IDMS. The relational model employs sets 3 General-purpose and special. each used for a different type of entity. computerized parts inventory systems. and security. Oracle. Examples of database applications hierarchical model. However.they remain dominant : IBM DB2. content management systems that store websites as col- The relational model.The next generation of post-relational databases in the mon example is an email system that performs many of late 2000s became known as NoSQL databases.

by the mid. of commercial products based on this approach entered the market. he described a new system for storing and sense. However. author of one such product. and soon a number cially available relational DBMSs. Codd’s idea was to use a "table" of fixed- 1960s a number of such systems had come into commer. which generally became the high performance of NoSQL compared to commer. Many CODASYL databases also added a very straightforward query language. but used a strict hierarchy for its model of data navigation instead of CODASYL’s net- work model. and Charles of entity. he contrast with the tape-based systems of the past.[13] first to use the term “data-base” in a specific technical In this paper. Applications could find records by one of three Further information: Navigational database methods: The introduction of the term database coincided with 1. the Database Task retained the relational/SQL model while aiming to match Group delivered their standard. notably the lack of a “search” facility. He was un- the availability of direct-access storage (disks and drums) happy with the navigational model of the CODASYL ap- from the mid-1960s onwards. Use of a primary key (known as a CALC key. relational DBMS 3 troducing fast key-value stores and document-oriented Store (IDS). IMS is classified as a hierarchical database.[12] 4. A linked-list system would be very inefficient Bachman. known as the “CODASYL approach”. The term represented a proach.1 1960s. typi- cally implemented by hashing) 2. CODASYL was very complex and required signif- icant training and effort to produce useful CODASYL.2 1970s. The CODASYL approach relied on the “manual” navi- 4. the group responsible for the creation and NewSQL databases attempted new implementations that standardization of COBOL. known as Information Management System (IMS). in the final tally. navigational DBMS gation of a linked data set which was formed into a large network. working with large databases.2 1970s. a number of stored in some sort of linked list of free-form records as general-purpose database systems emerged. Scanning all the records in a sequential order Later systems added B-trees to provide alternate access paths. A competing “next generation” known as CODASYL.4. IMS was generally similar in con- cept to CODASYL. Both concepts later became known as navi- gational databases due to the way data was accessed. and Bachman’s 1973 Turing Award presentation was The Pro- grammer as Navigator. in Basic structure of navigational CODASYL database model one of their offshoot offices that was primarily involved in the development of hard disk systems. the Integrated Data when storing “sparse” databases where some of the data . IMS was a de- velopment of software written for the Apollo program on the System/360. IBM also had their own DBMS in database construction that eventually culminated in the The Oxford English Dictionary cites[11] a 1962 report by groundbreaking A Relational Model of Data for Large the System Development Corporation of California as the Shared Data Banks. Instead of records being As computers grew in speed and capability.length records. In 1971. IMS remains in use as of 2014. Navigating relationships (called sets) from one record to another 3. IDMS and Cincom Systems' TOTAL database are classified as network databases. with each table used for a different type cial use. Interest in a standard began to grow. founded the “Database Task Group” within databases. In 1970. relational DBMS Edgar Codd worked at IBM in San Jose. allowingwrote a number of papers that outlined a new approach shared interactive use rather than daily batch processing. California.

a relational model can express both hierar.tem[14] based on D. a hardware disk simple “re-linking” of related data back into a single col. if the login name of a and the Britton Lee. attempts were made to build system. the relational ap- take up room only if needed. encing other entities in what is known as one-to-many relationship. chical and navigational models. searching for this key. Records would be created in these optional tables only if the ad. updating etc. records are “linked” using virtual keys IBM itself did one test implementation of the relational not stored in the database but defined as needed between the data model. This agement was ICL's CAFS accelerator. normalized tables (or relations). user is unique. the data would be normalized into a user table. was used as a "key". the early offering of Teradata. some bit of information database systems with integrated hardware and software. Data may be freely inserted. later spawn the ubiquitous SQL.S. and researchers from the University of Alberta. Codd’s solution to the necessary loop- whatever maintenance needed to present a table view to ing was a set-oriented language. The relational lection is something that traditional computer languages model solved this by splitting the data into a series of are not designed for. Envi- terms of these three models. Inc. addresses and phone numbers for that user Another approach to hardware support for database man- would be recorded with the login name as its key. an address 4. he demonstrated that "key" such a system could support all the operations of normal databases (inserting. all of this data would be placed in a single record.Main article: Database machine dress or phone numbers were actually provided. Linking the information back together is the key to this In the 1970s and 1980s. database machine. like a navigational (network) ment of the MICRO Information Management Sys- model. For instance. Childs’ Set-Theoretic Data model. Honeywell wrote MRDS for Multics. a suggestion that would the application/user. Using a branch of math- ematics known as tuple calculus. proach would require loops to collect information about deleted and edited in these tables. IN- mark 555. In the relational model. Thus. like a traditional hierarchical model. their name. login infor- puters using the Michigan Terminal System.555.controller with programmable search capabilities. and now there are two new implementa- The relational model also allowed the content of the tions: Alphora Dataphor and Rel. the University of Michigan.would provide higher performance at lower cost. and a production one. Beginning login phone in 1973. Most other DBMS im- database to evolve without constant rewriting of links and plementations usually called relational are actually SQL pointers.4 4 HISTORY for any one record could be left empty. INGRES moved to the emerging SQL standard. as well as its native tab. with optional elements Just as the navigational approach would require programs being moved out of the main table to where they would to loop in order to collect records. INGRES delivered its first test products which were generally ready for widespread use in 1979. Business System contained in the records. PRTV. The relational part comes from entities refer- DBMSs. The underlying philosophy was that such integration When information was being collected about a user. In the relational approach. with the DBMS doing any one record.[18] The sys- mation. Exam- formation stored in the optional tables would be found by ples were IBM System/38. lion Lion Kimbro Eugene Wong and Michael Stonebraker. ronmental Protection Agency. in- "related table" cluding the use of a “language” for data access. In the relational model. and For instance. It ran on IBM mainframe com- track information about users.L. They started a project known as INGRES using funding that had al- kitty Amber Straub ready been allocated for a geographical database project and student programmers to produce code. and unused items would simply not be placed in the database.5555 GRES was similar to System R in a number of ways. uniquely defining a particular record. allowing for pure or combined modeling in sets by the US Department of Labor. various addresses and phone numbers. a common use of a database system is to Wayne State University.) as well as providing login first last a simple system for finding and returning sets of data in a single operation. known as QUEL. the University of Michigan began develop- many-to-many relationship. mark Samuel Clemens Codd’s paper was picked up by two people at Berkeley. In . in. 12.3 Integrated approach table and a phone number table (for instance). and In 1970. Over time. In the tem remained in production until 1998.[15][16][17] MICRO was used to manage very large data ular model. as the application requires. both now discontinued. the U. navigational approach.

pings (ORMs) attempt to solve the same problem. Database mismatch" described the inconvenience of translating be- 2 (DB2). using general-purpose computer data storage. object-oriented IBM started working on a prototype system loosely based on Codd’s concepts as System R in the early 1970s. known as SQL/DS. dBASE product was lightweight and easy for any com. that person’s attributes. done. and beat IBM to this problem by providing an object-oriented language market when the first version was released in 1978. Programmers and designers began to treat the that all of the data for a record (some of which is optional) data in their databases as objects.6 1990s. database consistency characteristics and high level of database security. Postgres.4 Late 1970s. dividual fields. and pace with the rapid development and progress of general. On the pro- Stonebraker went on to apply the lessons from INGRES to develop a new database.4. The The 1990s. The storing denormalized data. The most popular NoSQL systems in- like Lotus 1-2-3 and database software like dBASE. so the user can concentrate on what he hardware. object-oriented 5 the long term. later.[20] The term "object-relational impedance sion of System R. sion critical applications (the . Redis. Codd’s paper was also read and Mimer SQL Main articles: NoSQL and NewSQL was developed from the mid-1970s at Uppsala Univer- sity. by which time a standardized query lan. 4. as do many large companies and financial institutions).[21][22][23] 4. . on the desktop NoSQL databases are often very fast. XML database management systems emerged in 1976 and gained popularity for database de- include commercial software MarkLogic and Oracle sign as it emphasized a more familiar description than Berkeley DB XML. and age. this project was consolidated into an inde- pendent enterprise. Object Larry Ellison's Oracle started from a different chain.7 2000s.”[19] dBASE was one of the top selling software titles in the 1980s and early 1990s. (sometimes as extensions to SQL) that programmers can use as alternative to purely relational SQL. and. In 1984. phone number. and the difference between the dard ACID-compliant transaction processing with strong two have become and .5 1980s. All are enterprise constructs were retrofitted as a data modeling construct software database platforms and support industry stan- for the relational model. and managing by some companies like Netezza and Oracle (Exadata). Codd’s ideas were estab. Sub. where XML is be- ing used as the machine-to-machine data interoper- Another data model. C. tween programmed objects and database tables. 4. SQL DBMS 4. sequent multi-user versions were tested by customers in such as their domain name registries use it as their primary data store. in enterprise database management. In the early 1980s. and closing files. and a free use software Clusterpoint the earlier relational model. be relations to objects and their attributes and not to in- DASYL. oriented database that allows querying based on XML an idea that was subsequently implemented on most other document attributes. Hazelcast. avoid join operations by The 1980s ushered in the age of desktop computing. FORTRAN. Thus most database systems nowa. these efforts were generally unsuccessful Ratliff the creator of dBASE stated: “dBASE was dif- because specialized database machines could not keep ferent from programs like BASIC.[24] puter user to understand out of the box. along with a rise in object-oriented program- first version was ready in 1974/5. ability standard. CouchDB. reading. Memcached. C. COBOL in that a lot of the dirty work had already been purpose computers. XML databases are mostly used DBMSs. and are designed to scale new computers empowered their users with spreadsheets horizontally. NoSQL and NewSQL In Sweden. saw a growth in how data in various databases were on multi-table systems in which the data could be split so handled. Later on. pushing IBM to develop a true production ver. This allows for relations between data to lishing themselves as both workable and superior to CO. Mimer introduced XML databases are a type of structured document- transaction handling for high robustness in applications. rather than having to mess with the dirty de- However this idea is still pursued for certain applications tails of opening. is doing. considered to belong to that person instead of being ex- guage – SQL – had been added. entity–relationship Distributed XML/JSON Database. space allocation. PostgreSQL is often used for global mis. The clude MongoDB. person’s data were in a database. the entity–relationship model. and work then started ming. libraries known as object-relational map- as PostgreSQL. That is to say that if a did not have to be stored in a single large “chunk”. databases and object-relational databases attempt to solve based on IBM’s papers on System R. Wayne which are all open-source software products. Riak. were now 1978 and 1979. do not re- quire fixed table schemas. Apache Cassandra. which is now known gramming side.6 1990s. The data manipulation is done by dBASE instead days are software systems running on general-purpose of by the user. and HBase. Couchbase. traneous data.

and managing document-oriented. Examples of these are col- ory databases are faster than disk databases. movies. For that reason. Such databases include ScaleBase. sales data might be aggregated Research). or multimedia objects. . many tecture which can respond to conditions both inside NoSQL databases are using what is called eventual con. IEEE ICDE). with a relational database. individual end-users. academic journals (for example. uct codes to use UPCs so that they can be compared cluded models. but not all three. A dis- tributed system can satisfy any two of these guarantees • An active database includes an event-driven archi- at the same time. HANA was elementary DBMS functionality. for example: bibliographic. and more. loading. ACM SIGMOD. for example by using the ACM PODS. • Data warehouses archive data from operational 5 Research databases and often from external sources such as market research firms. RAID. much simpler than full-fledged DBMSs. such as the • An embedded database system is a DBMS which is database structure or interface type. contents. such multimedia. information. Another way is by their oriented databases are one of the main categories of application area. sta- or semi structured data.g. and managing data so as to make them available for The database research area has several dedicated further use. alerting. Datalog language. music com- NoSQL databases. By May 2012. Clustrix. document-text. and partition tolerance guarantees. Several products ex- as in telecommunications network equipment. NuoDB. Both of NoSQL systems for online transaction processing the database and most of its DBMS reside remotely. Research activity includes theory and devel. A third way is by some technical aspect. Main mem. Possible uses include secu- sistency to provide both availability and partition toler.[26] ist to support such databases. and other files. and query optimization methods.6 6 EXAMPLES In recent years. Many databases provide active database features in the form of database triggers. • A document-oriented database is designed for stor- One way to classify databases involves the type of their ing. thorization. • A distributed database is one in which both the data 6 Examples and the DBMS span multiple computers. retrieving. utilized by (application’s) end-users through a web EnterpriseDB. MemSQL. Document- tistical.[27] • An in-memory database is a database that primarily resides in main memory. This section lists a tightly integrated with an application software that few of the adjectives used to characterize different kinds requires access to stored data in such a way that the of databases. to weekly totals and converted from internal prod- opment of prototypes. VLDB. Some basic and essential lated concurrency control techniques. largest SAP customers. banking. Data and Knowledge Engineer. or insurance. availability. are often used where response time is critical. spreadsheets. positions. while its applications are both de- taining the ACID guarantees of a traditional database veloped by programmers and later maintained and system. and so lections of documents. the atomic transaction concept. and re. with ACNielsen data. there was a high demand for massively able to run on servers with 100TB main memory distributed databases with high partition tolerance but powered by IBM.. and outside the database. presentations. browser and Open APIs. statistics gathering and au- ance guarantees with a reduced level of data consistency. Notable research topics have in. rity monitoring. For example. both in academia and in the research end-users who may not have access to operational and development groups of companies (for example IBM data. transforming. analyzing. query languages components of data warehousing include extracting. • A deductive database combines logic programming ing-DKE) and annual conferences (e. The co founder of the company according to the CAP theorem it is impossible for a claimed that the system was big enough to run the 8 distributed system to simultaneously provide consistency. for example: accounting. NewSQL is a class of modern relational databases that aims to provide the same scalable performance • A cloud database relies on cloud technology. manufacturing. The warehouse becomes the Database technology has been an active research topic central source of data for use by managers and other since the 1960s. ACM Transactions on Database Systems-TODS.[25] and VoltDB. with more memory database. but is typically backed-up • End-user databases consist of data developed by by non-volatile computer data storage. (read-write) workloads while still using SQL and main- “in the cloud”. and mining data. DBMS is hidden from the application’s end-users and requires little or no ongoing maintenance. Some of them are SAP HANA platform is a very hot topic for in.

credit. another enough for the result to come back and be acted on piece of text. where each processing and network databases. Most established DBMSs now efits. and retrieval of knowledge. low distributed (global) transactions across the par. an article. It may include email messages. often customized for a specific field. edges. They typically mon databases. Examples include customer databases name may be misleading since some objects can be that record contact.. Also a collection of data representing problems with • A terminology-oriented database builds upon an their solutions and related experiences. However. they are useful dimensional features.g.g. and retrieve (usually large) multi-dimensional arrays such as satellite images • Probabilistic databases employ fuzzy logic to draw and climate simulation output. with an integrated conceptual view. tures which are induced by the un- onym to federated database. sion of SQL. as well as (ACP). where each processing unit (typically consisting of mul- • A graph database is a kind of NoSQL database that tiple processors) has its own uses graph structures with nodes. ticipating databases. each with its own DBMS. and provides them building indexes and evaluating queries. Web is thus a large distributed hypertext database. support unstructured data in various ways. providing the means for the computerized usually include valid-time and transaction-time. product components. though it may refer derlying hardware architecture are: to a less integrated (e. personnel ject collection does not fit into a predefined struc- databases that hold information such as salary. • An unstructured data database is intended to store in a manageable and protected way diverse objects • Operational databases store detailed data about that do not fit naturally and conveniently in com- the operations of an organization. for • A knowledge base (abbreviated KB. In this tecture. e. and new source planning systems that record details about dedicated DBMSs are emerging. kb or Δ[28][29] ) example a temporal data model and a temporal ver- is a special kind of database for knowledge man. heterogeneous database system). General share the other storage. 7 • A federated database system comprises several dis.. skills data about employees. and demographic in. graph databases that can store any graph are distinct • Shared nothing architec- from specialized graph databases such as triplestores ture. organization. hyperlinked to that object. object-oriented database. The transactions. process relatively high volumes of updates using documents. other data storage. multimedia objects. or a film.. The World Wide closest hotel in my area?". Hypertext databases are particularly useful for organizing large amounts of • A spatial database can store the data with multi- disparate information. without an FDBMS and a managed integrated schema) group of databases • Shared memory archi- that cooperate in a single application. • In a hypertext or hypermedia database.g. typically middleware is used for distribution. enterprise re. a picture. accounting and financial dealings. inferences from imprecise data. processors share the main which typically includes an atomic commit protocol memory space. tured framework. which transparently integrates multiple autonomous DBMSs. highly structured. • A temporal database has built-in time aspects. can be right away. etc. and prop. to al. . any word or • Real-time databases process transactions fast a piece of text representing an object. unit has its own main memory • An array DBMS is a kind of NoSQL DBMS that and other storage. • Shared disk architecture. It is han. More specifically the temporal aspects agement. the entire possible ob- formation about a business’ customers. but all units erties to represent and store information. collection. possibly of • A parallel database seeks to improve performance different types (in which case it would also be a through parallelization for tasks such as loading data. cial databases that keep track of the organization’s dled as a single database by a federated database money. e. parts inventory. where users can include location-based queries. like “Where is the conveniently jump around the text. store. The queries on such data for organizing online encyclopedias. ben. For example. and finan- tinct databases. main memory. the two-phase commit protocol. where multiple case. allows to model. • A mobile database can be carried on or synchronized from a mobile computing device. journals. The major parallel DBMS architec- • Sometimes the term multi-database is used as a syn. management system (FDBMS).

and database model for the modelling notation used to express that design. proach to this is to develop an entity-relationship model. The process of creating a logical database design us- ing this model uses a methodical approach known as normalization. it will allow this in- as well as defining security levels and methods for the data formation to be captured. and the like. (The terms data model and proximation of relational). Designing a good conceptual itself. Having produced a conceptual data model that users are happy with. recovery. A key goal during this stage is data independence. and manipulated. scalability. and access patterns.) Main article: Database design The most popular database model for general-purpose The first task of a database designer is to produce a databases is the relational model. and the output is a logical data model expressed in the form of a schema. the logical data model will be ganized. or the analysis of workflow in the organization. and requires a good knowledge of the expected workload often with the aid of drawing tools. There are two types of data independence: Physical conceptual data model that reflects the structure of the data independence and logical data independence. and deletions automatically maintain consistency. The answers to these questions establish definitions of the terminology used for entities (customers.1 Models with two different forms of packaging. it can help when deciding whether the database needs to hold historic data as well as current data. Whereas the conceptual data mines the logical structure of a database and fundamen- model is (in theory at least) independent of the choice tally determines in which manner data can be stored. is that one flight or two A database model is a type of data model that deter- (or maybe even three)?". are those the same product or different products?". it typically involves asking deep questions about the things of interest to an organisation. Physi- information to be held in the database. like “can a customer also be a supplier?". data model will accurately reflect the possible state of the Another aspect of physical database design is security. or “if a plane flies from Main article: Database model New York to Dubai via Frankfurt. For example. products. The most popular example of expressed in terms of a particular database model sup. flights. a database model is the relational model (or the SQL ap- ported by the chosen DBMS. The goal of normalization is to ensure that each elementary “fact” is only recorded in one place. or “if a product is sold 7. Producing the conceptual data model sometimes involves input from business processes. and a deep understanding of the fea- proach is the Unified Modeling Language. the relational model as represented by the SQL language. mean- ing that the decisions made for performance optimization purposes should be invisible to end-users and applica- tions. This process is often called logical database design. so that insertions. if people can involves both defining access control to database objects have more than one phone number. It external world being modeled: for example. Another popular ap. This is often called physical database design. A common ap. This can help to establish what infor- mation is needed in the database. updates. A successful tures offered by the chosen DBMS. flight segments) and their relationships and attributes. the next stage is to translate this into a schema that implements the relevant data structures within the Collage of five types of database models database. this article we use data model for the design of a specific Common logical data models for databases include: . data model requires a good understanding of the applica- tion domain. but in mat.8 7 DESIGN AND MODELING 7 Design and modeling database. cal design is driven mainly by performance requirements. and what can be left out. or- of database technology. The final stage of database design is to make the decisions that affect performance. or more precisely. security. which uses a table-based for- database model are often used interchangeably.

Specialized models are optimized for particular types of data: While there is typically only one conceptual (or logical) and physical (or internal) view of the data. It deals with storage layout of the data. • Inverted index • The internal level (or physical level) is the inter- • Flat file nal organization of data inside a DBMS.2 External. there can be • XML database any number of different external views. For example. and internal views 9 • Navigational databases • Hierarchical database model • Network model • Graph database • Relational model • Entity–relationship model • Enhanced entity–relationship model External Schema Internal Schema • Object model -User View. the synthesis of all the external views.7. conceptual. The idea A database management system provides three views of is that changes made at a certain level do not affect the the database data: view at a higher level.[31] It provides structures. Occasionally it stores data of individual views (materialized views). a financial department of a company needs • Content store the payment details of all employees as part of the com- • Event store pany’s expenses. tween internal and external. processing viewpoint. It is con- cerned with cost. On one hand it provides a .2 External. This allows users to see database information in a more business-related • Semantic model way rather than from a technical. computed • Multidimensional model from generic data. in an attempt to optimize overall performance across all activities. if performance justification ex- ists for such redundancy. A single database can have any number of views at The conceptual view provides a level of indirection be- the external level. Thus different departments need different views of the company’s database. but does not need details about employ- ees that are the interest of the human resources depart- • Time series model ment. It is out of the scope of the various database end-users. performance. For example. -Computer View- • Document model • Entity–attribute–value model Traditional view of data[30] • Star schema • The conceptual level unifies the various external An object-relational database combines the two related views into a compatible global view. which reduces the impact of users sees the organization of data in the database.conceptual level interfaces. conceptual. 7. making physical changes to improve performance. using storage structures such as indexes to • Associative model enhance performance. changes in the inter- nal level do not affect application programs written using • The external level defines how each group of end. scalability and other Other models include: operational matters. and internal The three-level database architecture relates to the con- views cept of data independence which was one of the major initial driving forces of the relational model. possibly conflict- • Multivalue model ing. and is Physical data models include: rather of interest to database application developers and database administrators. It balances all the external • Array model views’ performance requirements.

requires ing. which 9 Performance.g. or dropping and the relationships to the smooth running of an enterprise. which is hidden inside • Computations to modify query results. and internal data structures) to reconstruct the from the relational model as described by Codd (for conceptual level and external level from the internal level example. “data about tional model. and even every exter- nal view. while in operation. Separating the external. The standards have been regularly lizing the operating systems’ file systems as intermediates enhanced since and is supported (with varying de.g. possibly in very large amounts.10 9 PERFORMANCE. grouping. Putting data into permanent storage is dered). and avail- do one or more of the following: ability • Data definition language – defines data types such as Because of the critical importance of database technology creating. Data typically reside • XQuery is a standard XML query language im.[34] external view structures.Notable examples include: Database storage is the container of the physical materi- • SQL combines the roles of data definition. and availability. and thus are closely maintained by • OQL is an object model language standard (from the database administrators. rela. and on the other hand it abstracts away details of how the data are stored or managed (inter. summing. It comprises the internal (phys- nipulation.. are coded into bits. security. by relational databases with levels. and query in a single language. setting are extremely important for the efficient opera- cial relational DBMSs. conceptual and internal levels was • Constraint enforcement (e. Though typically accessed by a DBMS the International Organization for Standardization through the underlying operating system (and often uti- (ISO) in 1987. in the storage in structures that look completely different plemented by XML database systems such as from the way the data look in the conceptual and external MarkLogic and eXist.a. It was ical) level in the database architecture.A database language may also incorporate features like: nal level). management tional model). independent of different • SQL/XML combines XQuery with SQL. for storage layout). SQL became a standard of the American generally the responsibility of the database engine a. the rows and columns of a table can be or. like count- the DBMS and depends on its implementation. security.. only allowing one engine type per car) mentations that dominate 21st century databases.1 Storage Main articles: Computer data storage and Database Database languages are specific to a particular data engine model. alization of a database. and also sible) these levels’ reconstruction when needed by users by in-memory XML processors such as Saxon. in an automotive a major feature of the relational database model imple. although it departs in some respects the data”. It also contains one of the first commercial languages for the rela. In principle every level. The internal level. sorting. updating.k. AND AVAILABILITY common view of the database. and a different level of detail and uses its own types of data cross-referencing structure types.g. and allow database • Data manipulation language – performs tasks such administrators to control the use of these features. as well as for computing additional types . The database data JDOQL and EJB QL. all the information needed (e.[31] • Application programming interface version of the query language. National Standards Institute (ANSI) in 1986. memory and external storage). but in ways that attempt to optimize (the best pos- XML capability such as Oracle and DB2. SECURITY. averaging.g. and programs. metadata. when needed. In practice usually a given DBMS uses the same data model • DBMS-specific Configuration and storage engine for both the external and the conceptual levels (e. and the additional needed information. database. for programmer convenience 8 Languages Database languages are special-purpose languages. storage properties and configuration grees of conformance) by all mainstream commer. altering.. as inserting. can be presented by a different data model. A DBMS.[32][33] tion of the DBMS. Object Data Management Group). and of “storage engine”. or deleting data occurrences • Query language – allows searching for information and computing derived information 9. It has influenced always has its database residing in several types of storage the design of some of the newer query languages like (e. database systems among them include complex mechanisms to deliver the required per- formance. data ma.

crash.. e. or sides of materialized views are the overhead incurred destruction. A common example is storing materialized personal databases.g.e.g. Storing such views saves the expensive Data security in general deals with protecting specific computing of them each time they are needed. by looking at the strings of bits that they dundancy. database uses to unintentional database accesses by unau. of simultaneous multiple end-user accesses to a same database object. but one group of users may be authorized to view Main article: Materialized view only payroll data. in that transaction (determined by the transaction’s pro- cess what information in the database.chunks of data. Conven. A database transaction is a unit of work. tion may comprise specific database objects (e. from viewing or updating the database. the storage engine to serialize the data model so it can be written to the medium of choice. see physical security). what was changed. or by the assignment of individuals and privileges to groups.. or specific and Durability. uses dedicated protected security DBMS interfaces. tations over certain objects (e. an employee 9. and its users. Each transaction has well defined boundaries Database access control deals with controlling who (a in terms of which program/code executions are included person or a certain computer program) is allowed to ac. Various low-level database storage structures are used by This may be managed directly on an individual basis. concluding specific valid credit-card numbers.).. so multiple encodings can be special authorized (by the database owner) personnel that used in the same database. or parts of them to meaningful in- original updated database data. If the DBMS provides a way to interactively enter and update the database. The down. views. The informa. a person or a computer program).g.g. or utilizing specific access paths to the former the database). . as Often storage redundancy is employed to increase per- well as interrogate it. Techniques such as or (in the most elaborate models) through the assignment indexing may be used to improve performance. data structures).3 Transactions and concurrency 11 of needed information from the data (e.. Main article: Database replication Logging services allow for a forensic database audit later by keeping a record of access occurrences and changes.formation (e. etc.g. and the cost of storage re. entitlements. encapsulating a number of operations over a database It ranges from protection from intentional unauthorized (e.cess information). which consist of frequently needed external views or query results.1. Consistency.1 Materialized views database can contain all the data about an individual em- ployee.2 Security Further information: Concurrency control Main article: Database security Database transactions can be used to introduce some level of fault tolerance and data integrity after recovery from a Database security deals with all various aspects of pro. typically tecting the database content. query types. Data security prevents unauthorized users oriented and correlation databases. writing. the entire database is replicated. 9.g. but there are also column. certain compu. 9.. using specific indexes or other data structures to ac- Some DBMSs support specifying which character encod. e. Isolation. Database access controls are set by ing was used to store data.. Updates of a repli- cated object need to be synchronized across the object copies. an abstraction supported in database and also other thorized entities (e. from corruption. of individuals and groups to roles which are then granted tional storage is row-oriented. and to provide resiliency in a case of par- tial failure of a distributed database). record The acronym ACID describes some ideal properties of a types. or the when updating them to keep them synchronized with their interpretation of them. acquiring lock.g. both physically (i. reading a database object.. (e.g. specific records. see data encryption). and when it was changed. In many cases.1.2 Replication Change and access logging records who accessed which attributes. users are allowed access to the entire database or sub- sets of it called “subschemas”. while others are allowed access to only work history and medical data. when querying queries).. Sometimes application-level code is used to Occasionally a database employs storage redundancy by record changes rather than leaving this to the database.9.3 Transactions and concurrency 9.. this capability allows for managing formance. Using passwords. systems. or removal. grammer via special transaction commands).database transaction: Atomicity.. comprise. database objects replication (with one or more copies) to Monitoring can be set up to attempt to detect security increase data availability (both to improve performance breaches. its owners.g. For example.

etc. in many cases cuted to compute the query result. To achieve this. the values of its erational (different DBMSs may have different capabili.. application’s data may span computers. After designing a database for an application. application data. a backup operation is done occasionally or continuously. in some situations. A complex or large database migra- tion may be a complicated and costly (one-time) project 9. storage allocation parameters. or if a database from one DBMS to another. it is desirable to move. been extended to the field of query languages for rela- tional databases as a way to support sound approximation techniques..7 Static analysis by itself. The transformation ist to do this effectively).12 9 PERFORMANCE. the other DBMS cannot run it). SECURITY.). In some cases. DBMS hard- ters may need changing and the database may need to be ware configuration (a DBMS and related database tuned (tuning) for better performance. This in spite of the fact that tools may exist to help Static analysis techniques for software verification can migration between specific DBMSs. How. new related applica.. kept within dedicated backup files (many techniques ex- tion from one DBMS type to another. When this state is needed. which should be factored into the decision to mi- grate.e. for security purposes. in particular.5 Building. The reasons are it has been updated with erroneous data). data and their embedding in database’s data structures) is ties). storage migration. networks.4 Migration 9.g. a DBMS be applied also in the scenario of query languages. The migration involves the database’s transforma. A DBMS provides the needed user in. cases when the ever.Other DBMS features might include: terfaces to be utilized by database administrators to de- fine the needed application’s data structures within the • Database logs DBMS’s respective data model. i. etc. Other user interfaces are used to select needed DBMS parameters (like security • Graphics component for producing graphs and related. programming. After the database is created. all related application programs) intact. which is typically a distinct project. by a desired point in time when the database was in this els should be maintained in the transformation. especially in a data warehouse system When the database is ready (all its data structures and • Query optimizer – Performs query optimization on other needed components are defined). database configuration monitoring. Various database parame. . by specifying this state the database’s conceptual and external architectural lev. where each desired database state (i. an appropri. application program maintenance.e. Typically. The abstraction of relational database 9. previous state (for many reasons. the database becomes operational while empty of application • Tools or hooks for database design. initialised and populated database performance analysis and monitoring. Thus. Main article: Database tuning watermarking. it is typically pop- every query to choose for it the most efficient query ulated with initial application’s data (database initializa- plan (a partial order (tree) of operations) to be exe- tion.e. AND AVAILABILITY 9. ent total costs of ownership or TCOs). layout monitoring. functional. e. Typically. and tuning system has many interesting applications. the next stage is building the database. and op.. should maintain (if possible) the database related applica. charts. Sometimes it is desired to bring a database back to a other DBMS (i.e. maintaining. It may be state). sertion) before making it operational. storage allocation and database functionality.8 Other ate general-purpose DBMS can be selected to be utilized for this purpose. and data are accumulated during its operation.[35] The semantics of query languages can be tuned according to suitable abstractions of the concrete domain of data. database back to this state (e. primarily economical (different DBMSs may have differ. and storage units) structures may be changed or added. migrate database is found corrupted due to a software error. such as fine grained access control. the *Abstract interpretation framework has other popular DBMSs. when it is decided by a database administrator to bring the tion (i.9. these files are utilized to restore that state. etc. In vendor provides tools to help importing databases from particular. it needs to be maintained.. desired that also some aspects of the architecture internal level are maintained. and related database mapping (especially for a dis- tion programs may be written to add to the application’s tributed DBMS)..6 Backup and restore See also: Data migration § Database migration Main article: Backup A database built with one DBMS is not portable to an.g. etc. May be specific using specialized DBMS interfaces that support bulk in- to a particular storage engine.

testable. [26] “TeleCommunication Systems Signs up as a Reseller of 12 References TimesTen.Definition of retrieval by Merriam-Webster”. • Comparison of object database management sys- tems [15] North 2010. Retrieved 22 Jan- [1] This article quotes a development time of 5 years involving uary 2013. Pages: 472–482. merriam-webster. [23] “Clusterpoint Database at a Glance”.Definition of database by Merriam-Webster”. 2002-06-24. n”. 2008. January “IBM Information Management Sys- tem (IMS) 13 Transaction and Database Servers delivers Main article: Outline of databases high performance and low total cost of ownership”. there are calls for a single system [5] “Administration . October 1977. and B. “COTS Databases For Embedded Sys- [2] Ullman & Widom 1997. 2013. supposed to be stable. Portland. The FoxPro History. Kahn. merriam-webster. Wire. Bronson. Retrieved on August 13.A. pypl. • Comparison of database tools [14] Hershey & Easthope 1972. Retrieved July 12. D. functionalities into the same build. M. [10] “TOPDB Top Database index”.Definition of administration by and methodology that incorporates all of these core Merriam-Webster”. Retrieved 10 December 2010. United States. Guillermo R. 2007) [25] Proctor 2013. Mobile Operators and Carriers Gain Real- Time Platform for Location-Based Services”. and de- [6] Tsitchizris & Lochovsky 1982. Retrieved 10 March 2015. such offerings "DevOps for Database". [24] “DB-Engines Ranking”. 1. [13] Codd 1970. Oxford University Press. • Comparison of relational database management sys. Re- trieved Feb University of Michigan and Wayne State • Data bank University • Data store [19] Interview with Wayne Ratliff.Definition of update by Merriam-Webster”. Rumelhart. secure. June 2013. 10 See also [12] IBM Corporation. p.github. [27] Graves. 2014. [29] “OWL DL Semantics”. . Institute of Labor and Industrial • Data hierarchy Relations (ILIR). ployment framework for database management and source control.L.(Chong et al. 750 people for DB2 release 9 alone. 13 • Increasingly. Business [1] “Database . MarkLogic”. • Question-focused dataset [22] “ACID Transactions. OED Online. ISBN 0- 89791-204-7 • Database-centric architecture [21] “Oracle Berkeley DB XML” (PDF). • Comparison of object-relational database manage. merriam-webster. merriam-webster. [28] Argumentation in Artificial Intelligence by Iyad Rahwan. backed up. and consistent between environments. • Database theory [20] Development of an object-oriented DBMS. Simari [4] “Retrieval .[36] Borrowing from other develop. [18] MICRO Information Management System (Version 5. [7] Beynon–Davies 2004. these database management solutions are [9] Bachman 1973. Packaged thusly. 1986. compli- ant. test. Embedded Computing Design magazine. [16] Childs 1968a. Re- trieved on 2013-07-12. Steve. Retrieved 10 March • Journal of Database Management 2015. ment systems [17] Childs 1968b. tems”. January 2013. ments in the software Ore- • Database testing gon. Retrieved 10 March 11 Notes 2015. some are labeling [8] Nelson & Nelson 2001.0) tems Reference Manual. [3] “Update . [11] “database.

2006. search in Conversational Use of Computers) Project. [33] “Structured Query Language (SQL)". doi:10. mann Publishers. Re. 16 (11): from the original on 24 October 2010. Archived Navigator”. ISBN 978-0131580183. 2013. doi:10. An Introduction to Database Sys. (1968). Jeffrey. "Encyclopedia of Database Systems. Özsu (Eds. Database Systems from the original on 15 July 2013. A First • Childs. Seth (12 July 2013). • Gray. 45–55. & STRUCTURES. About.1016/j. Thomas and Carolyn Begg. ISBN 978. Palgrave Macmillan. Jennifer (1997). [32] Chapple 2005. SYSTEMS [31] Date 2003. 38 (2): 123–157. • Ullman. (2003). Cortesi. New York: Harlow. ISSN 1477-8424. (1968).).1145/362384. ISBN 978- Databases. Xiaomei. Morgan Kauf- of Data for Large Shared Data Banks” (PDF). “Description of a set. J. Edgar F. set theoretic data structure and retrieval language. Carol (1972). Dr. Part 1”. • Proctor. 0138613370. Building Electronic Commerce: With Web Database Constructions. October 27. Spring Joint Computer Conference. Retrieved 28 January 2009. Transaction Processing: • Codd. ACM SIGIR Forum. University of Michigan. Ken (10 March 2010). David L.). (1973). Michael (2010). lus. [35] Halder & Cortesi 2012. ISBN theoretic data structure” (PDF). 21 December 1993. Technical Report 6. [36] “How Database Administration Fits into DevOps”. “Abstract Modeling (IDEFIX). C. Data Models • Bachman. 1403916013. Retrieved 2007-06- • Hershey. (1970). • Ling Liu and Tamer M. International Busi- ness Machines.10. Dang.362534. Course in Database Systems.362685. “The Programmer as and Data Independence”. on 22 February 2009. Raju. Datenbanksysteme.004. Easthope. COMPUTER LANGUAGES. Interpretation of Database Query Languages” (PDF). 3rd ed. David M. ISBN theoretic data structure : a general structure based 978-3836696098 on a reconstituted definition” (PDF). doi:10. J. ISBN 978-0201741308. 1st (1993) Integration Definition for Information • Halder. • Chapple. “Exploring the Archi- tecture of the NuoDB Database. “Sets. Communications of the ACM. Database Concepts. Archived from the original 0131964280. 13 (6): 377–387. Fred H. Widom. 13 Sources • North. (1982). University of Michi. Pearson. Charles W. Agostino. Diplomica Verlag. SQL/XML:2006 – Evaluierung der Standardkonformität ausgewählter • Childs. Database Sys- ples (2nd ed. pp.nist. Elsevier. May 1972.1145/1095495. and David J. Nelson. (2007).) (2009). “SQL Fundamentals”. 1992.2011. Dobb’s.). Morehead (2001). Michael. Prentice–Hall. Archived • Beynon–Davies. 14 Further reading gan... Paul (2003). Dionysios C. “A Relational Model Concepts and Techniques. • Kroenke. William Harris trieved 26 September 2016. ISBN 978-0-387-49616-0. David L. tems (8th ed. 60 il- Communications of the ACM. A. CONCOMP (Re. pp. 31–32. • Date. Mike (2005). Anne “Feasibility of a set. “Introduction to DB2”. Auer. Prentice–Hall. 653–658.14 14 FURTHER READING [30] itl.1095500. • Chong. Prentice Hall. and Reuter. A 10. 2002. ISBN 978-0321197849. Data Models. • Raghu Ramakrishnan and Johannes Gehrke.1145/355611. Database Management Systems . Raul F. [34] Wagner 2010. doi:10. • Nelson. Understanding DB2: Learning Visually with Exam- • Connolly. 4100 p. 2007. CONCOMP (Research in Conversational Use of Computers) Project. William. • Wagner. Lochovsky. Retrieved 12 July (3rd ed. Retrieved tems. Technical Report 3. (subscrip- tion required (help)). 7 (4). Dwaine R. New York: Prentice. • Tsitchizris. Wang. 17 March 2013.

ISBN 0-12-369389-6. S.. 4th edition. S. Morgan Kaufmann Press.. Nadeau. and more. T. ISBN 0-12- 685352-5 15 External links • Database at DMOZ • DB File extension – information about files with the DB extension . Lightstone.. S. 15 • Abraham Silberschatz. T. Morgan Kaufmann Press. 2005. T. Henry F. Database Modeling & Design: Logical Design. and Nadeau. storage. T. Teorey. • Teorey. views. Sudar- shan. (2007). Database System Concepts • Lightstone. Phys- ical Database Design: the database professional’s guide to exploiting indexes. Korth.

Ayecee. and licenses 16. Chirpy. D. SymlynX. FatalEr- ror.Debosschere. ThumbFinger. PJM. Ejrrjs. Blood Red Sandman. Wimt. The Thing That Should Not Be. CanisRufus. Jay. Inter. Ale jrb. CONTRIBUTORS. WikiuserNI.Tesson. Ubiquity. Calutuigor. Alasdair. Aepanico. Technopat. N25696. Helixblue. Jumbuck. Decrease789. Twebby. Graham87. Cpereyra. Noldoaran. Hunter. Arjun01. Greenrd. Deville. Dbates1999. Bblank. Kung- fuadam. Nafclark.C. Joshnpowell. Dkastner. Ottawahitech. MrNoblet. KNHaw. Shirulashem. Levin. Jclemens. TimBentley. CIreland. RadioFan2 (usurped). Iced Kola. Lamp90. . Soosed. Chrislk02. Ahoerstemeier. Imnotminkus. Mattisse. Hadal. Ahodgkinson. Ironman5247. LindaEllen. Riana. GLaDOS. Samir. VolkovBot. JustinHagstrom. Erikrj. Mathewforyou. Yintan.chandran007. Thehulkmonster. Antrax. DHN-bot~enwiki. Optakeover. Thehelpfulone. G12kid. NSR. Larsinio. Crucis. DerHexer. NewEnglandYankee. Dead3y3. Widefox. Radon210. Mumonkan. Aitias. GnuDoyng. Lunchscale. DamnRandall. SarekOfVulcan. Avoided. HexaChord. CardinalDan. Waggers. LeaveSleaves. GlenPeterson. Silly rabbit. Pillefj. Deli nk. Olinga. TheNewPhobia. Pol098. AndriuZ. Velella. Fang Aili. Recorder. Allan McInnes. Zwobot. Frap. GrinBot~enwiki. Visor. Rhobite. Chaojoker. Franl. VanishedUser sdu9aya9fs787sads. KoshVorlon. Odavy. Echartre. Clarince63. Jonathan Webley. Ni- hiltres. Theodolite. Stevertigo. Eagleal. Andonic. Stephen Gilbert. Slakr. Aditya gopal3. Dbfirs. Kukini. Macy. Qwertyus. Pcb21. Amd628. Zundark. Welsh. WOSlinker. Lexo.K. Lights. Buzzimu.wikipedia. Sam Bar- soom. Djsasso. Ultraexactzz. Afluegel. Tazmaniacs. TakuyaMurata. Moogwrench. Jab843. Dan100. Madhava 1947. Lguzenda. Lradrama. Arcann. Pharaoh of the Wizards. Ezeu. Marasmusine. Ryager. Ryanslater. Paulinho28. Lucyin. Moreschi. Paul Foxworthy. JarrahTree. Bogey97. Eeekster. Eric3K. EastTN. JLaTondre. Carbonite. Mike Dillon. Bcartolo. Inspector 34. Filx. SAE1962. Wmahan. Niceguyedc. Hydrogen Io- dide. HeliXx. Rohitj. Siteobserver. JonathanFreed. Mboverload. The wub. Imran. Deadbeef. Grstain. Oda Mari. Insineratehymn. AutumnSnow. Mandarax. IComputerSaysNo. HasharBot~enwiki. Mannafredo. Epbr123. Graeme Bartlett. E23~enwiki. Mugunth Kumar. Tim Q. Rettetast. Sir Nicholas de Mimsy-Porpington. Apparition11. Amaraiel. Kzzl. Beeble- brox. Rdsmith4. IronGar- goyle. Thingg. Logan. Kuru. LeeHam2007. Jackacon. Jwy. Blanchardb. Poeloq. Phantomsteve. Tslocum. Antandrus. Darth Mike. TXiKiBoT. Burner0718. Comps. Zzuuzz. Pee Tern. Namlemez. Ubiq. Kunaldeo. DeadEyeArrow. Constructive. Ahy1. Minna Sora no Shita. RexNL. Mu- galiens. Zippanova. Dylan620. JoanneB. DanielCD. FlyingToaster. DeirdreGerhardt. Calliopejen1. RIH-V. Rjwilmsi. Credema. Cyan. SashatoBot. Proofreader77. Thir- dright. Pascal. Huntthetroll. Versus22. Richi. Frankman. Brick Thrower. Lfstevens. Hugsandy. Mato. Polluks. Wiki alf. Jondel. Mdd. Rich Farmbrough. Wwmbes. Qwyrxian. Phear- lez. Edgarde. Spartaz. Ringbang. Avenged Eightfold. Ruud Koot. ArielGold. DeadlyAs- sassin. Mrozlog. Asyndeton. LaosLos. Zro. Michael Hardy. BwDraco. Bonadea. Gsallis. Koavf. BlindEagle. Fabartus. Puchiko. Joffeloff. ElKevbo. Synthebot. Megatronium. Intgr. Magioladitis. Gzkn. Oroso. Vivacewwxu~enwiki. Seaphoto. DumbBOT. Eric Bekins. Ryanslater2. Reinoutr. Microchip08. Flyer22 Reborn.Cardenas. Sand- man~enwiki. Madth3. Gobonobo. Bluemask. Jvhertum. Kenny sh. Thatperson. CynicalMe. VoxLuna. Veryprettyfish. Lowellian. Wells. PeeAeMKay. Kushal one. Gogo Dodo. R'n'B. Turlo Lomon. Sceptre. Sander123. Babbling. Bkhouser. Peashy. Everyking. Donama. RayMetz100. Mike Rosoft. Nk. Nurg. BrokenSphere. Cryptic. SmackBot. *drew. Methnor. Igoldste. Andy Dingley. Chlewbot. Tabletop. Bentogoa. Stifle. Escape Orbit. NAHID. Daniel. Raspalchima. Alain Amiouni. Trusilver. AnonUser. Ericlaw02. Harej. The Tran- shumanist. Tpbradbury. Sjc. Canterbury Tail. Addbot. WODUP. Flubeca. Rimonu. Indubitably. Mikeblas. Giftlite. Woohookitty. Yamaguchi . Tictacsir. Northernhenge. Kanonkas. Theory of deadman. SimonMorgan. Ja 62. Matticus78. LC~enwiki. Poor Yorick. Anonymous Dissident. Beetstra. Wiae. Explicit. Der- Borg. GraemeL. Sango123. EugeneZelenko. Nanshu. SuperHamster. Mspraveen. CmdrObot. Akamad. Guy Harris. GerryWolff. Atkinsdc. Vanished User Contributors: Paul Drye. Mentifisto. DePiep. SoxBot III. APH. ScMeGr. Vikreykja. Chriswiki. Pak21. Fooker69. ArnoLagrange. Aaron Bren- neman. Tawkerbot4. XLinkBot.. Cyberjoac. Gad- fium. TalkyLemon. SamJohnston. Spdegabrielle. Ryulong. Childzy. SJP. MECiAf. MikeSy. Milo99. Andyjsmith. Max Naylor. Etxrge. David Fuchs. SWAdair. Squids and Chips. Romanm. Why Not A Duck. Wikidrone. VoABot II.Brook. Rursus. Robert Merkel. Sewebster. MER-C. Storm Rider. Xx236. Mojo Hand. Mhkay. Colonies Chris. Prashanthns. SebastianHelm. Siebren. Unbuttered Parsnip. Uncle Dick. Closedmouth. Chris the speller. Mazca. Bobblewik. Windsok. JForget. Ben-Zin~enwiki. HybridBoy. Mush- room. King of Hearts. Isfisk. MalafayaBot. Dsimic. Pgk. SpK. GDonato. Nick. Tyler. Pdcook. Ginsen- gbomb. UberScienceNerd. Gregfitzy. Culverin. 10285658sd- saa. DVdm. Zhenqinli. Noctibus. Dreamyshade. AntiVandalBot. JeffTan. TrentonLipscomb. Jpbowen. Supten. Click23. Mike Schwartz. Doddsy1993. Jauerback. Jni. Bogdangiusca. Alansohn. Maxime. Denisarona. Kimera Kat. Krashlandon. Journalist. Arved. Finlay McWalter. Sam Korn. DumZiBoT. Cavanagh. AnjaliSinha. Autumn Wind. MassGalactusUniversum. Latka. Hasek is the best. Shipmaster. BryanG. Maxferrario. KyraVixen. Tualha. 25or6to4. Jmanigold. Edgar181. Arthur Rubin. Skybrian. Leaderofearth. Maury Markowitz. Haakon. Clean Copy. Sarchand~enwiki. Jackfork. Camw. Poterxu. Sjakkalle. Subash. Wavelength. Psb777. GregorB. MBisanz. John Vandenberg. The Anome. Think outside the box. Frsparrow. Stirling Newberry. Plrk. Galzigler. Jb-adder. Eric Burnett. Unyoyega. ClueBot. Jdrumgoole. Elwikipedista~enwiki. Le Pied-bot~enwiki. PhilKnight. Parzi. SamB. Adrian J. Thijs!bot. Cornellrockey. LessHeard vanU. Robocoder. Omi- cronpersei8. Excirial. MartinSpamer. M4gnum0n. Twsx. Simeon. Navabromberger. Treekids. Ricky81682. JeffreyYasskin. Rhododendrites. Chris 73. Dwolt. Alphax. Pnm. Philippe. Strongsauce. Werdna. Dreadstar. Kozmando. Toquinha. RadioKirk. Cybercobra. CableCat. Qxz. Commander Keane. Woseph. Sintaku. Caltas. Cpl Syx. Bbatsell. Turnstep. Djordjes. Dysepsion. Spazure. 28421u2232nfenfcenc. Wya 7890. Kiand. Ann Stouter. Stephenb. Nsaa. Keenan Pepper. Smalljim. Chuckhoffmann. Jonearles. Thumper- ward. Lingwitt. Robert Skyhawk. Kocio.1 Text • Database Source: https://en. Gilliam. Tablizer. Praba tuty. Th1rt3en. S. Cometstyles. Bluerocket. Benni39. Victor falk. Kslays. YurikBot. Garyzx. Pumpmeup. Phoenix-wiki. LittleOldMe. Osarius. PaePae. Chuunen Baka. Maurice Carbonaro. Paul August. Oli Filth. KeyStroke. Srikeit. Sleske. JamesBWatson. Kingius. Arthena. Tea2min. Cic. Hurricane111. JAnDbot. JCLately. Mcewan. Danieljamesscott. Dgw. Morwen. Jdlambert.. Jaxl. Vespristiano. DEddy. CesarB. Craig Stuntz. Cenarium. Lod. Mxn. PeregrineAY. Peter. Fubar Obfusco. Ssd. Ahunt. Bongwarrior. Discospinster. Robbot. User27091. clown will eat me. J. Wiki tiki tr. Bernd in Japan. Causa sui. Barneca. Kbthompson. SieBot. Andrewferrier. Dancter. AND LICENSES 16 Text and image sources. Troels Arvin. NathanBeach. Cantras. DJ Clayworth. HappyInGeneral. Rothwellisretarded. Sucker666. Niteowlneils. JaGa. Gnome de plume. Fratrep. Saiken79. Drumroll99. Can't sleep. Darth Panda. Doc glasgow. PrePress. Karmafist. Joel7687. Ohnoitsjamie. Mkeranat. Railgun. Danhash. Kings- leyIdehen. Tawkerbot2. Sonett72. Chasingsol. BobStepno. Wipe. Furrykef. Supertouch. HaeB. MarkSutton. Beland. Paul E Ester. ChorizoLasagna. DougBarry. Pjoef. DVD R W. Chrax. Gwizard. Khoikhoi. Vipinhari. COMPFUNK2. Davewild. Peruvianllama. Karlhahn. Noah Salzman. Trevor MacInnis. Stuhacking. Michael Slone. Cpuwhiz11. Waveguy. TittoAssini.iitk. MartinBot. Keilana. Triwbe. Tasc. Pingveno. Leandrod. Chris G. Boing! said Zebedee. Kkailas. Jerome Charles Potts. Feedmecereal. Ciciban. Linkspamremover. Andre Engels. Wulfila. OverlordQ. Bubba hotep. Caster23. C12H22O11. AzaToth. RayGates. EarthPerson. PatrikR. Kraftlos. Katalaveno. Iridescent. Netizen. Quadell. GHe. Argon233. Girl2k. FlaBot. NetManage. Stdazi. Luna Santin. Choco- lateboy. Edward. NawlinWiki. Jonwynne. Gozzy345. Pengo. W mccall. Vary. Brookie. Juliancolton. Hxhbot. Ixfd64. Baa. Alaibot. Mikey180791. Mind- matrix. Angela. Hankhuck. Chobot. Twelvethirteen. Jojalozzo. Fuzzie. Gscshoyru. Ohka-. Rakeki. Wik. Oshwah. Pax85. Qwertykris. Simetrical. Majorly.delanoy. SpellBott. Chrism. Jotterbot. Jan1nad. Robth. contributors. 16@r. Rsrikanth05. TwistOfCain. Levin Carsten. Lovelac7. Jasimab. Courcelles. Edivorce. Thedjatclubrock.16 16 TEXT AND IMAGE SOURCES. Tom. Pinkadelica. Kevins. Mulad. Seanust 1. McGeddon. ES- kog. Jesant13. JMRyan. SpuriousQ. DigitalEnthusiast. Zipircik. Johnuniq. Feydey. Philip Trueman. AnmaFinotera. Jstaniek.

CLCStudent. HRoestBot. Boybudz321. Godfarther48. Armen1304. Deathlasersonline. Pawan- gosavi37. Verajohne. OrgasGirl. Mrunalsnehalgaikwad.billiottet. Timoutiwin. ClueBot NG. RenamedUser01302013. David0811. Dancayta. Ray Lightyear. Craftyminion. Gail. Ceyjan. DARTH SIDIOUS Oddbodz. Skamecrazy123. Josve05a. Betterusername. Scotty- Berg. Compfreak7.RAMIREZ0216. Vrenator. Pinethicket. Cevalsi. R3miixasim.wikimedia. John Wiley & Sons. JewishMonser69. Samster0708. Sun- rocket89.jpg Source: https://upload. LuK3. Ocaasi. SaltySloth.svg Original artist: penubag. Original artist: Chris Down/Tango project • File:People_icon. MusikAnimal. BentlijDB. Rockonomics. Prunesqualer. Manul. Alzpp. Kivar2. Ravinjit. Entranced98. Jk2q3jrklse. Heymid. BlurTento. Pdebee. Favonian. Graphium. TyA. Asdafsd. Reddy. Rubinbot. PappaAvMin. Kellyk99.svg License: PD Contributors: ? Origi- nal artist: ? • File:Database_models. Torvolt. Mark Arsten. Winterst. Mark Renier. design_v2. Nz101. Prari. HJ Mitchell. Al Wiseman. SDSWIKI. Northamerica1000. Calabe1992. Mean as custard. Stikkyy. FoCuSandLeArN. BluCreator. Gajurahman. Nallimbot. JensLechtenboerger. Clark89.wikimedia. Shadowseas. RazorXX8. Soumark. Branzman. Widr. Tomatronster. Zhaofeng Li. MaurolepisDreki. Frietjes. Piano non troppo. Chiffre01. Melody Lavender. Bowlderizer. Codename Lisa. Yossman007. Mwaci11. Jasper Deng. Meaghan. Name Omitted. Lotje. KizzyCode. Exor674. Plavozont. Regancy42. JamesMoose. Kimsey0. Tudorol. Duyanfang. AmritasyaPutra. Mentibot. Flewis. WPGA2345. Cani talk. IrfanSha. Nehakokate29. Several Pending.svg License: Public domain Contribu- tors: This and myself. Frze. Evildeathmath. Gishac. Fylbecat- ulous. Gulumeemee. Mrt3366. 10me- treh. Lbausalop. AldrinRe- moto.svg License: CC0 Contributors: Open- Clipart Original artist: OpenClipart • File:Postgres_Query. Matěj Grabovský. Jack0898. Xfact. Oho1.jpg License: CC BY-SA 3. AwamerT. TheMesquito. Dewritech. Cambalachero. 7Sidz. Winner 42. Yobot. John of NicatronTg. TheGrimReaper NS.2 Images 17 Pyfan. Rj Haseeb. Tide rolls. Melonkelon. Bender the Contributors: Own work Original artist: Chiffre01 • File:Process_of_database_design_v2. Onel5969. Makecat.0 Contributors: Own work Original artist: Kitman20022002 .wikimedia. Bfugett. Malvikiran.png License: CC-BY-SA-3. Crystallizedcarbon. AtheWeatherman. Strike Eagle. Saturdayswiki. Nikitamore143. Bunnyhop11. Kingpin13. Christophe. Bcontins. Thinktdub. Capricorn42.robin. CanadianLinuxUser. DASHBotAV. Imfargo. Krushna124. Kotet- suKat. MJunkCat. GoingBatty. 1992 Original artist: Jean-Baptiste Waldner • File:Commons-logo. Anders Torlind. Captain-n00dle. Vinurarulz. ItsZippy. Marvellous Spider-Man.wikimedia. 05winsjp. Doulos Christos. Omni Flames. Silksnipe. Jarble. Shyam4636. Lsschwar. М И Ф.2 Images • Bluerasberry. Grsmca. Rocketrod1960. Kimberly ayoma.svg Source: https://upload. MainFrame. 28nebraska. Franky21. Lowercase sigmabot. Mukherjeeassociates. Reaper Eternal. DavidSea- mann. S. Sissi’s bd. Kitman20022002. Boli1107.png Source: https://upload. Captain-tucker. Vishnava. ChrisGualtieri. SpikeTorontoRCP. The Wiki Octopus. Timbits82.Ar.svg License: Cc-by- sa-3. SnoFox. Sonia. Gfsfg. Cheolsoo. L Kensington. Xin0427. IElonex!. Babitaarora. Epicgenius. Dan653. Pete1248. KILLERKEA23. FiriBot. Sock. Allecher. Piyush2503. Gon- fus.wikimedia. Jabby11. Cambapp. Heysim0n. Smedley Rhyse-Frockmorton. Shivraj Gore. Kvasilev. Era7bd. Aea68. Hshoemark. Ti- tle302. Javert. ZenerV. I dream of horses. D Eaketts. Ilan Y Mintz. Hume42. Itafran2010. UnforgivablyPotatoes. Weetoddid. Σ. Addihockey10. Moazzam chand. CarsracBot.grandauer. Grim23. EmausBot. Fieldday- sunday. Uoy ylgu dratsab. Non-dropframe. . Callanecc. Jesseminisis. K6ka. ‫کاشف عقیل‬. Gburd. Tuhl. Srdju001. Glane23. Thedinesh4u. RedBot.svg Source: https://upload. StaticVision. Chtuw. Abhikumar1995. Dougofborg. Frosty. Wireless100 and Anonymous: 2204 16. Monkbot. Anirudh Emani. SFK2. Stemoc. Danim. 28bot. BG19bot. Lovefamosos. Neemita jain. PRAGATI. Sudarevic. Leonnicholls07. Fluffernutter. Xqbot. Mechanical digger. GregW- Photo. Darthvader023. 2D. Hotstaff. Chenthil Vel. Psaajid. Lflores92201. Doorknob747. JephapE. Is8ac. Beta M. BadSprad. RockMagnetist. Call me Bubba. Ugebgroup8. Jschnur. Chester Davidcopperfield123. Salvio giuliano. Peter Flass. Phamnhatkhanh.jpg Source: https://upload. Sae1962. Ping08. MarcoAurelio. Jim1138. Yeshii 909. Bbb23. Komal. Rollins83. Amaury. Aishwarya Kolapkar. Eddiecarter1. Suelru. Minimac. AddWittyNameHere. Rafaelschp. Bjcubsfan. Blackguard SF.svg Source: https://upload. Mortense. Willking1979. Jandalhandler.wikimedia. Mediran.0 Contributors: “CIM: Principles of Computer Integrated Manufacturing”. Luizfsc. Satellizer. Pvjohnson. Citation bot. Wiki13. Colindolly. Machdohvah. Carliitaeliza. Altaïr. JunWan.vsp. Cerabot~enwiki. JackieBot.badnjki. KBH96. Freebiekr. Helloher. Jean-Baptiste Eyesnore. Some jerk on the Internet. 4twenty42o. FrescoBot. Rowan Adams. Purplecuteboss.wikimedia. 110808028 amol. Earlypsychosis. Dogposter. Rotanagol. Knbanker. Communal t. Som- chai1029. Dkwebsub. LittleWink. Fortdj33. Roux. Lingliu07. Luckas-bot. Matthewrbowker. MelbourneStar. Nikita depolkar. MastiBot. Foxfax555. Top The Ball. Llyntegid. ElijahLloyd97. Ulric1313. Backendgaming. Poojapratu. Lugia2453. Maty18. Serketan. CasualVisitor. Fgnievinski. Carbo1200. Vincent Liu. Sophus Bie. Hamtechperson. Pratyya Ghosh. Ngpd. Informatwr.16. GrouchoBot. Mary McAllen. Supreme Deliciousness. Mzakstrz. Rishu arora11. Tonydent. Materialscientist. Doniago. Theim- maculatechemist. Aj. Richarman. Alekhyal. Fæ. TobeBot. W163. Shivanirutu. Sythy2. Ginsuloft. Zhoravdb. Cammo33. Diamondland. FSahar. Khazar2. VNeumann. Donner60. Rugby471 • File:CodasylB. ZooPro. Menublogger. Glacialfox. Vibhijain. Kwiki.svg Source: https://upload. Riverraisin. Preet91119. Joshwa1234567890. Nomonomnom.0 Contributors: Own work Original artist: Marcel Douwe Dekker • File:Folder_Hexagonal_Icon. Afree10. 0xF8E8. FFGeyer. OnePt618. Phinicle. Rgeurts. Pebau. KasparBot. ChamithN. Pa- papasan. Dcirovic. P2Peter. Rajat Kant Singh. Xhelllox. Writeread82.0 Contributors: ? Original artist: ? • File:Office-book. Bwhynot14. Jrgreene2. Mercy11. SwisterTwister.wikimedia. Ben Ben. Jbrune.jpg License: CC BY-SA 4. Rob12467. FoxBot.png License: CC BY-SA 4. TwoTwoHello.svg License: Public do- main Contributors: self-made using Image:Emblem-contradict. EvergreenFir. Refactored. Cabral88. Shadowjams. FetchcommsAWB. IkamusumeFan. DiscantX. Wifione. Mike99999. Savh. Reidh21234. Btilm.png Source: https://upload. 069952497a. Reatlas. Suffusion of Yellow. Nicoosuna. Eurodyne. Miler- White. Peter Karlsen. Wikipelli. Millermk. RA0808. MrOllie. Prevalence. Uthinkurspecial. Sheeana. JJdaboss. Mayur. Hillysilly. Admfirepanther. Acetotyce. OllieFury. Thomasryno. Kekekecakes. Manikandan 2030. Crashdoom. Jack Greenmaven. JaconaFrere. Melucky2getu. M. Fraggle81.wikimedia.svg Source: https://upload. N1RK4UDSK714. ArwinJ. Bharath357. Alpha Quadrant (alt). Jawanhobe. Arbitrarily0. Maxmarengo. Eddiejcarter. Tolly4bolly. BU Rob13. AnomieBOT. DFS454. MisteArndon.

0 Contributors: Created from scratch in Adobe Content license • Creative Commons Attribution-Share Alike 3.0 Contributors: Own work Original artist: Snorky • File:Wiktionary-logo-v2.0 Contributors: Own work Original artist: Dan Polansky based on work currently attributed to Wikimedia Foundation but originally created by Smurrayinchester 16. Original artist: Vectorized by Simon 01:05.wikimedia.svg License: CC BY-SA Source: https://upload.svg Source: https://upload.5 Contributors: Mad by Lokal_Profil by combining: Original artist: Lokal_Profil • File:Traditional_View_of_Data_SVG.wikimedia.wikimedia.0 Contributors: Own work Original artist: IkamusumeFan • File:Symbol_book_class2.0 . CONTRIBUTORS.svg License: CC BY- SA 4. Based on Image:Question book.0 Contributors: Own work Original artist: License: CC BY-SA 2.svg License: CC BY-SA 3.svg Source: Source: Data_SVG.svg License: CC BY-SA 3.wikimedia.svg License: Public domain Contributors: Own work Original artist: Rei-artur • File:Wikisource-logo. User:Ramac et al. AND LICENSES • Originally uploaded by Simon. 2 August 2006 (UTC) Updated by Time3000 17 April 2007 to use official Wikinews colours and appear correctly on dark backgrounds.18 16 TEXT AND IMAGE SOURCES.svg Source: https://upload.wikimedia. • License: CC BY-SA 3.0 Contributors: Rei-artur Original artist: Nicholas Moreau • File:Wikiversity-logo-Snorky.png created by User:Equazcion Original artist: Tkgd2007 • File:Relational_key_SVG.svg License: CC BY-SA 3.0 Contributors: This is a cropped version of Image:Wikinews-logo-en.svg Source: https://upload.wikimedia.svg Source: https://upload.svg Source: https://upload.0 Contributors: Own work Original artist: IkamusumeFan • File:Wikibooks-logo.svg Source: License: Cc-by-sa-3.svg License: CC BY-SA • File:Wikinews-logo.svg Source: https://upload.