What is a Database?
A Database is a collection of data files
A Database is a structure that contains information about many kinds of entities and about the relationships between those entities
Integrated interrelation collection of centralized data.
Entity – a person, place, thing, or event
Entities become our categories of information
We organize our information in these major entities (categories)
These categories become the tables, that will store our data
Relationship – an association between entities
Relationships define how our data files will talk to each other
Customers “Place” Orders
Orders “Are For” Products
Overview of DBMS
A computer system which provides mechanisms to store, retrieve and manipulate information in a manner which is both efficient and safe.
A computerized system whose overall purpose is to maintain information and to make that information available on demand.
Why is it necessary?
To provide a level of abstraction, control and functionality between the data and the user(s) that is not possible using a collection of conventional electronic files.
Problems associated with a collection of files
redundancy\ duplicate data
inconsistency\ non valid data
integrity\ all data is correct
Advantages of the DBMS Approach:
One of the primary advantages of a DBMS is centralizing data. All data is stored in a single location, which makes it easier to access and manage.
DBMS systems enforce data integrity constraints, ensuring that data remains accurate and consistent. This includes enforcing primary key constraints, referential integrity, and data validation rules.
DBMS systems offer robust security features to control who can access and modify data. This includes user authentication, authorization, and encryption of sensitive data.
Multiple users and applications can access the same data simultaneously, promoting data sharing and collaboration within an organization.
Data Redundancy Reduction:
DBMS minimizes data redundancy by storing data in normalized tables, which reduces the risk of inconsistencies and saves storage space.
Data Recovery and Backup:
DBMS systems typically provide mechanisms for data backup and recovery, ensuring that data can be restored in the event of hardware failures or other disasters.
Most DBMS systems can scale vertically (adding more resources to a single server) or horizontally (adding more servers) to handle increased data volumes and user loads.
Data Query and Reporting:
DBMS systems offer query languages (e.g., SQL) for querying and retrieving data, making it easier to generate reports and gain insights from the data.
ACID (Atomicity, Consistency, Isolation, Durability) properties of DBMS transactions ensure that data remains consistent even in the face of concurrent access and failures.
DBMS simplifies data maintenance tasks like adding, updating, and deleting records. It also supports data versioning and auditing.
Disadvantages of the DBMS Approach:
Implementing and maintaining a DBMS can be complex and require specialized skills and resources, which may not be suitable for small organizations.
Licensing, hardware, and staffing costs associated with DBMS implementation and management can be substantial.
DBMS systems introduce overhead due to query optimization, transaction management, and other processes, which can impact performance.
Data Security Concerns:
While DBMS systems offer security features, they can still be vulnerable to security breaches if not properly configured and maintained.
Organizations may become dependent on a specific DBMS vendor’s technology, making it challenging to switch to another system.
Users and administrators may need to learn the intricacies of the specific DBMS, including its query language and management tools.
Single Point of Failure:
If the DBMS server fails or experiences downtime, it can disrupt access to critical data for all users and applications.
Large-scale DBMS systems can consume significant computational resources, including memory and processing power.
Data Concepts & Characteristics: Data is information in a raw or processed form. It has characteristics like accuracy, reliability, and relevance that influence its quality and usability.
Data Definition: Data definition involves defining the structure, organization, and relationships of data elements in a database, typically done through data modeling.
Data Hierarchy, Entities & Entity Relationships: Data hierarchy refers to the organization of data from a broad level down to finer levels. Entities are objects or concepts in the data, and their relationships describe how they are connected in the database.
Data Integrity, Security & Privacy: Data integrity ensures the accuracy and consistency of data, while security and privacy measures protect data from unauthorized access and breaches.
Centralized vs. Distributed Database Systems: Centralized databases store data in a single location, while distributed databases spread data across multiple locations. Each approach has its own advantages and disadvantages, impacting data accessibility and system complexity.