rajpurkar/squad huggingface dataset:
Title: Database

The relational model, first proposed in 1970 by Edgar F. Codd, departed from this tradition by insisting that applications should search for data by content, rather than by following links. The relational model employs sets of ledger-style tables, each used for a different type of entity. Only in the mid-1980s did computing hardware become powerful enough to allow the wide deployment of relational systems (DBMSs plus applications). By the early 1990s, however, relational systems dominated in all large-scale data processing applications, and as of 2015[update] they remain dominant : IBM DB2, Oracle, MySQL and Microsoft SQL Server are the top DBMS. The dominant database language, standardised SQL for the relational model, has influenced database languages for other data models.[citation needed]

Question: Who created the relational model of DBMS?
Answer: Edgar F. Codd

Question: Instead of using links, how was information found in a relational model?
Answer: by content

Question: In what decade did computer hardware become able to handle a relational system?
Answer: 1980s

Question: What type of system in still prominent to this day?
Answer: relational systems

Question: What database language is the most prominent?
Answer: SQL
Title: Database

As computers grew in speed and capability, a number of general-purpose database systems emerged; by the mid-1960s a number of such systems had come into commercial use. Interest in a standard began to grow, and Charles Bachman, author of one such product, the Integrated Data Store (IDS), founded the "Database Task Group" within CODASYL, the group responsible for the creation and standardization of COBOL. In 1971 the Database Task Group delivered their standard, which generally became known as the "CODASYL approach", and soon a number of commercial products based on this approach entered the market.

Question: Why was COBOL created?
Answer: Interest in a standard

Question: When were DBMSs first used commercially?
Answer: mid-1960s

Question: When was the standard protocol completed?
Answer: 1971

Question: What group discovered COBOL?
Answer: Database Task Group

Question: What was the standard protocol called?
Answer: CODASYL approach
Title: Database

IBM also had their own DBMS in 1966, known as Information Management System (IMS). IMS was a development of software written for the Apollo program on the System/360. IMS was generally similar in concept to CODASYL, but used a strict hierarchy for its model of data navigation instead of CODASYL's network model. Both concepts later became known as navigational databases due to the way data was accessed, and Bachman's 1973 Turing Award presentation was The Programmer as Navigator. IMS is classified[by whom?] as a hierarchical database. IDMS and Cincom Systems' TOTAL database are classified as network databases. IMS remains in use as of 2014[update].

Question: What was the DBMS created by IBM called?
Answer: Information Management System (IMS)

Question: What was the purpose of the IBM DBMS?
Answer: the Apollo program

Question: What is the classification of IMS?
Answer: hierarchical database

Question: What was the name of Bachman's Turing Award presentation in 1973?
Answer: The Programmer as Navigator
Title: Database

In this paper, he described a new system for storing and working with large databases. Instead of records being stored in some sort of linked list of free-form records as in CODASYL, Codd's idea was to use a "table" of fixed-length records, with each table used for a different type of entity. A linked-list system would be very inefficient when storing "sparse" databases where some of the data for any one record could be left empty. The relational model solved this by splitting the data into a series of normalized tables (or relations), with optional elements being moved out of the main table to where they would take up room only if needed. Data may be freely inserted, deleted and edited in these tables, with the DBMS doing whatever maintenance needed to present a table view to the application/user.

Question: Who proposed using a table to store data?
Answer: Codd

Question: How is data accessed in a table?
Answer: A linked-list system

Question: What model solved the problem of databases where information was missing?
Answer: relational

Question: What system assists a user in seeing a table?
Answer: DBMS
Title: Database

The relational model also allowed the content of the database to evolve without constant rewriting of links and pointers. The relational part comes from entities referencing other entities in what is known as one-to-many relationship, like a traditional hierarchical model, and many-to-many relationship, like a navigational (network) model. Thus, a relational model can express both hierarchical and navigational models, as well as its native tabular model, allowing for pure or combined modeling in terms of these three models, as the application requires.

Question: How was the relational model able to improve over time?
Answer: without constant rewriting of links and pointers

Question: What is the relationship called in a hierarchical model?
Answer: one-to-many

Question: What is the relationship called in a navigational model?
Answer: many-to-many

Question: What is a third type of model that can be combined with heirarchical and navigation models?
Answer: tabular
Title: Database

For instance, a common use of a database system is to track information about users, their name, login information, various addresses and phone numbers. In the navigational approach all of this data would be placed in a single record, and unused items would simply not be placed in the database. In the relational approach, the data would be normalized into a user table, an address table and a phone number table (for instance). Records would be created in these optional tables only if the address or phone numbers were actually provided.

