You are on page 1of 25

Database Design and Development

Introduction
By Thilina Wanshathilaka
Introduction Database Basics
01 • What is data, information, knowledge
• Characteristic of quality data
• Organizing data
02 • Tables ,Rows and Columns
• Relationships

Database Closing Lecture


03 • What is Database
• Characteristic of Database
• Types of databases
04 • Summary Of Todays lecture
• Q &A
• Next Lecture

Lesson Agenda
Data Information knowledge
Data Information Knowledge Intelligence

Structure Analyse Apply


Quality Data
• Accuracy:
• Precision and Correctness: Data should be accurate and precise, free from
errors and inconsistencies. It should reflect the true values and characteristics
of the entities it represents.
• Completeness:
• All Relevant Information: Quality data is complete, containing all the
necessary information without missing or omitted values. Incomplete data
can lead to misinterpretation and incorrect conclusions.
• Consistency:
• Uniformity and Standardization: Consistent data maintains a uniform format
and adheres to predefined standards. Inconsistencies, such as variations in
data formats or units, can lead to confusion and errors.
Quality Data
• Uniqueness:
• No Duplicate Entries: Quality data is unique, with no redundant or duplicate
records. Duplicate data can lead to inaccuracies and affect data analysis and
reporting.
• Accuracy:
• Free from Errors: Accurate data is error-free. Errors can result from manual
input, data processing issues, or system malfunctions. Regular data validation
and cleansing processes help maintain accuracy.
• Reliability:
• Consistency over Time: Reliable data remains consistent and trustworthy over
time. It should be dependable for making decisions and should not change
unexpectedly without a valid reason.
Quality Data
• Timeliness:
• Relevance and Currency: Timely data is up-to-date and relevant to the current context.
Outdated information may lead to incorrect decisions, especially in dynamic environments.
• Accessibility:
• Availability and Ease of Access: Quality data is accessible when needed. It should be available
to authorized users and systems in a timely manner. Accessibility ensures that data can be
utilized efficiently for decision-making.
• Traceability:
• Auditability and Documentation: Traceability ensures that the source and history of the data
can be traced. This characteristic is crucial for audit purposes, compliance, and understanding
the origin of the information.
• Ethical Considerations:
• Privacy and Compliance: Quality data adheres to ethical standards, respecting privacy
regulations and legal requirements. It ensures that data is collected, stored, and used in
compliance with relevant laws and ethical principles.
Organizing Data
• The amount of information available to us is literally exploding, and
the value of data as an organizational asset is widely recognized.
• To get the most out of their large and complex datasets, users require
tools that simplify the tasks of managing the data and extracting
useful information in a timely fashion.
• Otherwise, data can become a liability, with the cost of acquiring it
and managing it far exceeding the value derived from it.
• Organizing data is a crucial aspect of data management, and various
methods are used to structure and arrange data for efficient storage,
retrieval, and analysis.
Organizing Data Methods
• Bookkeeping:
• Bookkeeping is a systematic process of recording financial transactions of a
business. It involves maintaining detailed records of income, expenses, assets,
and liabilities. Bookkeeping is essential for financial management, tax
compliance, and decision-making.
• Ledgers:
• Ledgers are a more detailed and organized form of bookkeeping. They consist
of accounts that track individual transactions related to specific categories,
such as assets, liabilities, equity, revenue, and expenses.
Organizing Data Methods
• Hierarchical Model:
• In the hierarchical model, data is organized in a tree-like structure with a top-down
hierarchy. Each record has a parent-child relationship with other records, creating a
one-to-many structure. This model is commonly used in file systems and older
database systems.
• Network Model:
• The network model extends the hierarchical model by allowing each record to have
multiple parent and child records, creating a more flexible structure. It uses pointers
to represent relationships between records.
• Relational Model:
• The relational model organizes data into tables with rows and columns. Each table
represents an entity, and relationships between entities are established using keys.
The relational model is widely used in modern relational database management
systems (RDBMS) like MySQL, PostgreSQL, and Microsoft SQL Server.
Organizing Data Methods
• Object-Oriented Model:
• The object-oriented model represents data as objects, combining data and methods
(functions) that operate on that data. It is commonly used in object-oriented programming
languages and databases.
• NoSQL Databases:
• NoSQL databases organize data in various ways, depending on the specific type of NoSQL
database. Examples include:
• Document Stores: Organize data as documents (e.g., JSON or BSON) in collections (e.g., MongoDB).
• Key-Value Stores: Store data as key-value pairs (e.g., Redis).
• Column-Family Stores: Organize data in columns rather than rows (e.g., Apache Cassandra).
• Graph Databases: Represent data as nodes, edges, and properties to handle complex relationships (e.g.,
Neo4j).
• Data Warehousing:
• Data warehousing involves organizing and storing large volumes of data from different
sources in a central repository. This allows for efficient querying and analysis across the
entire dataset.
Organizing Data Methods
• Data Lakes:
• Data lakes store vast amounts of raw, unstructured, and structured data in
their native formats. This method provides flexibility for data exploration and
analysis.
• Cloud Databases:
• Many organizations are migrating to cloud-based database solutions, offering
scalability, flexibility, and accessibility. Examples include Amazon Aurora,
Microsoft Azure SQL Database, and Google Cloud Firestore.
• Big Data Solutions:
• For managing massive volumes of data, organizations may employ big data
technologies such as Apache Hadoop, Apache Spark, and distributed
databases like Apache Cassandra.
Characteristics Of Database
• Data Structure:
• Databases organize data in a structured format, typically using tables with rows and
columns. This structured approach allows for efficient storage, retrieval, and
manipulation of data.
• Data Independence:
• Databases provide a level of abstraction between the physical storage of data and its
logical representation. This concept is known as data independence, and it allows
changes to the database structure without affecting the application programs that
use the data.
• Data Integrity:
• Databases enforce data integrity through constraints, such as primary keys, foreign
keys, and unique constraints. These constraints ensure the accuracy and reliability of
the stored data.
Characteristics Of Database
• Query Language:
• Databases use a query language (e.g., SQL - Structured Query Language) to interact
with the data. This language allows users to retrieve, update, insert, and delete data
from the database.
• ACID Properties:
• ACID (Atomicity, Consistency, Isolation, Durability) properties ensure the reliability
and consistency of transactions in a database. These properties guarantee that
database transactions are processed reliably, even in the presence of system failures.
• Concurrency Control:
• Databases manage concurrent access to data by implementing concurrency control
mechanisms. This ensures that multiple users or processes can work with the
database simultaneously without causing data inconsistencies.
Characteristics Of Database
• Scalability:
• Databases should be scalable to handle increasing amounts of data and growing
numbers of users. Scalability can be achieved through vertical scaling (adding more
resources to a single machine) or horizontal scaling (distributing data across multiple
machines).
• Security:
• Databases implement security measures to protect data from unauthorized access
and ensure data privacy. This includes user authentication, access control,
encryption, and auditing features.
• Backup and Recovery:
• Databases provide mechanisms for regular data backups and recovery in case of
hardware failures, software errors, or other unexpected incidents. This ensures the
availability and durability of data.
Characteristics Of Database
• Data Redundancy Control:
• Databases minimize data redundancy by organizing data in a normalized form.
Reducing redundancy helps save storage space, improves data consistency, and
makes it easier to maintain data integrity.
• Transaction Management:
• Databases manage transactions, which are sequences of one or more operations
that are executed as a single unit. Transaction management ensures that either all
operations within a transaction are completed successfully, or none of them are.
• Relational Model:
• Many databases follow the relational model, which organizes data into tables with
relationships between them. This model provides a standardized and widely adopted
approach to representing and querying data.
File Systems VS a DBMS
• Imagine you have 1TB data in your organization and you require data
quickly extract and manipulate data constantly. When you try to do that in
operating system files or spread sheet s you start to have following issues.

