Database Definitions and Concepts
Data and Information
What is Data?
Data is a raw fact or value. It represents facts about anything (objects, things, people, entities, events, etc.) and can be in any form such as image, file, voice recording, video, or plain text.
Importance of Data
Data is the foundation for decision-making in the world and is a precious resource for businesses and individuals.
Examples of Data Needs
Cost
PC Specification
Supportive device
Example: When buying a PC desktop, data is needed to decide which model to purchase.
What is Information?
Information is data that has been processed and organized into a form suitable for making decisions.
Data vs. Information Example
Data: 070707-07-5007
Information: year of birth, month of birth, date of birth, age, gender, state of birth
What is a Database?
A database is a shared collection of logically related data and a description of this data, designed to meet the information needs of an organization. It offers a flexible, reliable, and secure way to organize data.
A database can be considered a container filled with data or information which is electronically stored in a computer system.
Why Use a Database?
Databases provide ease of access, modification, protection, and analysis. For example, a student's database allows for easy access, modification, protection and analysis of their name, registration number, program, and results.
Uses and Importance of Databases in Business
Storing data and providing facilities for searching specific records.
Solving cases where multiple users want to access and potentially change the same data entries.
Managing access rights to control who can see or change data.
Answering user questions in a reasonable time.
Examples of Database Use
Bank: customer data management, accounting, all banking transactions
Airport: reservation data management, scheduling
Universities: management of registration, alumni
Factory: management of production data, inventory ordering
Sales: management of customer data, product
Telecommunications: management of billing data
Steps in Database Development Process
Planning
Requirement Analysis
System Definition
Logical Model
Database Design
Physical Model
Implementation
Data conversion and loading
Testing
Details of Each Step
Planning
This stage involves planning the entire Database Development Life Cycle.
Requirement Analysis and System Definition
This stage defines the scope and boundaries of the proposed database system.
Logical Model
Developing a database model based on requirements.
Database Design and Physical Model
Implementing the logical model, taking into account the DBMS and physical implementation factors.
Data Conversion and Loading
Importing and converting data from the old system into the new one.
Implementation and Testing
Identifying errors in the newly implemented system.
Data Sharing in Databases
Unlimited Data Sharing
Allows users from different departments to share corporate data according to their information needs.
Properties of Database Systems
A database system consists of logically related data stored in a single logical data repository, which helps eliminate data inconsistency, anomaly, dependency, and structural dependency problems.
It's possible to connect two or more information systems together and transfer data between them.
Properties of Databases
Flexibility
Integrity
Usability
Completeness
Efficiency
Detailed Explanation of Properties
Integrity
Ensures that data is both consistent and correct.
Efficiency
Ensures that users have reasonable response times when accessing data.
Completeness
Ensures that users can access required data.
Flexibility
Ensures that a database can evolve to satisfy changing user requirements.
Usability
Ensures that data can be accessed and manipulated in ways which match user requirements.
Database Management System (DBMS)
Definition
Database: A collection of data.
Management System (DBMS): A set of programs to store and retrieve the data.
A DBMS is software used to define, manipulate, retrieve, store, and manage data in databases.
Functions of a DBMS
A computerized record keeping system.
Manages database structure and controls access to the data stored in the database.
Allows users to interpret, create, update, arrange, manage, maintain, and control access to the database.
Provides an interface between the data and the software application.
Allows users to create their own databases as per their requirement.
Key Capabilities of a DBMS
Defining rules to validate and manipulate data.
Interacting with databases, applications, and end users.
Retrieving, storing, and analyzing data.
Updating data.
Purpose of DBMS
DBMS software defines a database, stores the data, produces reports, and creates data entry screens.
Core Functions
A database system is a collection of interrelated data and a set of programs that allows users to access and modify the data.
Data is converted into information, and information is then evaluated and organized into knowledge.
A database system adds a new dimension to an organization’s management structure.
Common DBMS Software
MySQL, MariaDB, MS SQL Server, Oracle DBMS, MongoDB, Redis, IBM DB2, Elasticsearch, PostgreSQL, SQLite, Altibase, Teradata, SAP Sybase ASE, ADABAS, FileMaker, MS Access, Informix, AmazonRDS, CouchDB, OrientDB
Traditional Approach to Information Processing
Traditional File Processing System
It's a file-based system where the database is manually handled for updating, inserting, deletion, or adding new files.
Drawbacks
Encourages each functional area in a corporation to develop specialized applications.
Consists of a collection of file folders, each tagged and kept in a filing cabinet.
Keeping track of data in a manual file system became more difficult and time-consuming.
Disadvantages of the Traditional Approach
Data Security: Easily accessible data isn't secure.
Data Redundancy: The same information may be duplicated in multiple files, leading to higher storage and access costs, and data inconsistency.
Data Isolation: Related data is not available in one file, and data is scattered in various files with different formats, making it difficult to share data among different applications.
Program/Data Dependence: No centralized execution of data management functions; data management is scattered among all the application programs.
Lack of Flexibility: If unanticipated data is needed, significant programming effort is required, assuming the information exists in the files.
Concurrent Access Anomalies: Data anomalies develop when not all required changes in redundant data are made successfully; concurrent updates may result in inconsistent data.
Importance of Having a DBMS
Improved data security
Reduced data redundancy
Increased data isolation
Increased data consistency
Improved data access
Increased data sharing
Increased end-user productivity
Generic Database Architecture
Centralized Databases
A single database located at one site on a network.
Advantages:
Easier to get a complete view of data.
Easier to manage, update, and backup data.
Disadvantages:
Bottlenecking from multiple users accessing the same file, slowing down productivity.
Distributed Databases
Consists of two or more files located at different sites on a network.
Advantages:
Users won't interfere with each other when accessing/manipulating data.
Speed since files are retrieved from the nearest location.
If one site fails, the system can still run.
Disadvantages:
Time for synchronization of the multiple databases.
Data replication for each different database file.
Three-Schema Architecture of DBMS
The three-schema architecture breaks a database down into three different levels according to its use and structure.
Levels
External/View Level
Conceptual/Logical Level
Internal/Physical Level
Details of Each Level
External/View Level
End users’ view of the data environment
End users usually operate in an environment in which an application has a specific business unit focus.
Conceptual/Logical Level
Represents a global view of the entire database as viewed by the entire organization.
Integrates all external views (entities, relationships, constraints, and processes) into a single global view of the entire data in the enterprise.
Internal/Physical Level
Describes the way data are saved on storage media.
Representation of the database as “seen” by the DBMS.
Client-Server Architecture of DBMS
Definitions
Client: A person or an organization using a service; a computer/device (also called a Host) that actually uses the service or accepts the information. Client devices include laptops, workstations, IoT devices, and similar network-friendly devices.
Server: A remote computer that provides access to data and services. Usually physical devices such as rack servers. The server handles processes like e-mail, application hosting, Internet connections, printing, and more.
Architecture
Entire files are transferred from the server to the client for processing.
This type of architecture has one or more client computers connected to a central server over a network.
Categories of DBMS
Desktop Databases
MS Access, Fox Pro, FileMaker Pro, Paradox, Lotus
Server Databases
Oracle, MS SQL Server, IBM DB2, Informix
Benefits of Using Desktop Database and Server Solution
Desktop Databases
Single-user database supports only one user at a time.
Run on personal computers and require no in-depth technical skills.
Server Solution
Used by the entire organization and supports many users.
Expensive and complex, as they manage vast volumes of data and several users at once.
Detailed Comparison
Feature | Desktop Databases | Server Solution |
|---|---|---|
Management | Easy to use. No knowledge is necessarily needed to be able manage such databases since the programs themselves are normally very intuitive and easy to learn. | Easy Management |
Scalability | N/A | Able to gracefully handle a rapidly expanding amount of users and/or data. |
Web Solutions | N/A | Provide web solutions so that the user can publish data onto the web in various fashions. |
Cost | Inexpensive - Desktop applications are purchased one time and there are not continually occurring charges. | Expensive - as they manage vast volumes of data and several users at once |
Flexibility | Can handle just about any data management problem and available for multiple operating systems. | N/A |
Performance | N/A | Can manage multiple high- speed processors and high bandwidth connectivity. |
The Users of DBMS
End User
Application Programmer
Database Administrator
End User
May not be concerned with or even aware of the details of the DBMS.
Primarily designed for single person to store their data, these databases have simpler structure and functioning as compared to other databases.
Involved in updates to the database or queries on the database.
Application Programmer
Application programmers design, debug, test, and maintain set of programs for the users in order to interact with database.
The back-end programmers who writes the code for the application programs.
Also referred as System Analysts or simply Software Engineers.
Database Administrator
Responsible for problems such as security breaches and poor system response time.
Responsible for providing security to the database and allows only authorized users to access/modify the database.
A person/team who defines the schema and also controls the 3 levels of the database.
Conclusion
Database users are individuals who interact with data.
The access and permissions within a database depends on their function and tasks.
Database users know the value of data security, privacy, and integrity, as well as how to query data from databases using Structured Query Language (SQL) or other tools.