Question: How is information stored in a navigational system?
Answer: in a single record

Question: How is a database system frequently used?
Answer: to track information about users

Question: How is information stored in a relational system?
Answer: normalized into a user table

Question: What happens to blank data fields in a navigational system?
Answer: not be placed in the database
Title: Database

Linking the information back together is the key to this system. In the relational model, some bit of information was used as a "key", uniquely defining a particular record. When information was being collected about a user, information stored in the optional tables would be found by searching for this key. For instance, if the login name of a user is unique, addresses and phone numbers for that user would be recorded with the login name as its key. This simple "re-linking" of related data back into a single collection is something that traditional computer languages are not designed for.

Question: What is a key used for?
Answer: uniquely defining a particular record

Question: What technique is used to collect into one place?
Answer: re-linking

Question: How is information accessed in a relational model?
Answer: a "key"

Question: How is data in an optional table accessed?
Answer: by searching for this key
Title: Database

Just as the navigational approach would require programs to loop in order to collect records, the relational approach would require loops to collect information about any one record. Codd's solution to the necessary looping was a set-oriented language, a suggestion that would later spawn the ubiquitous SQL. Using a branch of mathematics known as tuple calculus, he demonstrated that such a system could support all the operations of normal databases (inserting, updating etc.) as well as providing a simple system for finding and returning sets of data in a single operation.

Question: How does a program collect information using a navigational system?
Answer: require programs to loop

Question: What is used to solve the problem of looping?
Answer: a set-oriented language

Question: What computer language came about as a result of the looping problem?
Answer: SQL

Question: What type of math was used to create a system to find data sets?
Answer: tuple calculus

Question: Who used tuple calculus to show the functionality of databases?
Answer: Codd
Title: Database

Codd's paper was picked up by two people at Berkeley, Eugene Wong and Michael Stonebraker. They started a project known as INGRES using funding that had already been allocated for a geographical database project and student programmers to produce code. Beginning in 1973, INGRES delivered its first test products which were generally ready for widespread use in 1979. INGRES was similar to System R in a number of ways, including the use of a "language" for data access, known as QUEL. Over time, INGRES moved to the emerging SQL standard.

Question: Who used Codd's paper at Berkeley to improve a geographical database?
Answer: Eugene Wong and Michael Stonebraker

Question: What was the name of the project to create a geographical database?
Answer: INGRES

Question: When was INGRES first tested?
Answer: 1973

Question: What computer language was used in INGRES to access data?
Answer: QUEL

Question: Is QUEL still used to access data in INGRES?
Answer: INGRES moved to the emerging SQL standard
Title: Database

Another approach to hardware support for database management was ICL's CAFS accelerator, a hardware disk controller with programmable search capabilities. In the long term, these efforts were generally unsuccessful because specialized database machines could not keep pace with the rapid development and progress of general-purpose computers. Thus most database systems nowadays are software systems running on general-purpose hardware, using general-purpose computer data storage. However this idea is still pursued for certain applications by some companies like Netezza and Oracle (Exadata).

Question: What is a CAFS accelerator?
Answer: a hardware disk controller with programmable search capabilities

Question: Did the CAFS accelerator work as planned?
Answer: efforts were generally unsuccessful

Question: How are today's database systems run?
Answer: general-purpose hardware

Question: Name a company that is still working on the CAFS accellerator?
Answer: Netezza and Oracle (Exadata)
Title: Database

IBM started working on a prototype system loosely based on Codd's concepts as System R in the early 1970s. The first version was ready in 1974/5, and work then started on multi-table systems in which the data could be split so that all of the data for a record (some of which is optional) did not have to be stored in a single large "chunk". Subsequent multi-user versions were tested by customers in 1978 and 1979, by which time a standardized query language – SQL[citation needed] – had been added. Codd's ideas were establishing themselves as both workable and superior to CODASYL, pushing IBM to develop a true production version of System R, known as SQL/DS, and, later, Database 2 (DB2).

Question: What is the system IBM created using Codd's research?
Answer: System R

Question: When was IBM's system released?
Answer: 1974/5

Question: What did System R work on to change the way data was stored?
Answer: multi-table systems

Question: When customers first tested IBM's system, what computer language had been added? 
Answer: SQL

Question: What was the name of the database product created by IBM?
Answer: SQL/DS, and, later, Database 2 (DB2)
Title: Database

