1. Relevance of Database
Management Systems in
Corporate Organisations
By Abiola Obileye
Oracle Consultant/Trainer
DataSoft Consulting Ltd
www.datasoft-consulting.co.uk
2. Purpose of the Seminar
To present an overview of
Database management systems,
their history, evolution and
strategic importance within an
organisation.
3. OBJECTIVES
At the end of this seminar, it is hoped that every attendee would have
gained the following:
Significance of data and databases
An understanding of what a database is
The history and evolution of databases
The purpose of databases
Types of databases
Advantages of a relational database management system
Database vendors
Maximum Availability Architecture
Disaster Recovery
Role of a database administrator
Remuneration
Conclusion
4. DATA! HOW IMPORTANT IS IT?
Data can be described as distinct pieces of information, usually
formatted in a special way that constitute building blocks of
information. It is any fact, number or text that can be processed by a
computer. It can exist in a variety of forms either on pieces of paper,
as bits and bytes stored in electronic memory or as facts stored in a
person's mind.
The term data is often used to distinguish binary machine-readable
information from textual human-readable information. For example,
some applications make a distinction between data files - files that
contain binary data and text files - files that contain ASCII data.
Data can be Qualitative or Quantitative.
Qualitative data is descriptive information - it describes something.
Quantitative data is numerical information - numbers.
5. Protecting Your Livelihood!
DATA IS A COMPANY’S
CORPORATE CURRENCY!!!
It is safe to conclude that an organisation without a good database
cannot last for too long before becoming chaotic and completely un-
manageable.
If data is so critical in our daily lives - households, schools, hospitals,
businesses, small and large organisations amongst others, it is
definitely pertinent that we ask questions such as:
How do we ensure that data is easily accessible?
How do we ensure that we can extract information from it?
How do we ensure its continuous availability?
How do we ensure that we protect it?
Who should be responsible for our data?
7. You can think of a database as an Electronic Filing System. It is basically a collection of information
organized in such a way that a computer program can quickly select desired pieces of data which can be
manipulated in useful ways.
A database is a means of storing information in such a way that information can be retrieved from it. A
database is a software-based container structured to collect and store information so it can be added to,
updated, retrieved or removed in an automatic fashion
A database provides proper storage for small and large amounts of data. It provides easy and fast access
to facilitate the processing of data. Its content should be easily accessible to authorised users in a quick
and efficient manner. A database can store and handle vast amounts of data.
A database management system (DBMS) is a set of software that is used to define, store, modify, control
the data and extract information. All software is divided into two general categories: data and programs.
Programs are collections of instructions for manipulating data. Database programs are software
applications designed for users to make databases and create all the programming necessary to fill them
or delete them as needed.
Database systems have become the primary mechanism used by most organization to store and manage
their important information. With the progress and advancement of computer systems, database is part
and parcel not only for modern organization, even small business related shops are compelled to use this
critical system.
In database management systems, data files are the files that store the database information, whereas
other files such as data dictionaries, store administrative information known as metadata.
8. EVOLUTION OF DATABASES
Due to the advancement in the electronic industry, the
increased processing and storage capacity of computer has
opened the doors for computer scientists to develop various
techniques to store large amount of related data in an
efficient and compact manner. The concept of a database was
introduced by IBM in 1960s. A brief description about the
development of DBMS is given below:
File Management System
Hierarchical database System
Network Database System
Relational Database System
9. The Relational Database Management System - RDBMS
A relational database management system (RDBMS) is the most common type of database
systems. It is a database engine/system based on the relational model specified by Edgar F.
Codd who is considered to be the “father” of modern relational database design.
A Relational Database Management System (DBMS) handles the way data is stored,
maintained and retrieved.
Most modern commercial and open-source database applications are relational in nature.
The most important relational database features include an ability to use tables for data
storage while maintaining and enforcing certain data relationships. Relational tables follow
certain integrity rules to ensure that the data they contain stay accurate and are always
accessible.
A table is referred to as a relation in the sense that it is a collection of objects of the same
type i.e. rows. Data in a table can be related according to common keys or concepts,
therefore the ability to retrieve related data from a table is the basis for the term Relational
Database.
10. The Relational Database Management System - RDBMS
The structure of a database is the table which consists of rows and
columns of information. The columns identify the data (attributes) in
the table and the rows are the records of information. Tables look just
like a spreadsheet however tables can be manipulated and updated in
a manner that spreadsheets cannot which makes a database a very
valuable tool. Data must be stored and presented as relations i.e. tables
that have relationships with each other e.g. primary/foreign keys.
To manipulate the data stored in tables, a system should provide
relational operators - code that enables the relationship to be tested
between two entities. A good example is the WHERE clause of a
SELECT statement, i.e. the SQL statement :
SELECT * FROM CUSTOMER_MASTER WHERE CUSTOMER_SURNAME
= ‘James’ will query the CUSTOMER_MASTER table and return all
customers with a surname of James.
11. KEY FEATURES OF A RELIABLE RDBMS
Codd later published another paper that outlined the 12 rules that all
databases must follow to qualify as relational. Many modern database
systems do not follow all 12 rules, but these systems are considered
relational because they conform to at least two of the 12 rules. Most
modern commercial and open-source database systems are relational
in nature and include well-known applications
Portability
Market Presence
Version Changes
Backup and Recovery
Performance
Cursor Support
SQL Dialect
Multiple Database Support
PL/SQL
Maximum Availability
Replication
Disaster Recovery
12. PURPOSE OF A RELATIONAL DATABASE MANAGEMENT SYSTEM
We all use tens and hundreds of different websites on a daily basis and most
of them use databases to collect and store the data.
To see why database management systems are necessary, let's look at a
typical “file-processing system'' supported by a conventional operating
system.
The application is a savings bank:
Savings account and customer records are kept in permanent system files.
Application programs are written to manipulate files to perform these
tasks:
Debit or credit an account
Add a new account
Find an account balance
Generate monthly statements
Development of the system proceeds as follows:
New application programs must be written as the need arises
New permanent files are created as required.
Over a long period of time files may be in different formats
Application programs may be in different programming
languages
13. There are problems with the straight file-processing approach:
Data redundancy and inconsistency
Same information may be duplicated in several places.
All copies may not be updated properly.
Difficulty in accessing data
May have to write a new application program to satisfy
an unusual request.
E.g. find all customers with the same postal code.
Could generate this data manually, but a long job...
Data isolation
Data in different files.
Data in different formats.
Difficult to write new application programs.
14. Multiple users
Want concurrency for faster response time.
Need protection for concurrent updates.
E.g. two customers withdrawing funds from the same account at the same
time - account has $500 in it, and they withdraw $100 and $50. The result
could be £350, £400 or £450 if no protection.
Security problems
Every user of the system should be able to access only the data they are
permitted to see.
E.g. payroll people only handle employee records, and cannot see customer
accounts; tellers only access account data and cannot see payroll data.
Difficult to enforce this with application programs.
Integrity problems
Data may be required to satisfy constraints.
E.g. no account balance below $25.00.
Difficult to enforce or to change constraints with the file-processing approach.
These problems and others are resolved by relational database management systems.
15. ADVANTAGES OF RDBMS
Consistent information
Firmly established and flexible
Sound theoretical foundation and use over many years has resulted in stable,
standardized products available
Standard data access language through Structured Query Language (SQL)
Easy management of data security and privacy
Reduced application development time
Costs and risks associated with large development efforts and with large databases
are well understood
The fundamental structure, i.e. a table is easily understood and the design and
normalization process is well defined
16. DATABASE VENDORS
Enterprise database systems come packed with features from hot backups to high-availability to extensive
cloud services. These database systems range in price from free to tens of thousands of dollars.
There's neither a single correct solution for every data problem, nor a perfect database system; each has its
own set of features and shortcomings. Below are the top enterprise database systems on the market that
companies need to evaluate in order to determine which solution will likely work best for them.
Oracle - Synonymous with enterprise database systems
Microsoft SQL Server
SAP Sybase ASE
PostgreSQL – Open source object relational database management system
MariaDB Enterprise - fully open source database system
MySQL – niche database system for developers but has grown into a major contender in the enterprise
database market
Teradata - large enterprise data warehouse
Informix - another IBM product
Ingres - parent open source project of PostgreSQL and other database systems
Amazon's SimpleDB - offers enterprises a simple, flexible and inexpensive alternative to traditional
database systems.
17. MAXIMUM AVAILABILITY - The High Availability Challenge!
Maximum Availability Architecture addresses the complete
range of requirements for data protection and availability
including disaster recovery, typical for enterprises of all sizes
and market.
Business continuity describes the processes and procedures
an organization must put in place to ensure that mission-
critical business functions can continue during and after a
disaster. The emphasis is more on maintaining business
operations than IT infrastructure. Because business
continuity and disaster recovery are so closely related, the
two terms are sometimes combined as Business Continuity
and Disaster Recovery (BCDR or BC/DR).
18. MAXIMUM AVAILABILITY - The High Availability Challenge!
Enterprises use Information Technology (IT) to gain competitive
advantages, reduce operating costs, enhance communication with
customers, and increase management insight into their business. Thus
enterprises are becoming increasingly dependent on their IT infrastructure
and its continuous availability. Application downtime and data
unavailability directly translate into lost productivity and revenue,
dissatisfied customers, and damage to corporate reputation.
Successful HA begins with understanding the service levels required by the
business along each of these dimensions. This guides important decisions
on technology and determines the appropriate level of investment in HA
architecture. These solutions achieve service level objectives along each of
the above dimensions. They must be flexible because different applications,
business functions and groups of users have different service level
requirements. They must also be able to quickly adapt because no solution
is permanent - requirements evolve as business conditions change
19. The High Availability Challenge Designing, implementing, and managing a
high availability (HA) architecture that achieves all business objectives under
real-world constraints is quite difficult. Many technologies and services from
different suppliers offer to protect businesses from data loss and downtime -
who can they trust?
High Availability encompasses a number of important aspects in addition to
the main goal of preventing downtime. Key dimensions of a comprehensive
HA architecture include:
Data availability: ensuring access to data to prevent business interruption.
Data protection: preventing data loss that compromises the viability of the
business.
Performance: delivering adequate response time for efficient business
operations.
Cost: reducing deployment, management and support costs to conserve
corporate resources.
Risk: consistently achieving required service levels over a long period of time
as the business evolves with no costly surprises or disappointments.
20. DISASTER RECOVERY
How critical is it?
Disaster recovery is the area of security planning that deals with protecting an organization from the effects
of significant negative events. Significant negative events, in this context, can include anything that puts an
organization’s operations at risk: crippling malicious cyber attacks, equipment failures, accidental human
disasters as well as natural disasters such as hurricanes, earthquakes and other. It is the process of returning
a database to a state of normality with minimum data loss after the occurrence of a disastrous event.
A disaster recovery plan (DRP) documents policies, procedures and actions to limit the disruption to an
organization in the wake of a disaster. Just as a disaster is an event that makes the continuation of normal
functions impossible, a disaster recovery plan consists of actions intended to minimize the negative effects of
a disaster and allow the organization to maintain or quickly resume mission-critical functions.
Oracle Database provides three different approaches to disaster recovery that provide the highest level of
data protection and availability.
Oracle Zero Data Loss Recovery Appliance is an engineered system designed to eliminate data loss and
dramatically reduce data protection overhead for all Oracle databases in the enterprise. Integrated with
Recovery Manager (RMAN), it enables a centralized, incremental forever backup strategy for hundreds to
thousands of databases, using cloud-scale, fully fault-tolerant hardware and storage.
Replication capabilities integrated with the Recovery Appliance make it ideally suited for providing disaster
recovery for Oracle databases where a restore from backup is sufficient to address recovery time objectives.
21. Oracle Active Data Guard is the replication solution
optimized for data protection and disaster recovery for
the Oracle Database. Active Data Guard prevents data
loss and downtime by maintaining a synchronized
physical replica of the production database. If the
production database becomes unavailable for any
reason, client connections can quickly, and in some
configurations transparently, fail over to the replica to
immediately restore service.
Oracle GoldenGate maintains a synchronized logical
copy of a production database that is open read-write
at all times.
22. Who is responsible for maintaining and protecting our corporate currency?
A technical engineer known as a Database Administrator (DBA)!
Data integrity is a DBA's number one responsibility. It's been said that the DBA has three basic tasks. In
decreasing order of importance which are to:
Protect the data
Protect the data
Protect the data
DBAs works closely with other technical engineers such as System Administrators, Network
Administrators, Application developers, etc. They also work closely with stakeholders and management.
The DBA role naturally divides into three major activities:
Ongoing maintenance of production databases - Operations DBA
Planning, design, and development of new database applications, or major changes to existing applications -
Development DBA or Architect
Management of an organisation's data and metadata - data administrator
One person may perform all three roles, but each is profoundly different although they are often combined
into one role of a DBA.
The average salary of a DBA in the UK is £47,500 but it goes up to £100K per annum. The salary of a DBA is
slightly more in the United States of America.
There are various career paths available to a DBA. It is always a great idea to keep abreast of new
technologies, training and certification.
23. DBA TASKS
Installation, configuration, upgrade and migration
Backup and recovery
Database security and user management
Storage and capacity planning
Performance monitoring and tuning
Troubleshooting
High availability
Very Large Databases - VLDBs
Data Extraction, Transformation, and Loading – ETL
Good operations DBA will be proactive to database management rather than being reactive.
They will spend most of the day not responding to user complaints but rather follow a checklist
of daily, weekly and monthly maintenance tasks. The tasks will have been thought out and
continually refined in order to anticipate, prevent or detect and resolve problems. Every new
problem will eventually give rise to a change in one or more checklists, bringing that problem
under the overall detection and prevention regime. Once a steady state is achieved, the
operations DBA role becomes one of quiet routine.
25. CONCLUSION
Corporate organisations depend on several utilities - centrally managed
services distributed across networks - the most common being electricity,
water, and telephone services. Increasingly, organisations also depend on
LAN and database services. Some organisations, such as airlines, with their
reservation systems, or Amazon.com, with its Internet-based order system,
are extremely sensitive to the availability of an underlying database service.
Established utilities such as telephone and power companies have evolved
over time to maintain a relatively high degree of reliability and predictability
- or at least, high by the standards of the database industry. They've done
this by defining exactly what they need to deliver and then carefully
monitoring actual delivery on a real-time basis, storing these measurements
for review and management. Service outages are analysed with an eye to
preventing their recurrence, and problems are anticipated and prevented
more often than reacted to. Even natural disasters are planned for, and the
response is swift, co-ordinated, and well-rehearsed.
26. Any database that is key to an organisation's operations - such as
Amazon.com's order database - is functionally the same as any of these
other utilities; work cannot proceed if the service is interrupted. The
Internet is driving much higher database-uptime standards, because even
a small mom-and-pop site that wants to sell on the Internet must be up all
the time, or it will lose orders.
As Glenn Slate, operations manager for eMerchandise.com, puts it: "Better
no visitors than visitors who have a bad experience, because they will go
away, stay away, and warn their friends away. Response time, uptime, and
reliability are crucial, especially for us, because we target an international
audience. Many people in this industry don't realise we're on a frontier.
Every shopper today will influence 20 friends who are getting online
tomorrow.
A company’s corporate currency is its data therefore it must be protected
at all costs to keep the company in operation.