Introductory Concepts



Similar documents
Introduction. Introduction: Database management system. Introduction: DBS concepts & architecture. Introduction: DBS versus File system

Introduction: Database management system

DATABASE SYSTEM CONCEPTS AND ARCHITECTURE CHAPTER 2

Chapter 2 Database System Concepts and Architecture

DATABASE MANAGEMENT SYSTEM

Database Management Systems

ECS 165A: Introduction to Database Systems

CS2Bh: Current Technologies. Introduction to XML and Relational Databases. Introduction to Databases. Why databases? Why not use XML?

Oracle 11g is by far the most robust database software on the market

Introduction. Chapter 1. Introducing the Database. Data vs. Information

1 File Processing Systems

What is a database? COSC 304 Introduction to Database Systems. Database Introduction. Example Problem. Databases in the Real-World

Database Management System Choices. Introduction To Database Systems CSE 373 Spring 2013

Course Notes on A Short History of Database Technology

Course Notes on A Short History of Database Technology

Database Access via Programming Languages

CSE 132A. Database Systems Principles

Contents RELATIONAL DATABASES

Database System Concepts

DBX. SQL database extension for Splunk. Siegfried Puchbauer

Database System. Session 1 Main Theme Introduction to Database Systems Dr. Jean-Claude Franchitti

CSE 233. Database System Overview

Welcome! Chapter 1. Outline. Book Goals. Database Characteristics. Initial Vocabulary

Week 1 Part 1: An Introduction to Database Systems. Databases and DBMSs. Why Use a DBMS? Why Study Databases??

Seamless Web Data Entry for SAS Applications D.J. Penix, Pinnacle Solutions, Indianapolis, IN

History of Database Systems

ICOM 6005 Database Management Systems Design. Dr. Manuel Rodríguez Martínez Electrical and Computer Engineering Department Lecture 2 August 23, 2001

Databases and SQL. The Bioinformatics Lab SS Wiki topic 10. Tikira Temu. 04. June 2013

Database Design and Programming

Logistics. Database Management Systems. Chapter 1. Project. Goals for This Course. Any Questions So Far? What This Course Cannot Do.

Software: Systems and Application Software

Introduction to database management systems

Service Oriented Architectures

Chapter 1: Introduction. Database Management System (DBMS)

Chapter 1: Introduction

Database System Architecture & System Catalog Instructor: Mourad Benchikh Text Books: Elmasri & Navathe Chap. 17 Silberschatz & Korth Chap.

Chapter 3. Database Environment - Objectives. Multi-user DBMS Architectures. Teleprocessing. File-Server

2015, André Melancia (Andy.PT) 1

Database Systems. Session 1 Main Theme Introduction to Database Systems Dr. Jean-Claude Franchitti

Database Management. Chapter Objectives

Chapter 1: Introduction. Database Management System (DBMS) University Database Example

Introduction to Object-Oriented and Object-Relational Database Systems

Oracle Database 11g Comparison Chart

CSE 544 Principles of Database Management Systems. Magdalena Balazinska (magda) Spring 2006 Lecture 1 - Class Introduction

Computer Information Systems

Relational Database Basics Review

GLOSSARY OF TECHNICAL TERMS

Introduction to Database Systems. Chapter 1 Introduction. Chapter 1 Introduction

10. Creating and Maintaining Geographic Databases. Learning objectives. Keywords and concepts. Overview. Definitions

Introduction to Databases

The ObjectStore Database System. Charles Lamb Gordon Landis Jack Orenstein Dan Weinreb Slides based on those by Clint Morgan

CSE 544 Principles of Database Management Systems. Magdalena Balazinska (magda) Winter 2009 Lecture 1 - Class Introduction

Database Concepts. Database & Database Management System. Application examples. Application examples

Principles of Distributed Database Systems

CSE 544 Principles of Database Management Systems. Magdalena Balazinska (magda) Fall 2007 Lecture 1 - Class Introduction

Setting up a database for multi-user access

CSCI-UA: Database Design & Web Implementation. Professor Evan Sandhaus sandhaus@cs.nyu.edu evan@nytimes.com

GLOSSARY OF TECHNICAL TERMS

Principles of Database. Management: Summary

Ursuline College Accelerated Program

LAMP Server A Brief Overview

Object Oriented Database Management System for Decision Support System.

BUILDING OLAP TOOLS OVER LARGE DATABASES

Compared to MySQL database, Oracle has the following advantages:

Chapter 1: Introduction to ArcGIS Server

Database Systems. Lecture 1: Introduction

Overview of Database Management

B.Sc (Computer Science) Database Management Systems UNIT-V

Concepts of Database Management Seventh Edition. Chapter 9 Database Management Approaches

End the Microsoft Access Chaos - Your simplified path to Oracle Application Express

Doing More with Less: The Economics of Open Source Database Adoption

Evolution of Distributed Database Management System

