What is database?
A database is a repository, which effectively stores information, and this stored information can be retrieved by utilizing some particular programming language.
A database is essentially an archive of information, which is formulated so as to help effective information storing. The database is a methodical gathering of information.
Since open library stores books, we could likewise say that a library is a database of books. In any case, entirely characterized, databases are PC structures that spare, compose, secure, and convey information.
Furthermore, a database is constructed and kept up by utilizing a database programming language. The most widely recognized database language is SQL; however, there are different “flavors” of Structured Query Language (SQL).
Each kind of SQL has contrasts in the SQL language structure and are intended to be utilized with a particular sort of database. For instance, an Oracle database deploys the PL/SQL and Oracle SQL, whereas, Microsoft database put to use Transact-Structured Query Language (T-SQL).
- Every mobile service provider uses a database to store the particulars of their customers.
- An online telephone catalog of any particular city/country would utilize a database to store information regarding people, their addresses, telephone numbers, and other details.
A database is comprised of the following primary parts.
A database contains at least one composition, which is essentially a gathering of at least one table of information.
Each table contains various columns just like in a spreadsheet. A table can have as meager as two columns and upwards of one hundred or more columns, depending upon the kind of information being put in the table.
Each column contains one of a few sorts of information, such as name, address, phone number, etc.
Data in a table is recorded in rows. There are hundreds or thousands of rows in a table having any particular information.
Types of Database
There are several types of databases, some of which are listed here.
- Distributed Database
- Centralized Database
- Personal Database
- Relational Database
- Operational Database
- Hierarchical Database
- Cloud Database
- Object Oriented Database
- NoSQL Database
1. Distributed Database
It is a database that comprises of at least two documents situated in various destinations either on a similar system or on unique systems. Parts of the database are put away in various physical places and handling is disseminated among different database hubs.
Distributed databases are physically stored across multiple locations and logically interconnected with each other and they are usually signifying a solitary logical database.
Distributed databases can be homogenous or heterogeneous. Generally, distributed databases may include the following features:
- Hardware independent
- Location independent
- Operating system independent
- Network independent
- Transaction transparency
- Distributed query processing
- Distributed transaction management
Examples of distributed database:
- Apache Cassandra
- Apache HBase
- Apache Ignite
- Couchbase Server
- Amazon SimpleDB
It is a type of distributed database, which is used to create examples of data in various parts of the database. It can be divided into these two categories.
- Read only data
- Writable data
Advantages of Distributed Database:
- Administrators can face lower communication costs for distributed database frameworks if the information is found near where it is utilized the most, whereas, it is not possible in centralized database.
- It is easy to update and growth.
- Increases consistency and ease of use
- Ensures better performance
- Loss of database from one place may not cause loss of all data.
- Effective for load balancing and reduces latency.
- Distributed database has the capability of fault tolerance
Disadvantages of Distributed Database:
- Enforcement of integrity may require more network resources.
- More complexity as its architecture requires better design, administration and troubleshooting.
- Sometimes, problems faced during accessing from the master database.
- Security is another concern in distributed database
- Lack of standard and experience
2. Centralized Database
A centralized database framework is a framework that keeps the information in one single database at one place.
Advantages of Centralized Database:
- Centralized database storage improves data safeguarding.
- Centralized database provides physical security as locally stored data signifies an ongoing physical security hazard.
- Maintenance of centralized storage is less costly than multiple storage spaces.
- Easy to share ideas across the market analysts.
- It reduces conflicts due to centralization
- Centralized database reduces conflicts amongst organizations and they can focus on their vision and promptly act.
- In centralized database, the data redundancy is negligible.
Disadvantages of Centralized Database:
- Centralized database can be unresponsive to work under a heavy workload.
- Administrators can face high communication costs if the information is not found where it is utilized the most.
- In centralized database, information is stored within a single database so the chance of data loss may increase.
- No proper database recovery measures
3. Personal Database
Information is gathered and stored on PCs, which is in small quantity and can easily manageable.
This information is commonly utilized by the same department of an association and can easily be accessed by a small number of people.
Generally, a personal database system can support one application at a time, involve a single computer, a database having few tables.
Advantages of Personal Database:
- Improve data sharing and security
- Better data integration and fast data access
- Fast end-users productivity and improved decision making
Disadvantages of Personal Database:
- Increased cost due to the requirement of licensing and proper training of database users, and administers to utilize and manage the new traits.
- Personal database can be unresponsive to work under a heavy workload.
4. Relational Database:
A relational database is described by a set of tables from where data can be accessed.
Relational database can store a large amount of information in a set of tables, which are linked to each other.
Each table is composed of information in rows & columns in which each column represents a particular type of information like name, address, each row contains unique information and each field in a table has its own data type.
Advantages of Relational Database:
- Relational database is used to store the financial record of any company
- It keeps records of customers’ consignments and their orders.
- Relational database ensures data integrity and better performance.
- It provides better data security and allows multiple users.
- A vast amount of data can be stored in relational database, which can easily extendable and modifiable.
- Several clients can access the same database.
Disadvantages of Relational Database:
- High setup and maintenance cost
- Sophisticated networking and hardware setups are required for relational databases.
- Few relational databases have bound on field lengths.
5. Operational Database:
An operational database is used to store and manage a huge amount of data in real-time. Data regarding operations (marketing, services provided to customers & relations with them) of any project can be stored inside an operational database.
A national climate administration consistently gathers information from computerized climate stations that produce convenient climate gauges and as an authentic record for scientists.
Similarly, a company permits its sales reps in the field to update sales information in order to boost revenue. Microsoft, Oracle, Amazon Web Services, SAP and IBM are the important players in Operational Database Management System (ODBMS)
Advantages of Operational Database:
- It ensures real-time operations as data can be added and modified in real-time.
- Operational database provides up-to-date information.
- It supplies data for real-time computation and analyzing processes.
- It is helpful to run the day to day operation of the business.
Disadvantages of Operational Database:
- Real-time analysis requires special training sessions for database users which impose more cost on companies.
- Queries against operational data are usually narrow in scope i.e. speed critical.
6. Hierarchical Database:
In hierarchical database model, data is organized in a tree structure that links a number of different elements to one parent record.
Each record type has only one parent. Top element of tree is called parent while its branches are called children. It is useful for certain types of data storage and most popular in the time of mainframe computers.
An entity type is corresponding to a table and entity types are related to each other with one-to-many association.
Advantages of Hierarchical Database:
- Hierarchical databases are easy to comprehend
- In hierarchical structure clear chain of command
- In hierarchical database, navigating among the records is fast enough as the parent and child relationships are implemented with pointers from one data record to another record.
Disadvantages of Hierarchical Database:
- Hierarchical structures have no tendency to adopt new changes rapidly.
- Communication barriers
- Cannot change the database to ensemble current business’ requirements
7. Cloud Database:
Cloud database is a kind of database administration that is deployed and delivered through a cloud platform like Platform-as-a-Service (PaaS) that permits the organizations and their applications to store and mange information from the cloud.
In present era, it got popularity due to several benefits like acquiring more storage capacity, high bandwidth, scalability and availability as per the payment ability of the user.
A cloud database regularly functions as a standard database arrangement that usually executed through the installation of database programming over a registering/framework cloud.
In addition, a cloud database is likewise conveyed as an administration, where the merchant specifically deals with the backend procedures of database installation and deployment.
Advantages of Cloud Database:
- Cloud database provides great flexibility to run database workload either traditionally or as a service.
- Helpful for disaster recovery
- Companies can reduce the annual operating costs by utilizing cloud storage
- Easy to access data via internet
Disadvantages of Cloud Database:
- Data protection is a great challenge in cloud database.
- Difficult to access in case of absence of internet connection
- More conscious during drag & drop action to move a document into the cloud storage folder
8. Object Oriented Database
It is a group of object-oriented programming and relational database, which is organized around object rather than actions and logic.
Some examples of object-oriented database engines are Smalltalk, db4o and Cache. Information is described in the form of objects in object-oriented database. Alike objects are categorized to classes and sub-classes and relationship between two objects is maintained by utilizing the notion of opposite reference.
Advantages of Object Oriented Database:
- Permits the integration of databases, operating system, word processors spreadsheets, and other applications
- Ensures the referential sharing of products and applications
- Easily creates a new object from an existing object
- Object Oriented Database Management System permits to create persistent object to solve the issue of concurrency and recovery.
Disadvantages of Object Oriented Database:
- Storage of huge ADTs and structured objects
- Query processing and optimization is a complex task
- It is much more complex that Relational Database, so professional programmers required instead of inexperienced end users.
- User cannot permit access rights on individual objects and classes
- Absence of standard query language to Object Oriented Database as Structured Query Language to Relational Database Management System
9. NoSQL Database:
NoSQL database is used to efficiently manage and analyze a large set of distributed data that might be stored at several virtual servers. Types of NoSQL database are:
- Document Stores
- Key-value data Stores
- Wide Column Stores
- Graph Stores
Many NoSQL data stores are available now, some of which are, MongoDB, CouchDB, GemFire, Casandra, Hbase, Mnesia, Memcached, and Neo4j
Advantages of NoSQL Database:
- Easy to use and flexible due to Object-oriented programming
- It has geographically distributed scale-out architecture as a substitute of monolithic architecture
- Frequent code pushes and quick schema iteration
- It offers better performance and high global availability
- It also offers flexible data modeling
- Massive volumes are easily handled by NoSQL databases
Disadvantages of NoSQL Database:
- Advance expertise is required for its installation and maintenance.
- Most common business intelligence gadgets do not provide connectivity to NoSQL Databases.