• We probably do not have 1TB of main memory to hold all the data. We
must therefore store data in a storage device such as a disk or tape and
bring relevant parts into main memory for processing as needed.

• Even if we have 500 GB of main memory, on computer systems with 32-bit


addressing, we cannot refer directly to more than about 4 GB of data. We
have to program some method of identifying all data items.
File Systems VS a DBMS
• We have to write special programs to answer each question a user
may want to ask about the data. These programs are likely to be
complex because of the large volume of data to be searched.

• We must protect the data from inconsistent changes made by


different users accessing the data concurrently. If applications must
address the details of such concurrent access, this adds greatly to
their complexity.
File Systems VS a DBMS
• We must ensure that data is restored to a consistent state if the
system crashes while changes are being made. System have ability to
recover that mistake

• Operating systems provide only a password mechanism for security.


This is not sufficiently flexible to enforce security policies in which
different users have permission to access different subsets of the
data.
File Systems VS a DBMS
• We must ensure that data is restored to a consistent state if the
system crashes while changes are being made. System have ability to
recover that mistake

• Operating systems provide only a password mechanism for security.


This is not sufficiently flexible to enforce security policies in which
different users have permission to access different subsets of the
data.
Database Basics
• Tables: These are the fundamental structures in a database where
data is stored. Each table consists of rows and columns, with each
row representing a record and each column representing a specific
attribute or field.
• Rows: Also known as records, rows represent individual entries in a
table, containing information about a particular item or entity.
• Columns: Also known as fields, columns represent the different
attributes or properties of the data being stored in a table.
Database Basics
• Fields: Each individual piece of data within a table is called a field. It
corresponds to a specific attribute of the entity being represented.
• Primary Key: A primary key is a unique identifier for each record in a
table, ensuring that each row can be uniquely identified.
• Relationships: Databases often have multiple tables, and
relationships define how these tables are connected or linked to each
other.
Data Models
• A data model is a collection of high-level data description constructs that hide
many low-level storage details. A DBMS allows a user to define the data to be
stored in terms of a data model. Most database management systems today are
based on the relational data model. Which we are continuously focused during
this module. Other data model includes.
• Hierarchical Model
• Network Model
• Object-oriented Model
• Object-relational Model
Data Models (Commercial Application)
• Relational Data Model
• IBM's DB2, Informix, Oracle, Sybase, Microsoft's Access, FoxBase, Paradox, Tandem, and
Teradata
• Hierarchical Model
• IMS DBMS by IBM
• Network Model
• IDS and IDMS by IBM
• Object-oriented Model
• Objectstore and Versant
• Object-relational Model
• IBM Informix, ObjectStore, Oracle, Versant,
THANK YOU
Insert the Subtitle of Your Presentation

You might also like