Databases

Databases

Database Definition

A database is an instance where we store files/records/data. The purpose of a database is to help people keep track of things. The most commonly used type of database is relational database. A relational database stores data in tables. A table has rows and columns, like those in a spreadsheet. A database usually has multiple tables, and each table contains data about a different type of thing.

Screenshot 2022-11-25 at 23.30.20.png

For example, the image shows a database with two tables: the STUDENT table holds data about students, and the CLASS table holds data about classes. Each row of a table has data about a particular occurrence or instance of the thing of interest. For example, each row of the STUDENT table has data about one of four students: Cooke, Lau, Harris, and Greene. Similarly, each row of the CLASS table has data about a particular class. Because each row records the data for a specific instance, rows are also known as records. Each column of a table store a characteristic common to all rows. For example, the first column of STUDENT stores StudentNumber, the second column stores LastName, and so forth. Columns are also known as fields.

Database Management Systems

A database management system, or simply DBMS, is an important programming tool consisting of a set of programs that define, manage, and process databases and all associated applications. Through this, you are able to build a structure and operate on the valuable data that the database holds in a very efficient way. There are two main types of users that work on DBM:

  • the conventional user who retrieves or modifies data

  • the administrator who is responsible for maintaining the structure of the database

Features of DBMS

  • Allows the creation of new databases and their structure

  • Allows data query and modification using an appropriate programming language

  • Allows the storage of vast amounts of data over a long period of time

  • Enables database recovery in times of failure, error or intentional misuse

  • Controls data access from many users at once.

Types of Databases

  • Centralised Database

  • Cloud Database

  • Commercial Database

  • Distributed Database

  • End-user Database

  • Graph Database

  • NoSQL Database

  • Object-oriented Database

  • Open source Database

  • Operational Database

  • Personal Database

  • Relational Database

Centralised Database

A Centralised database (sometimes abbreviated CDB) is a database that is located, stored, and maintained in a single location. This location is most often a central computer or database system, for example, a desktop or server CPU, or a mainframe computer. In most cases, a centralized database would be used by an organisation (e.g. a business company) or an institution (e.g. a university.) Users access a centralized database through a computer network which is able to give them access to the central CPU, which in turn maintains the database itself.

Cloud Database

A cloud database defines a database management service, or a system built on and accessed through a cloud computing platform. It is like the traditional database management service but uses the cloud as a differentiator. Being based on cloud computing, cloud databases offer more flexibility, scalability, and security as compared to traditional databases. With more and more companies moving their databases to the cloud, the market is full of various cloud Database Management System (DBMS) providers.

Commercial Database

A commercial database is any that is designed by a commercial business. Businesses develop feature-rich databases, which they then sell to their customers. Commercial databases can vary in terms of composition or the technology they use. The defining trait of commercial databases is having users pay to use them, unlike open-source databases.

Distributed Database

A distributed database is one that is spread out over multiple devices. Rather than having all information stored on a single device, like other databases on this list, distributed databases will operate across multiple machines, such as different computers within the same location or across a network. The benefits of a distributed database include increased speed, better reliability and ease of expansion.

End-user Database

End-user is a term used in product development that refers to the person who uses the product. An end-user database is, therefore, a database that is primarily used by a single person. A good example of this type of database is a spreadsheet stored on your local computer.

Graph Database

Graph databases are databases that focus equally on the data and the connections between them. In this database, data is not constricted to predefined models. Most other databases can find connections between data when you run a search. With a graph database, these connections are stored inside the database right alongside the original data. This makes for a more efficient and faster database when your primary goal is to manage the connections between your data

NoSQL Database

A NoSQL database has a hierarchy similar to a file folder system and the data within it is unstructured, or non-relational. This lack of structure allows them to process larger amounts of data at speed and makes it easier to expand in the future. Cloud computing regularly makes use of NoSQL databases.

Object-oriented database

Object-oriented databases are ones in which data is represented as objects and classes. An object is an item, such as a name or phone number, while a class is a group of objects. Object-oriented databases are a type of relational database. Consider using an object-oriented database when you have a large amount of complex data that you want to process quickly.

Open-source database

An open-source database is designed for the public to use for free. Unlike commercial databases, users can download or sign up for open-source databases without paying a fee. The term "open source" refers to a program in which users can see how it was written and constructed and are free to make their own changes to the program. Open-source databases are typically much cheaper than commercial databases, but they can also lack some of the more advanced features found in commercial databases.

Operational database

The purpose of an operational database is to allow users to modify data in real-time. Operational databases are critical in business analytics and data warehousing. They can be set up either as relational databases or NoSQL, depending on needs. Conventional databases rely on batch processing, where commands are carried out in groups. Operational databases, on the other hand, allow you to add, edit and remove data at any moment.

Personal database

A personal database is one that is designed for a single person. It is typically stored on a personal computer and has a very simple design, consisting of only a few tables. Personal databases are not typically suitable for complex operations, large amounts of data or business operations.

Relational databases

Relational databases are the other major type of database, opposite of NoSQL. With a relational database, information is stored structured about other data. A good representation of a relational database would be the connection between a person shopping online and their shopping cart. Relational databases are often preferred when you are concerned about the integrity of your data, or when you're not particularly focused on scalability.

Cloud Database Management System Providers

  • Alibaba Cloud

  • Amazon Web Services (AWS)

  • Cloudera

  • Cockroach Labs

  • Couchbase

  • Databricks

  • Exasol

  • Google

  • Huawei Cloud

  • IBM

  • InterSystems

  • MariaDB

  • MarkLogic

  • Microsoft

  • Oracle

  • Redis

  • SAP

  • SingleStore

  • Snowflake