Posted By: Margaret Rouse
Contributors: Kevin Ferguson, Allan Leake and Adam Hughes
A database is a collection of information organized so it can be easily accessed, managed and updated. Computer databases typically contain aggregations of records or data files containing information about specific sales transactions or customer interactions.
In a relational database, digital information about a specific customer is organized into indexed rows, columns, and tables to make it easy to find relevant information through SQL or NoSQL queries. In contrast, a chart database uses nodes and edges to define relationships between inputs and data queries and requires a special semantic search syntax. As of this writing, SPARQL is the only semantic query language approved by the World Wide Web Consortium (W3C).
Typically, the database manager gives users the ability to control read / write access, specify reporting, and analyze usage. Some databases offer ACID (atomicity, consistency, isolation, and durability) compliance to ensure data is consistent and transactions are completed.
Databases have evolved from their inception in the 1960s, starting with hierarchical and network databases, to the 1980s with object-oriented databases and today with SQL and NoSQL databases and cloud 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 types of databases, from the most prevalent approach, the relational database, to a distributed database, cloud database, graphical database, or NoSQL database.
A relational database, invented by E.F. Codd at IBM in 1970, is a tabular database in which data is defined so that it can be rearranged and accessed in many different ways.
Relational databases are made up of a set of tables with data that falls into a predefined category. Each table has at least one data category in a column, and each row has a particular data instance for the categories defined in the columns.
Structured query language (SQL) is the default user and application interface for a relational database. Relational databases are easy to extend and a new data category can be added after the original database has been created without modifying all existing applications.
A distributed database is a database in which parts of the database are stored in multiple physical locations and in which processing is dispersed or replicated between different points in a network.
Distributed databases can be homogeneous or heterogeneous. All 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 differ at each location.
A cloud database is a database that has been optimized or created for a virtualized environment, in a hybrid cloud, public cloud, or private cloud. Cloud databases offer benefits such as the ability to pay for storage capacity and bandwidth per use and provide on-demand scalability as well as high availability.
A cloud database also gives companies the opportunity to support business applications in a software as a service deployment.
NoSQL databases are useful for large distributed data sets.
NoSQL databases are effective for big data performance issues that relational databases are not designed to solve. They are most effective when an organization must analyze large blocks of unstructured data stored on multiple virtual servers in the cloud.
Object Oriented Database
Items created using object-oriented programming languages are often stored in relational databases, but object-oriented databases are suitable for these items.
An object-oriented database is organized around objects rather than actions and data rather than logic. For example, a multimedia record.