Definition
of Database (DB)
of Database (DB)
Data is organized into rows, columns and tables,
and it is indexed to make it easier to find relevant information. Data gets
updated, expanded and deleted as new information is added. Databases process
workloads to create and update themselves, querying the data they contain and
running applications against it. The process of doing this is refer to as
database management. Based on this, database can be defined as a collection
of information that
is organized so that it can be easily accessed, managed and updated.
and it is indexed to make it easier to find relevant information. Data gets
updated, expanded and deleted as new information is added. Databases process
workloads to create and update themselves, querying the data they contain and
running applications against it. The process of doing this is refer to as
database management. Based on this, database can be defined as a collection
of information that
is organized so that it can be easily accessed, managed and updated.
Access to this data is usually provided by a
“database management system” (DBMS) consisting of an integrated set
of computer software that allows users to interact with one or more databases and
provides access to all of the data contained in the database (although
restrictions may exist that limit access to particular data). Outside the world of professional information technology, the term database is
often used to refer to any collection of related data (such as a spreadsheet or a
card index). Since DBMSs comprise a significant market, computer and storage vendors often take into
account DBMS requirements in their own development plans. Databases and DBMSs can be categorized
according to the database model(s) that they support (such as relational or
XML), the type(s) of computer they run on (from a server cluster to a mobile
phone), the query language(s) used
to access the database (such as SQL or XQuery), and
their internal engineering, which affects performance, scalability,
resilience, and security.
“database management system” (DBMS) consisting of an integrated set
of computer software that allows users to interact with one or more databases and
provides access to all of the data contained in the database (although
restrictions may exist that limit access to particular data). Outside the world of professional information technology, the term database is
often used to refer to any collection of related data (such as a spreadsheet or a
card index). Since DBMSs comprise a significant market, computer and storage vendors often take into
account DBMS requirements in their own development plans. Databases and DBMSs can be categorized
according to the database model(s) that they support (such as relational or
XML), the type(s) of computer they run on (from a server cluster to a mobile
phone), the query language(s) used
to access the database (such as SQL or XQuery), and
their internal engineering, which affects performance, scalability,
resilience, and security.
Physically, database servers are dedicated computers that hold the actual
databases and run only the DBMS and related software. Hardware database
accelerators, connected to one or more servers via a high-speed channel, are
also used in large volume transaction processing environments. DBMSs are found
at the heart of most database applications. DBMSs may be built around a
custom multitasking kernel with built-in networking support,
but modern DBMSs typically rely on a standard operating system to
provide these functions. The DBMS provides various functions that allow entry,
storage and retrieval of large quantities of information and provides ways to
manage how that information is organized. Database refers to a set of related
data and the way it is organized. This article is concerned only with databases
where the size and usage requirements necessitate use of a database management
system. 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. Both a database and its DBMS conform to the
principles of a particular database model.
“Database system” refers collectively to the database model, database
management system, and database.
databases and run only the DBMS and related software. Hardware database
accelerators, connected to one or more servers via a high-speed channel, are
also used in large volume transaction processing environments. DBMSs are found
at the heart of most database applications. DBMSs may be built around a
custom multitasking kernel with built-in networking support,
but modern DBMSs typically rely on a standard operating system to
provide these functions. The DBMS provides various functions that allow entry,
storage and retrieval of large quantities of information and provides ways to
manage how that information is organized. Database refers to a set of related
data and the way it is organized. This article is concerned only with databases
where the size and usage requirements necessitate use of a database management
system. 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. Both a database and its DBMS conform to the
principles of a particular database model.
“Database system” refers collectively to the database model, database
management system, and database.
DBMSs provide various functions that allow
management of a database and its data which can be classified into four main
functional groups:
management of a database and its data which can be classified into four main
functional groups:
- Providing information in a form directly
usable or for further processing by other applications. The retrieved data
may be made available in a form basically the same as it is stored in the
database or in a new form obtained by altering or combining existing data
from the database called retrieval
- Registering and monitoring users, enforcing
data security, monitoring performance, maintaining data integrity, dealing
with concurrency control, and recovering information that has been
corrupted by some event such as an unexpected system failure called administration - Creation,
modification and removal of definitions that define the organization of
the data which is known as data
definition - Insertion, modification, and deletion of the
actual data known as update.
Application of database
·
Databases are used to support internal operations
of organizations and to underpin online interactions with customers and
suppliers.
Databases are used to support internal operations
of organizations and to underpin online interactions with customers and
suppliers.
·
Databases are used to hold administrative
information and more specialized data, such as engineering data or economic
models. Examples of database applications include computerized library
systems, flight
reservation systems, computerized parts
inventory systems, and many content
management systems that store websites
as collections of webpages in a database.
Databases are used to hold administrative
information and more specialized data, such as engineering data or economic
models. Examples of database applications include computerized library
systems, flight
reservation systems, computerized parts
inventory systems, and many content
management systems that store websites
as collections of webpages in a database.
Example
of database management system
of database management system
This
section lists a few of the adjectives used to characterize different kinds of
databases.
section lists a few of the adjectives used to characterize different kinds of
databases.
- Data warehouses archive data from operational databases and
often from external sources such as market research firms. The warehouse
becomes the central source of data for use by managers and other end-users
who may not have access to operational data. - A deductive
database
combines logic
programming
with a relational database, for example by using the Datalog language. - A distributed
database is
one in which both the data and the DBMS span multiple computers. - A document-oriented database is designed for
storing, retrieving, and managing document-oriented, or semi structured
data, information. Document-oriented databases are one of the main
categories of NoSQL databases. - An embedded
database
system is a DBMS which is tightly integrated with an application software
that requires access to stored data in such a way that the DBMS is hidden
from the application’s end-users and requires little or no ongoing
maintenance. - End-user databases consist of data developed by individual
end-users. Examples of these are collections of documents, spreadsheets,
presentations, multimedia, and other files. Several products exist to
support such databases. Some of them are much simpler than full-fledged
DBMSs, with more elementary DBMS functionality. - A federated
database system
comprises several distinct databases, each with its own DBMS. It is
handled as a single database by a federated database management system
(FDBMS), which transparently integrates multiple autonomous DBMSs,
possibly of different types (in which case it would also be a heterogeneous database system), and provides them with an integrated
conceptual view. - Sometimes the term multi-database is
used as a synonym to federated database, though it may refer to a less
integrated (e.g., without an FDBMS and a managed integrated schema) group
of databases that cooperate in a single application. - A graph database is a kind of NoSQL database that uses graph
structures
with nodes, edges, and properties to represent and store information.
General graph databases that can store any graph are distinct from
specialized graph databases such as triplestores and network
databases. - An array DBMS is a kind of NoSQL DBMS that allows to model,
store, and retrieve (usually large) multi-dimensional arrays such as satellite images and climate
simulation output. - In a hypertext or hypermedia database, any word or a piece of text
representing an object, e.g., another piece of text, an article, a
picture, or a film, can be hyperlinked to that object. Hypertext databases are
particularly useful for organizing large amounts of disparate information.
For example, they are useful for organizing online
encyclopedias,
where users can conveniently jump around the text. The World Wide Web is thus a large distributed hypertext
database. - A knowledge base (abbreviated KB, kb) is a
special kind of database for knowledge
management,
providing the means for the computerized collection, organization, and retrieval of knowledge. Also a collection of data representing
problems with their solutions and related experiences.
- A mobile
database can
be carried on or synchronized from a mobile computing device. - Operational
databases
store detailed data about the operations of an organization. They
typically process relatively high volumes of updates using transactions. - A parallel
database
seeks to improve performance through parallelization for tasks such as loading data, building
indexes and evaluating queries. - An in-memory
database is
a database that primarily resides in main memory, but is typically backed-up by non-volatile
computer data storage. Main memory databases are faster than disk
databases, and so are often used where response time is critical, such as
in telecommunications network equipment. - An active
database
includes an event-driven architecture which can respond to conditions both
inside and outside the database. Possible uses include security
monitoring, alerting, statistics gathering and authorization. Many
databases provide active database features in the form of database
triggers. - A cloud database relies on cloud
technology.
Both the database and most of its DBMS reside remotely, “in the
cloud”, while its applications are both developed by programmers and
later maintained and utilized by (application’s) end-users through a web browser and Open APIs.
The major parallel DBMS architectures which are
induced by the underlying hardware architecture are:
induced by the underlying hardware architecture are:
·
Shared
memory architecture, where multiple processors share the main memory space, as well as
other data storage.
Shared
memory architecture, where multiple processors share the main memory space, as well as
other data storage.
·
Shared
disk architecture, where
each processing unit (typically consisting of multiple processors) has its own
main memory, but all units share the other storage.
Shared
disk architecture, where
each processing unit (typically consisting of multiple processors) has its own
main memory, but all units share the other storage.
·
Shared
nothing architecture, where each processing unit has its own main memory and other storage.
Shared
nothing architecture, where each processing unit has its own main memory and other storage.
- Probabilistic
databases
employ fuzzy logic to draw inferences from imprecise data. - Real-time
databases
process transactions fast enough for the result to come back and be acted
on right away.
Database management terms
Terms used in database are special-purpose
languages, which do one or more of the following:
languages, which do one or more of the following:
- SQL
combines the roles of data definition, data manipulation, and query in a
single language. It was one of the first commercial languages for the
relational model, although it departs in some respects from the relational model as described by Codd
(for example, the rows and columns of a table can be ordered). SQL became
a standard of the American National Standards Institute
(ANSI) in 1986, and of the International
Organization for Standardization
(ISO) in 1987. The standards have been regularly enhanced since and is
supported (with varying degrees of conformance) by all mainstream
commercial relational DBMSs.
·
Data definition language – defines data types such as
creating, altering, or dropping and the relationships among them
Data definition language – defines data types such as
creating, altering, or dropping and the relationships among them
·
Data manipulation language – performs tasks such as
inserting, updating, or deleting data occurrences
Data manipulation language – performs tasks such as
inserting, updating, or deleting data occurrences
Database languages are specific to a particular
data model. Notable examples include:
data model. Notable examples include:
- OQL is
an object model language standard (from the Object Data Management Group).
It has influenced the design of some of the newer query languages like JDOQL and
EJB QL. - XQuery is
a standard XML query language implemented by XML database systems such as MarkLogic and
eXist, by
relational databases with XML capability such as Oracle and DB2, and also
by in-memory XML processors such as Saxon. - SQL/XML
combines XQuery
with SQL.
Cloud database
A cloud database is a database that has been
optimized or built for a virtualized environment, either in a hybrid cloud,
public cloud or private cloud. Cloud databases provide benefits such as the
ability to pay for storage capacity and bandwidth on a per-use basis, and they
provide scalability on demand, along with high availability.
optimized or built for a virtualized environment, either in a hybrid cloud,
public cloud or private cloud. Cloud databases provide benefits such as the
ability to pay for storage capacity and bandwidth on a per-use basis, and they
provide scalability on demand, along with high availability.
A cloud database also gives enterprises the
opportunity to support business applications in a software-as-a-service
deployment.
opportunity to support business applications in a software-as-a-service
deployment.
NoSQL database
They are most effective when an organization must
analyze large chunks of unstructured data or
data that’s stored across multiple virtual servers in the
cloud. NoSQL databases are effective for big data performance issues that
relational databases aren’t built to solve.
analyze large chunks of unstructured data or
data that’s stored across multiple virtual servers in the
cloud. NoSQL databases are effective for big data performance issues that
relational databases aren’t built to solve.
Object-oriented database
An object-oriented database is organized
around objects rather than actions, and data rather than logic. For example, a
multimedia record in a relational database can be a definable data object, as
opposed to an alphanumeric value.
around objects rather than actions, and data rather than logic. For example, a
multimedia record in a relational database can be a definable data object, as
opposed to an alphanumeric value.
Items created using object-oriented
programming languages are often stored in relational
databases, but object-oriented databases are well-suited for those items.
programming languages are often stored in relational
databases, but object-oriented databases are well-suited for those items.
Accessing the database: DBMS and
RDBMS
RDBMS
Microsoft SQL Server, Oracle Database, IBM DB2 and
MySQL are the top RDBMS products available for enterprise users. DBMS
technologies began in the 1960s to support hierarchical databases, and they
include IBM’s Information
Management System and CA’s Integrated Database Management System.
MySQL are the top RDBMS products available for enterprise users. DBMS
technologies began in the 1960s to support hierarchical databases, and they
include IBM’s Information
Management System and CA’s Integrated Database Management System.
A database management
system (DBMS) is a type of software that allows you to
define, manipulate, retrieve and manage data stored within a database.
system (DBMS) is a type of software that allows you to
define, manipulate, retrieve and manage data stored within a database.
A relational database
management system (RDBMS) is a type of database management software
that was developed in the 1970s, based on the relational model, and is still
the most popular way to manage a database.
management system (RDBMS) is a type of database management software
that was developed in the 1970s, based on the relational model, and is still
the most popular way to manage a database.
Relational database
The Structured Query
Language (SQL) is the standard user and application program
interface for a relational database. Relational databases are easy to extend,
and a new data category can be added after the original database creation
without requiring that you modify all the existing applications.
Language (SQL) is the standard user and application program
interface for a relational database. Relational databases are easy to extend,
and a new data category can be added after the original database creation
without requiring that you modify all the existing applications.
A relational database, is a
tabular database in which data is defined so that it can be reorganized and
accessed in a number of different ways.
tabular database in which data is defined so that it can be reorganized and
accessed in a number of different ways.
Relational databases are made up of a set of tables
with data that fits into a predefined category. Each table has at least one
data category in a column, and each row has a certain data instance for the
categories which are defined in the columns.
with data that fits into a predefined category. Each table has at least one
data category in a column, and each row has a certain data instance for the
categories which are defined in the columns.
Distributed database
Distributed databases can be homogeneous or
heterogeneous. All the physical locations in a homogeneous distributed database
system have the same underlying hardware and run the same
operating systems and database applications. The hardware, operating systems or
database applications in a heterogeneous distributed database may be different
at each of the locations.
heterogeneous. All the physical locations in a homogeneous distributed database
system have the same underlying hardware and run the same
operating systems and database applications. The hardware, operating systems or
database applications in a heterogeneous distributed database may be different
at each of the locations.
A distributed database is a database in which
portions of the database are stored in multiple physical locations, and in
which processing is dispersed or replicated among different points in a network
portions of the database are stored in multiple physical locations, and in
which processing is dispersed or replicated among different points in a network
Evolution of databases
In one view, databases can be classified according
to content type: bibliographic, full text, numeric and images. In computing,
databases are sometimes classified according to their organizational approach.
There are many different kinds of databases, ranging from the most prevalent
approach, the relational database, to a distributed database, cloud database or NoSQL
database.
to content type: bibliographic, full text, numeric and images. In computing,
databases are sometimes classified according to their organizational approach.
There are many different kinds of databases, ranging from the most prevalent
approach, the relational database, to a distributed database, cloud database or NoSQL
database.
Databases have evolved since their inception in the
1960s, beginning with hierarchical and network databases, through the 1980s
with object-oriented
databases, and today with SQL and NoSQL databases and cloud databases.
1960s, beginning with hierarchical and network databases, through the 1980s
with object-oriented
databases, and today with SQL and NoSQL databases and cloud databases.
Graph database
Graph databases are growing in popularity for
analyzing interconnections. For example, companies might use a graph database
to mine data about
customers from social media.
analyzing interconnections. For example, companies might use a graph database
to mine data about
customers from social media.
A graph-oriented database, or graph database, is a
type of NoSQL database that uses graph theory to
store, map and query relationships. Graph databases are basically collections
of nodes and edges, where each node represents an entity, and each edge
represents a connection between nodes.
type of NoSQL database that uses graph theory to
store, map and query relationships. Graph databases are basically collections
of nodes and edges, where each node represents an entity, and each edge
represents a connection between nodes.