Types Of Databases

#relational databases     #database management     #oriented databases     #database supports     #oltp databases #sequence databases     #distributed database     #computer database     #traditional databases     #relational dbms     #operational databases     #data types     #data storage     #nosql databases

 

A database management system is a set of programs used for managing data, while simultaneously helping various types of users to create, manage, update, extract, and store information. Databases are broadly divided into two main types or categories, relational or sequential databases, and non-relational or non-sequence databases, or NoSQL databases. 

Figure 1 Databases https://www.digitalocean.com/community/tutorials/understanding-relational-databases


There are a number of different approaches for data storage and modelling, which results in the various types of databases. A non-relational database, or NoSQL, is a type of database that models and stores data in different ways than relational databases. NoSQL was initially designed to deal with heterogeneous data, which is hard to fit into a normalization schema. This kind of SQL databases are generally used in online transaction processing and data warehousing. A distributed database supports storage for all data types. 

Figure 2 Types of Databases https://www.javatpoint.com/types-of-databases


1.    Centralized Database

 

#centralized databases     #centralizing data     #database management     #centralised database     #single database     #distributed database     #data management     #data storage     #individual databases     #store data     #data retrieval     #database system     #data integrity     #streamline security     #centralized location   

 

A centralized database is a collection of information at one place that is available to many points, as opposed to a distributed database, in which the information is distributed among several sites. Centralizing data into one place allows your quality teams to quickly access information, streamline security processes, and reduce risk of handling confidential data incorrectly. Centralized databases can decrease the effectiveness of the system if there are multiple users trying to access data at once, since data is present in one place. Data integrity is maximized since the individual databases are stored in one physical location. 

Figure 3 Centralized database https://www.geeksforgeeks.org/difference-between-centralized-database-and-distributed-database/

In centralized database management systems, data is stored in a single location, and its access speed and processing rate are slower compared to other management systems. Centralized database system is cheaper to install and maintain compared to other database management systems, requires a single storage system, and data can be accessed from all the computers that are connected. The single location, and maintenance of the centralized database allows organizations to more easily access and manage their data. A centralised database is not efficient because data retrieval becomes rather complicated due to data storage and information being located at a specific location. In addition to cost and complexity in maintaining a distributed database, it is also harder to get a unique, comprehensive view of data since it is distributed across several physical locations.

The centralized location is usually the CPU of a server or a desktop computer, or the mainframe computers, that are accessible to users via computer networks such as LANs or WANs. This location is more commonly the central computer or database system, such as the desktop or server CPU, or mainframe. A separate location can be a server inside of your data centre, a separate PC, or even a mobile device. Distributed databases depend on one central database management system that handles all of its various storage devices remotely, since they do not need to reside in the same physical and/or geographic location.


2. Distributed Database

 

#database replication     #distributed databases     #database management     #database systems     #database applications     #single database     #database stores     #database comprise     #homogeneous databases     #transactional database     #data centralization     #database file     #centralized database     #relational database     #data storage   

 

Distributed Database is one single logical database distributed among several physical databases, servers, data centres, or even individual networks. With distributed databases, data is physically stored in several locations, and managed independently. Ensuring data transparency and coordination between the different sites usually requires the use of costly software within the distributed database system. A distributed database management system stores data on many computers or nodes to achieve resiliency. Different computers and operating systems, database applications, or data models can be used in each of these locations.

Figure 4 Distributed database https://www.javatpoint.com/types-of-databases

The various locations within the heterogeneous distributed database comprise of different operating systems, databases products, and data models. Instead of confining data storage and transaction processing to one machine, distributed databases leverage several machines across multiple locations. Because a distributed database stores data across several computers, a distributed database can increase the productivity at the end-users workplace, by allowing transactions to run across multiple machines rather than being limited to a single one.

Distributed databases overcome performance limitations of single-node systems by providing data centralization through the integration of several distributed data elements on the site. In homogeneous databases, the databases are stored exactly the same across sites. Unlike concurrent systems, where the CPUs are tightly coupled together to form one database system, a distributed database system is composed of loosely coupled sites which do not share any physical components. A distributed SQL database may sometimes is called a distributed transactional database. In a distributed database, work requires only adding new computers and local data at the new sites, and eventually connecting them into the distributed system, without any disruption of the ongoing operation.

If a system needs to expand into new locations or new units, then, in centralized database systems, this activity requires significant effort and interruptions in existing functions. For example, when a user attempts to extract data from a distributed database through certain queries, the result is a unified dataset related to the queries, which presents a single representation of the data stored, despite being a composed system in architecture.

 

3.    NoSQL Database

 

#nosql databases     #database technologies     #relational databases     #database systems     #database schema     #database tables     #relational sql     #document databases     #relational models     #data integrity     #nosql document     #xml documents     #flexible data     #nosql stores     #web applications   

 

NoSQL, an abbreviation for not just SQL, is a term used for database systems that store information in multiple formats in order to support requirements which are difficult for conventional relational databases (or SQL). NoSQL databases, also known as non-relational databases, are databases that allow unstructured data, in contrast to traditional relational SQL databases, which require data to be structured in tables.

