26
Relevance of Database Management Systems in Corporate Organisations By Abiola Obileye Oracle Consultant/Trainer DataSoft Consulting Ltd www.datasoft-consulting.co.uk

Relational database management systems

Embed Size (px)

Citation preview

Page 1: Relational database management systems

Relevance of Database

Management Systems in Corporate

OrganisationsBy Abiola Obileye

Oracle Consultant/Trainer DataSoft Consulting Ltd

www.datasoft-consulting.co.uk

Page 2: Relational database management systems

Purpose of the Seminar

To present an overview of Database management systems, their history, evolution and strategic importance within an organisation.

Page 3: Relational database management systems

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

Page 4: Relational database management systems

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.

Page 5: Relational database management systems

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?

Page 6: Relational database management systems

What is a Database?

Page 7: Relational database management systems

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 fashionA 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. 

Page 8: Relational database management systems

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 SystemHierarchical database System Network Database System Relational Database System

Page 9: Relational database management systems

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.

Page 10: Relational database management systems

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.

Page 11: Relational database management systems

KEY FEATURES OF A RELIABLE RDBMSCodd 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

Page 12: Relational database management systems

PURPOSE OF A RELATIONAL DATABASE MANAGEMENT SYSTEMWe 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

Page 13: Relational database management systems

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.

Page 14: Relational database management systems

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.

Page 15: Relational database management systems

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

Page 16: Relational database management systems

DATABASE VENDORSEnterprise 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.

Page 17: Relational database management systems

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).

Page 18: Relational database management systems

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

Page 19: Relational database management systems

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.

Page 20: Relational database management systems

DISASTER RECOVERYHow 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.

Page 21: Relational database management systems

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.

These 3 products provide disaster recovery for any company that values its corporate currency and is willing to invest in protecting it against any form of natural, accidental or malicious loss.

Page 22: Relational database management systems

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 dataDBAs 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 DBAPlanning, design, and development of new database applications, or major changes to existing applications - Development DBA or ArchitectManagement 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.

Page 23: Relational database management systems

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 – ETLGood 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.

Page 24: Relational database management systems

CHALLENGES OF MANAGING DATABASES

Page 25: Relational database management systems

CONCLUSIONCorporate 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.

Page 26: Relational database management systems

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.