2. Background on Data Management. Aspects of Data Management and an Overview of Solutions used in Engineering Applications

Java DB Performance. Olav Sandstå Sun Microsystems, Trondheim, Norway Submission ID: 860

Accessing Your Database with JMP 10 JMP Discovery Conference 2012 Brian Corcoran SAS Institute

AVALANCHE MC 5.3 AND DATABASE MANAGEMENT SYSTEMS

Short notes on webpage programming languages

Module 4 Creation and Management of Databases Using CDS/ISIS

System requirements. Java SE Runtime Environment(JRE) 7 (32bit) Java SE Runtime Environment(JRE) 6 (64bit) Java SE Runtime Environment(JRE) 7 (64bit)

iservdb The database closest to you IDEAS Institute

AS/400 System Overview

Consolidate by Migrating Your Databases to Oracle Database 11g. Fred Louis Enterprise Architect

Demystified CONTENTS Acknowledgments xvii Introduction xix CHAPTER 1 Database Fundamentals CHAPTER 2 Exploring Relational Database Components

Overview of Database Management Systems

For Course Details, visit:

Rocket AS v6.3. Benefits of upgrading

A Database Re-engineering Workbench

Chapter 1 Databases and Database Users

Web Development Frameworks

Database System Concepts, Implementations and Organizations-A Detailed Survey

A Multidatabase System as 4-Tiered Client-Server Distributed Heterogeneous Database System

Copyright 2011 Pearson Education, Inc. Publishing as Pearson Addison-Wesley. Chapter 1 Outline

Transcription:

Introductory Concepts 5DV119 Introduction to Database Management Umeå University Department of Computing Science Stephen J. Hegner hegner@cs.umu.se http://www.cs.umu.se/~hegner Introductory Concepts 20150117 Slide 1 of 15

Three Types of Information Systems Information-retrieval systems (IR): Search large bodies of information which are not specifically formatted as formal data bases. Web search engine Keyword search of a text base Typically read-only Database management systems (DBMS): Relatively small schema Large body of homogeneous data Minor or no deductive capability Extensive formal update capability Shared use for both read and write Knowledge-base systems (KBS): Relatively small body of heterogeneous information Significant deductive capability Typical use: support of an intelligent application Introductory Concepts 20150117 Slide 2 of 15

Variations of the DBMS Model Data warehouses: Data are relatively static (few updates) Emphasis upon complex retrieval and computation Traditional database systems with structured data: Geographic database systems Support for multimedia content Support for XML content To study these models, it is necessary to have an understanding of the basic models first. In this course, only traditional DBMSs will be studied. These variations will not be considered. Introductory Concepts 20150117 Slide 3 of 15

Key Issues for Database-Management Systems Efficiency issues: Databases can be very large. Efficient access must be provided even for very large databases. Simplicity issues: Many potential users are not sophisticated programmers. Simple means of access must be available. Complex application programs require complex access. Means of more sophisticated access must also be available. Multi-user issues: Concurrency: Simultaneous access to the database by several users. Access via views: Limited windows through which the appropriate part of the database is viewed. Authorization: Custom, assigned access privileges for each user. Robustness issues: Deadlock and livelock must be avoided. A means of recovery from crashes, with minimal loss of data, must be available. Introductory Concepts 20150117 Slide 4 of 15

The Evolution of Data Models Model Development Use Properties Analogy File-management 1950s 1970s 1950s - Navigational 1950s 1960s 1960s - Relational 1970s - Late 1980s - Object-oriented 1980s - 1990s - Object-relational 1980s 1990s - Semi-structured 1990 s 2000 s - Low-level interaction. No data independence. Some data independence, but the model invites dependence. Requires procedural queries. Simple, easy to use for non-experts. Strong data independence. Standard nonprocedural query language (SQL). Excellent implementations exist. Limited expressive capability. Powerful expressive capability, but require substantial expertise for use. Popular in niche applications. Standardization not imminent. Attempt to integrate the simplicity of the relational model with the advanced features of the object-oriented approach. The most recent SQL standard, as well as many commercial systems, embody such features. Attempt to integrate data management with markup languages, principally via XML. Assembly language Procedural languages Declarative languages Object-oriented languages?? Introductory Concepts 20150117 Slide 5 of 15

Focus of the Course The course focuses upon the relational model for the following reasons: The relational model is by far the most widely used. It is not suitable for all applications, but there are many for which it is. The relational model provides a flexible interface which has components appropriate for users at all levels. A standard query language, SQL, is used with virtually all relational database systems. Thus, applications have a high degree of portability. The relational model provides strong data independence: the external product is relatively independent of the internal implementation. Introductory Concepts 20150117 Slide 6 of 15