Figure 5 No SQL https://www.geeksforgeeks.org/graph-based-data-model-in-nosql/

Sometimes, data structures used by NoSQL databases are also considered more flexible than relational database tables. In fact, many people believe that modelling relationship data is easier in a NoSQL database compared with SQL databases, as related data does not need to be divided among tables. For SQL databases, SQL is usually the sole, or the dominant, interface with data.  NoSQL databases act as the main store of content, meaning that data is entered into one application, but it may be accessed through several different methods, depending on use cases. NoSQL and SQL databases take different approaches to protecting data integrity when created, read, updated, and deleted by applications and users.

By using NoSQL databases, developers can store, manipulate, and retrieve their data with ease. NoSQL databases feature flexible data storage schemas, which make it easy to manage and scale complex data sets. This makes NoSQL databases popular in use cases including software-as-a-service applications and other web applications, gaming applications, and mobile applications that need large amounts of data. Other common features of NoSQL databases include no database schema, data clustering, support for replication, and eventual consistency. NoSQL database systems embrace a broad set of database technologies, which can store structured, semi-structured, unstructured, and polymorphic data.

These systems may also be used to store XML documents, for instance. A NoSQL database provides the mechanism to store and retrieve data which is modelled using means other than tabular relations used by relational databases. Barriers to wider adoption of NoSQL stores include use of lower-level query languages.

 

4.    Cloud Database

 

#database environments     #cloud databases     #database offerings     #database vendor     #database providers     #database technology     #cloud sql     #database access     #cloud provider     #netapp cloud     #database services     #relational databases     #cloud platform     #analytics capabilities     #enterprise database   

 

A cloud database is a database typically running on a cloud computing platform, with database access provided as-a-service. Oracle Database provides enterprises with an enterprise-scale database technology stored in the cloud.

Figure 6 Cloud Database https://avmconsulting.net/oracle-cloud-infrastructure-oci-benchmarking-oracles-dbaas-against-rds-a-performance-comparison-part-ii/

While SQL databases on cloud are serviceable for many uses, todays flexible cloud-native NoSQL databases greatly enhance the flexibility in data management and software development. NoSQL databases are built to handle high read/write loads, and they scale easily, and are thus better suited for running on cloud.

SQL databases are a type of database that can be run in the cloud, either on a VM or as a service, depending on the provider. Users can independently run cloud databases on the cloud using one of two deployment models: Virtual Machine images, or purchasing access to database services maintained by cloud database providers. The following table lists noteworthy database providers that offer cloud database offerings, classified by their deployment model - machine image versus database-as-a-service - and by their data model, SQL versus NoSQL.

Database as a Service environments (DBaaS) are completely managed by a vendor, which can be a cloud platform provider, or another database vendor running their cloud DbMS on a platform providers infrastructure. Self-managed databases are an infrastructure-as-a-service (IaaS) environment, where a database runs on a virtual machine in a system managed by the cloud provider. IBM Cloud Hyper Protect DBaaS: This service provides high availability cloud enterprise database environments for data-sensitive workloads.

IBMs service juggernaut, IBM DB2 on Cloud, is accessible via IBMs hybrid data management platform, via which it offers complementary database services like DB2 Warehouse, DB2 Big SQL, and DB2 Event Store. IBM DB2 on Cloud is a fully managed SQL database that features 99.99 percent uptime SLA, independently scaled storage and compute via the user interface and API, multiple disaster recovery options, data encryption, and more features. Google Cloud SQL provides a fully managed service, aimed at relational databases like MySQL, PostgreSQL, and SQL Server, and is designed to deliver high performance, availability, scale, and affordability, as well as using Googles private global network for increased security. This database service is composed of two primary products: Cloud SQL, which describes the relational database, and the BigQuery analytics tool, which can perform queries over large sets of data stored in the cloud.

Instead of depending on the database service, it is possible to create the database on your own choice in a cloud using native IaaS computing and storage resources available. Cloud-based databases running on NetApp Cloud Volumes Ontap enjoy managed storage capabilities like high availability, efficiencies that reduce the costs of data warehousing in the cloud, improved data protection, higher performance, and more. Garantia Data has been offering gateway services to customers that choose to run Memcached databases, along with the open-source Redis, in the Amazon Public Cloud.

 

5. Relational Database

 

#relational databases     #database types     #database management     #database systems     #relational schema     #structured query     #relational table     #relational model     #sql language     #query language     #data banks     #multiple tables     #data fits     #data values     #data sets   

 

A relational database management system is one of the four general types of systems that can be used to manage data for a company. A relational database uses schemas, which are templates used to determine the structure of data to store in a database. The organized set of data in the relational table is known as a databases logical representation. Relational database systems employ a model which organizes data into tables with rows (records or tuples) and columns (attributes or fields). As relational databases use tables of rows and columns, they present data in a simpler way than some other database types, making them easier to work with. We have seen some features of relational databases, such as representing data in tables of rows and columns, and using keys to make each data item unique from others.