The 1980s ushered in the age of desktop computing. The new computers empowered their users with spreadsheets like Lotus 1-2-3 and database software like dBASE. The dBASE product was lightweight and easy for any computer user to understand out of the box. C. Wayne Ratliff the creator of dBASE stated: "dBASE was different from programs like BASIC, C, FORTRAN, and COBOL in that a lot of the dirty work had already been done. The data manipulation is done by dBASE instead of by the user, so the user can concentrate on what he is doing, rather than having to mess with the dirty details of opening, reading, and closing files, and managing space allocation." dBASE was one of the top selling software titles in the 1980s and early 1990s.

Question: Who created dBASE?
Answer: C. Wayne Ratliff

Question: Why was dBASE unique?
Answer: data manipulation is done by dBASE

Question: Why was dBASE successful?
Answer: lightweight and easy for any computer user to understand out of the box

Question: What is a benefit of using dBASE?
Answer: managing space allocation
Title: Database

The 1990s, along with a rise in object-oriented programming, saw a growth in how data in various databases were handled. Programmers and designers began to treat the data in their databases as objects. That is to say that if a person's data were in a database, that person's attributes, such as their address, phone number, and age, were now considered to belong to that person instead of being extraneous data. This allows for relations between data to be relations to objects and their attributes and not to individual fields. The term "object-relational impedance mismatch" described the inconvenience of translating between programmed objects and database tables. Object databases and object-relational databases attempt to solve this problem by providing an object-oriented language (sometimes as extensions to SQL) that programmers can use as alternative to purely relational SQL. On the programming side, libraries known as object-relational mappings (ORMs) attempt to solve the same problem.

Question: In the 1990s, what type of programming changed the handling of databases?
Answer: object-oriented

Question: What term is used for the difficulty in database table and programmed object translation?
Answer: object-relational impedance mismatch

Question: How is the problem of object-relational impedance mismatch corrected?
Answer: object-oriented language

Question: What is the library programmers use to solve object-relational impedance mismatch?
Answer: object-relational mappings (ORMs)
Title: Database


XML databases are a type of structured document-oriented database that allows querying based on XML document attributes. XML databases are mostly used in enterprise database management, where XML is being used as the machine-to-machine data interoperability standard. XML database management systems include commercial software MarkLogic and Oracle Berkeley DB XML, and a free use software Clusterpoint Distributed XML/JSON Database. All are enterprise software database platforms and support industry standard ACID-compliant transaction processing with strong database consistency characteristics and high level of database security.

Question: What kind of database is XML?
Answer: structured document-oriented database

Question: Where are XML databases frequently used?
Answer: enterprise database management

Question: What type of processing is used in enterprise database software?
Answer: ACID-compliant transaction processing

Question: How is XML used in enterprise database management?
Answer: machine-to-machine data
Title: Database

In recent years there was a high demand for massively distributed databases with high partition tolerance but according to the CAP theorem it is impossible for a distributed system to simultaneously provide consistency, availability and partition tolerance guarantees. A distributed system can satisfy any two of these guarantees at the same time, but not all three. For that reason many NoSQL databases are using what is called eventual consistency to provide both availability and partition tolerance guarantees with a reduced level of data consistency.

Question: What is used to offer a balance in guarantees?
Answer: eventual consistency

Question: What explains the difficulty in a system containing availability, consistency, and partition tolerance guarantees?
Answer: the CAP theorem

Question: How many guarantees will most databases tolerate?
Answer: two
Title: Database

The first task of a database designer is to produce a conceptual data model that reflects the structure of the information to be held in the database. A common approach to this is to develop an entity-relationship model, often with the aid of drawing tools. Another popular approach is the Unified Modeling Language. A successful data model will accurately reflect the possible state of the external world being modeled: for example, if people can have more than one phone number, it will allow this information to be captured. Designing a good conceptual data model requires a good understanding of the application domain; it typically involves asking deep questions about the things of interest to an organisation, like "can a customer also be a supplier?", or "if a product is sold with two different forms of packaging, are those the same product or different products?", or "if a plane flies from New York to Dubai via Frankfurt, is that one flight or two (or maybe even three)?". The answers to these questions establish definitions of the terminology used for entities (customers, products, flights, flight segments) and their relationships and attributes.

Question: What should a conceptual data model do?
Answer: reflects the structure of the information to be held

Question: What makes a successful data model?
Answer: accurately reflect the possible state of the external world being modeled

Question: Asking questions about an organization's needs will help to create what?
Answer: definitions of the terminology used for entities

Question: What must one understand in order to create a successful data model?
Answer: the application domain
Title: Database