Multi-User Relational Database Systems Open-Source Systems: PostgreSQL: The most comprehensive open-source relational DBMS. MySQL / MariaDB: Popular relational DBMSs for small systems. Widely used to support Web-based applications. HyperSQL: An efficient DBMS written in Java. The default DBMS bundled with OpenOffice.org SQLite: A compact DBMS written in C. The default DBMS bundled with LibreOffice. The big three commercial relational DBMSs: Oracle Database: IBM DB2: Microsoft SQL Server: (Windows only!) Another commercial relational DBMS of interest: Mimer SQL: Oriented towards embedded systems; based in Uppsala. The commercial systems listed have limited free versions. All except SQL Server run on many platforms, including Linux. Links may be found on the course Web page. Introductory Concepts 20150117 Slide 7 of 15

Single-User Relational Database Systems Microsoft Access: The original PC DBMS for Windows. Part of the Microsoft Office bundle. It will cost you $$$,, or SeKSeKSeK. Even if you have a DreamSpark Premium (formerly MSDNAA) account, you cannot get MS Access for free. Runs only under MS Windows, of course. Support for SQL is not as extensive as in multi-user systems. No real support for transactions. Kexi: Microsoft Access for Linux Built-in SQLite-based DB server. Can also use other servers such as PostgreSQL and MySQL. Not as mature a product as MS Access.... but it is open source and free (LGPL). Can also be compiled for other systems. A link may be found on the course Web page. Introductory Concepts 20150117 Slide 8 of 15

Database Systems to be Used in this Course Both PostgreSQL and MySQL will be used as instructional systems. Students will receive at least one database for each on the DB servers of the department. If you have your own computer, each is easy to install under Linux, MS Windows, and Mac OS. Some pointers for installation under Linux will be given later in the course. All SQL and ODBC submissions for obligatory exercises should run under both. You are free to (and encouraged to) try other DBMSs as well, but they will not be used in the course. Introductory Concepts 20150117 Slide 9 of 15

Database Access Models SQL is the standard query language for the relational model. There are several access models which are built around SQL. Direct SQL: Write and send SQL queries directly to the database system. Hosting SQL within a programming language. Both approaches will be considered in this course. In the hosting approach, a framework known as ODBC (Open Database Connectivity) will be used. In ODBC, special statements to communicate with databases are used in a host programming language. ODBC works in principle with a variety of programming languages. In this course, both C and Python will be used as host languages. These languages are very different, and so the ODBC usage is quite different as well. Even students who know C but not Python may find it easier to learn enough Python to use it instead of C for the exercises. Introductory Concepts 20150117 Slide 10 of 15

Database System Architecture The earliest database systems used a one-level architecture. The user interacted directly with the storage model. Analogy: assembly-language programming Disadvantages: Impossible to use for non-experts. Difficult to use and error-prone even for experts. Evolution of storage model, or migration to a new architecture, requires a total rebuild of all application programs. For this reason, multi-level architectures were introduced and implemented. Introductory Concepts 20150117 Slide 11 of 15

The Two-Level Architecture In the two-level architecture, the model for internal storage is distinct from the model which the applications (users) see. Advantages: The internal model and/or target architecture may be changed without requiring a rebuild of applications. Analogy: A high-level programming language. Disadvantages: All applications see a common external model. App 1 App 2 App k External Data Model Internal Storage Model Internal/ External mapping Introductory Concepts 20150117 Slide 12 of 15

The Three-Level Architecture In the ANSI/SPARC three-level architecture, there is an additional conceptual model which separates the internal and external models. Additional advantages: Multiple external models may be supported. New external models may be introduced without requiring a new interface to the storage model. Disadvantages: This model is unfortunately not seen in real systems. It is a design ideal. App 11 App 1k1 App n1 App nkn External Data Model 1 Conceptual/ External mappings Conceptual Data Model Internal Storage Model Internal/ Conceptual mapping External Data Model n Introductory Concepts 20150117 Slide 13 of 15

Data Independence Data independence refers to the idea that a more internal level of a database system may be re-engineered, or moved to a different architecture, without requiring a total rebuild of the more external layers. The ANSI/SPARC architecture provides two levels of data independence. It is often, however, something of an ideal, even with the systems of today. Usually, in a relational system, both the conceptual schema and the external schemata are relational. Still, the conceptual schema is often designed using a more general tool than the relational model. Introductory Concepts 20150117 Slide 14 of 15

Some Remarks on Terminology and Pronunciation Database vs. Database (Management) System: A database is a (usually structured) collection of data. A database system or database management system (DBMS) is a system for managing databases. In the popular literature, the word database is sometimes used as a synonym for DBMS. This terminology is confusing and its use is to be discouraged. MySQL and PostgreSQL are DBMSs, not databases! Calling a DBMS a database is akin to calling JDK a Java program. Pronunciation of SQL: In research circles, it is usually pronounced as the three letters S-Q-L. In trade groups, SQL is sometimes pronounced as See-Quel. This can lead to confusion with the older language SEQUEL, which also has that pronunciation. Introductory Concepts 20150117 Slide 15 of 15