Figure 7 Relational database https://www.pragimtech.com/blog/mongodb-tutorial/relational-and-non-relational-databases/

From the start, developers recognized that a key benefit of a relational model was in the use of tables, which are a user-friendly, effective, and flexible way of storing and accessing structured information. Because data in a relational database is stored in tables, relationships among those data values are also stored. By keeping this information in a different table, the typical relational database is able to build up a small single table of locations, which other tables within the database can then use for various purposes. By using keys (primary and foreign), every bit of data stored on the relational database can be accessed whenever needed, without confusing one piece of data for another.

Relational databases are also good at showing highly complex relationships among data, which allows data to be referred across multiple tables, provided that data fits into your databases default relational schema. When administrators are working with a lot of both structured and unstructured data that is received live, a relational database management system (DBS) helps them to analyse and aggregate data in order to look for the predefined relationships.


6.    Network Database

 

#database engine     #database setup     #database models     #database schema     #database management     #database instance     #network database     #powerful database     #relational access     #hierarchical database     #data access     #network model     #data model     #network setup     #amazon quicksight   

 

A network database is a type of database model in which several members records or files may be linked with several owners’ files, or vice versa. The network model is a database model that is intended as a flexible way of representing objects and their relationships. The network model is commonly used for building computer networking systems, and is an extension to the hierarchical database model. While the hierarchical database model structures data in the form of a record tree, A network database is based on a network data model, allowing each record to relate to several parent records and several secondary records.

Figure 8 Relational database https://www.geeksforgeeks.org/difference-between-network-and-relational-data-model/

A network database can be thought of as a top-down tree, with every member information being the branch connected to its owner, who is at the bottom of the tree. Data access is faster and easier than it is in a hierarchical database. To act as a data source, databases must be configured to allow Amazon QuickSight access to them.

 

7.    Object Oriented Database

 

#object databases     #oriented database     #database standpoint     #relational databases     #database management     #object schemas     #object notation     #data types     #query language     #database complexity     #use sql     #object model     #document databases     #data object     #programming techniques   

 

Object-Oriented Database Management System (ODBM), is a data model where the data is stored as objects, which are instances of classes. Object-oriented database management systems, also called ODBMSs (object database management systems), combine the features of databases with those of the object-oriented programming languages.

 

Figure 9 Object Oriented database https://prepinsta.com/dbms/object-oriented-database-model/

Some common applications using object databases are real-time systems, architecture and engineering for 3D modelling, telecoms, and scientific products, molecular sciences, and astronomy. That is why object databases are frequently used for processing complex data in science, engineering, telecommunications, and real-time systems. Relational databases typically use SQL to communicate with data, as in MySQL. In contrast, the fundamental building blocks of relational databases, like PostgreSQL or MySQL, are tables, with actions based on the logical connections between table data.

Some popular databases, including Microsoft SQL Server, Oracle, and IBM DB2, also support objects and may be considered as ORDBMSs. For the object-oriented database standpoint, the Data Definition Language from the Object Data Management Group provides portable, language-independent specification for object schemas, along with a query language similar to SQL for objects.

8. Hierarchical Database

 

#hierarchical databases     #hierarchical models     #hierarchical relationships     #hierarchy database     #hierarchical structures     #data tree     #hierarchy relationships     #data integration     #child nodes     #data models     #database models     #database implementation     #data element     #data access     #data tables   

 

Hierarchical data is defined as a collection of data items which are related to one another through a hierarchy relation. In the Hierarchical Model, data is considered to be a set of tables, or as we might call the segments, which form the hierarchy relationships. A hierarchical database is a data model where data is stored as records and organized into a tree-like or parent-child structure, where one parent node may have many child nodes connected by links. In the hierarchical model, the data is organized in a tree-like structure, with each record containing one parent record and many children. The hierarchical model requires that data is stored repeatedly across many different entities because of its tree-like structure.

Figure 10 Hierarchical Database https://dataintegrationinfo.com/hierarchical-vs-relational-database/

Hierarchical structures do not describe multiple-to-one relationships or multiple-to-many relationships, because child records may only have one parent. Hierarchical relationships exist in which one data element is a parent to another data element. Hierarchical database models are effective with one-to-many relationships, and are commonly used for recording data on a filesystem.

A relational database implementation of the hierarchical model was first discussed in published form in 1992. In the hierarchy database model, employee data tables represent the parent portion of the hierarchy, and computer tables represent the child portion of the hierarchy. In contrast to the tree structures typically found in computer software algorithms, a hierarchy database model has children that refer to parents. In this article, we discussed in details about hierarchical database model that portrays the parent-child relationships that makes easy representation of data and understands the concepts easily.

 

REFERENCES:

By: Kaustubh Chavan (53)


टिप्पण्या

टिप्पणी पोस्ट करा

या ब्लॉगवरील लोकप्रिय पोस्ट

Securing the Digital Realm: IoT Protection Essentials

Operating System Forensics