Having produced a conceptual data model that users are happy with, the next stage is to translate this into a schema that implements the relevant data structures within the database. This process is often called logical database design, and the output is a logical data model expressed in the form of a schema. Whereas the conceptual data model is (in theory at least) independent of the choice of database technology, the logical data model will be expressed in terms of a particular database model supported by the chosen DBMS. (The terms data model and database model are often used interchangeably, but in this article we use data model for the design of a specific database, and database model for the modelling notation used to express that design.)

Question: A conceptual data model in separate from the choice of what?
Answer: database technology

Question: In what form is the output of a logical database design?
Answer: schema

Question: Which data model is displayed as a specific model that uses DBMS?
Answer: logical
Title: Database

The final stage of database design is to make the decisions that affect performance, scalability, recovery, security, and the like. This is often called physical database design. A key goal during this stage is data independence, meaning that the decisions made for performance optimization purposes should be invisible to end-users and applications. Physical design is driven mainly by performance requirements, and requires a good knowledge of the expected workload and access patterns, and a deep understanding of the features offered by the chosen DBMS.

Question: What decisions must be made in the last stage of database design?
Answer: performance, scalability, recovery, security

Question: What is an important goal in in this final stage?
Answer: data independence

Question: What factor is reflected in performance requirements?
Answer: Physical design
Title: Database

While there is typically only one conceptual (or logical) and physical (or internal) view of the data, there can be any number of different external views. This allows users to see database information in a more business-related way rather than from a technical, processing viewpoint. For example, a financial department of a company needs the payment details of all employees as part of the company's expenses, but does not need details about employees that are the interest of the human resources department. Thus different departments need different views of the company's database.

Question: How many conceptual or physical views of data are there?
Answer: one

Question: How many different external views of data are there?
Answer: any number

Question: What is the benefit of external views of data?
Answer: see database information in a more business-related way
Title: Database

The conceptual view provides a level of indirection between internal and external. On one hand it provides a common view of the database, independent of different external view structures, and on the other hand it abstracts away details of how the data are stored or managed (internal level). In principle every level, and even every external view, can be presented by a different data model. In practice usually a given DBMS uses the same data model for both the external and the conceptual levels (e.g., relational model). The internal level, which is hidden inside the DBMS and depends on its implementation, requires a different level of detail and uses its own types of data structure types.

Question: What does the conceptual view offer?
Answer: a level of indirection between internal and external

Question: How does the conceptual view handle how data is managed?
Answer: abstracts away details

Question: What type of view does the conceptual view offer?
Answer: common
Title: Database

Database storage is the container of the physical materialization of a database. It comprises the internal (physical) level in the database architecture. It also contains all the information needed (e.g., metadata, "data about the data", and internal data structures) to reconstruct the conceptual level and external level from the internal level when needed. Putting data into permanent storage is generally the responsibility of the database engine a.k.a. "storage engine". Though typically accessed by a DBMS through the underlying operating system (and often utilizing the operating systems' file systems as intermediates for storage layout), storage properties and configuration setting are extremely important for the efficient operation of the DBMS, and thus are closely maintained by database administrators. A DBMS, while in operation, always has its database residing in several types of storage (e.g., memory and external storage). The database data and the additional needed information, possibly in very large amounts, are coded into bits. Data typically reside in the storage in structures that look completely different from the way the data look in the conceptual and external levels, but in ways that attempt to optimize (the best possible) these levels' reconstruction when needed by users and programs, as well as for computing additional types of needed information from the data (e.g., when querying the database).

Question: What is responsible for putting information into permanent storage?
Answer: database engine

Question: What do database administrators closely monitor?
Answer: storage properties and configuration setting

Question: What is database storage?
Answer: physical materialization of a database

Question: While working, does DBMS store information in one place?
Answer: several types of storage

Question: What are huge quantities of information stored as?
Answer: bits
Title: Database

Database access control deals with controlling who (a person or a certain computer program) is allowed to access what information in the database. The information may comprise specific database objects (e.g., record types, specific records, data structures), certain computations over certain objects (e.g., query types, or specific queries), or utilizing specific access paths to the former (e.g., using specific indexes or other data structures to access information). Database access controls are set by special authorized (by the database owner) personnel that uses dedicated protected security DBMS interfaces.

Question: What does database access limit?
Answer: who (a person or a certain computer program) is allowed to access what information

Question: What are examples of database objects?
Answer: record types, specific records, data structures

Question: Who sets database access?
Answer: special authorized (by the database owner) personnel