Database Management System (DBMS) SS3 Data Processing Lesson Note

Download Lesson Note
Lesson Notes

Topic: Database Management System (DBMS)

Databases are structured collections of data that are organised and stored for efficient retrieval and manipulation. They play a critical role in various applications, from managing business information to supporting websites and applications. 

Here are some fundamental concepts related to databases: 

Types of Databases: 

  1. Relational Databases: These databases use tables (relations) to store data, and relationships between data are defined through keys. Common relational database management systems (DBMS) include:  MySQL  PostgreSQL  Oracle Database  Microsoft SQL Server  SQLite 
  2. NoSQL Databases: NoSQL databases are designed to handle unstructured or semi-structured data and provide more flexibility than relational databases. Types of NoSQL databases include Document Stores (e.g., MongoDB, Couchbase)  Key-Value Stores (e.g., Redis, Amazon DynamoDB)  Column-Family Stores (e.g., Apache Cassandra, HBase)  Graph Databases (e.g., Neo4j, Amazon Neptune) 
  3. NewSQL Databases: These databases attempt to combine the benefits of both relational and NoSQL databases. They aim to provide the scalability of NoSQL while maintaining ACID (Atomicity, Consistency, Isolation, Durability) properties. Examples include Google Spanner and CockroachDB. 

Examples of DBMS (Database Management Systems):  

  • MySQL: An open-source relational DBMS.  Oracle Database: A powerful commercial relational DBMS.  
  • MongoDB: A popular NoSQL document store 
  • DBMS.  Redis: A high-performance key-value store DBMS. 
  •  Neo4j: A graph database for handling interconnected data.  SQLite: A lightweight, embedded relational DBMS.  
  • Cassandra: A distributed NoSQL column-family store DBMS.  SQL Server: Microsoft’s relational DBMS.  
  • PostgreSQL: An open-source relational DBMS known for its extensibility. 

Basic Database Terminologies: 

  1.  Table: A fundamental database object that stores data in rows and columns. 
  2. Record/Row: A single entry in a table, containing a set of related data. 
  3. Field/Column: A specific data attribute within a table that represents a particular piece of information. 
  4. Primary Key: A unique identifier for each record in a table, used to ensure data integrity and enforce relationships. 
  5. Foreign Key: A field in one table that references the primary key in another table to establish relationships between tables.
  6. Index: A data structure that enhances data retrieval speed by creating a lookup mechanism for specific columns. 
  7. Query: A request for data from a database using SQL (Structured Query Language) or a query language specific to the DBMS.
  8. Normalisation: A process of organising data in a relational database to eliminate redundancy and maintain data integrity. 

Forms of Database Organization: 

  1. Hierarchical Database: Data is organised in a tree-like structure with parent-child relationships. Examples include IMS (Information Management System). 
  2. Network Database: Data is organised using a more complex structure of sets and subsets, allowing multiple relationships. CODASYL databases are an example. 
  3. Relational Database: Data is organised in tables with rows and columns, and relationships are established through keys.
  4. Object-Oriented Database: Data is stored as objects with attributes and methods, suitable for object-oriented programming languages.
  5. Document Database: This type stores data in a document format (e.g., JSON, XML) and is suitable for semi-structured data. 
  6. Graph Database: Designed to handle data with complex relationships, making it efficient for graph-like structures. 
  7. Column-Family Database: Designed for storing and retrieving columns of data, often used in big data and NoSQL databases.

 

The choice of database type and organisation depends on an application’s specific requirements, including data volume, complexity, and performance considerations.

Lesson Notes for Other Classes