cpt-s 580-06 advanced databases 11 yinghui wu eme 49

Download CPT-S 580-06 Advanced Databases 11 Yinghui Wu EME 49

If you can't read please download the document

Upload: louise-bailey

Post on 17-Jan-2018

216 views

Category:

Documents


0 download

DESCRIPTION

3 Motivation This course let you get familiar with current development in database research We discuss problems/topics in advanced database research, and introduce solutions –New and currently making their way into database management systems and applications –not yet fully developed and open problems Outcome: possible starting points for your research project, master and PhD thesis, technique report –Get you prepared for positions in academia and industry

TRANSCRIPT

CPT-S Advanced Databases 11 Yinghui Wu EME 49 2 Welcome! Instructor: Yinghui Wu Office: EME 49 Office hour: Wed/Fri (1PM to 3PM) or by appointment Course website: TBF 3 Motivation This course let you get familiar with current development in database research We discuss problems/topics in advanced database research, and introduce solutions New and currently making their way into database management systems and applications not yet fully developed and open problems Outcome: possible starting points for your research project, master and PhD thesis, technique report Get you prepared for positions in academia and industry 4 Database concepts Database A database represents some aspect of the real world A database is a logically coherent collection of data with some inherent meaning. A database is designed, built, and populated with data for a specific purpose. It has an intended group of users and some preconceived applications in which these users are interested. Database Management System A database management system (DBMS) is a collection of programs that enables users to Define, Construct, Manipulate and Share a database. Database Management Systems Typical DBMS Functionality Define a particular database in terms of its data types, structures, and constraints Construct or Load the initial database contents on a secondary storage medium Manipulate the database: Retrieval: Querying, generating reports Modification: Insertions, deletions and updates to its content Accessing the database through Web applications Share a database allows multiple users and programs to access the database simultaneously Database Management System (DBMS) DBMS contains information about a particular enterprise Collection of interrelated data Set of programs to access the data An environment that is both convenient and efficient to use Database Applications: Banking: transactions; Airlines: reservations, schedules; Universities: registration, grades; Sales: customers, products, purchases Online retailers: order tracking, customized recommendations Manufacturing: production, inventory, orders, supply chain; Internet of Things Human resources: employee records, salaries, tax deductions GIS; scientific computing; Databases can be large and at any complexity. Databases touch all aspects of our lives File systems to manage data? Data redundancy and inconsistency Multiple file formats, duplication of information in different files Difficulty in accessing data Need to write a new program to carry out each new task Data isolation Multiple files and formats Integrity problems Integrity constraints (e.g., account balance > 0) become buried in program code rather than being stated explicitly Hard to add new constraints or change existing ones Atomicity of updates Failures may leave database in an inconsistent state with partial updates carried out Example: Transfer of funds from one account to another should either complete or not happen at all Concurrent access by multiple users Concurrent access needed for performance Uncontrolled concurrent accesses can lead to inconsistencies Example: Two people reading a balance (say 100) and updating it by withdrawing money (say 50 each) at the same time Security problems Hard to provide user access to some, but not all, data Database systems offer solutions to all the above problems File systems to manage data? 9 Basic concepts in Database Database concepts Data model A collection of concepts that can be used to describe the structure of a database Schema The description of a database is called the database schema, which is specified during database design and is expected not to change frequently The three-schema architecture Internal schema Conceptual schema External schema 10 Basic concepts in Database Database concepts Data independence: logical and physical Database languages DBMS languages Database interfaces Data modeling Conceptual Logical Physical Database design Normalization 11 Databases: a classification Logical organization of data Records-based database systems Object-oriented database systems Object-relational database systems Deductive/logic database systems Functional database systems Physical organization of data Centralized database systems Distributed database systems Homogeneous and heterogeneous Client-server database systems Mobile database systems 12 Databases: a classification Contents Symbolic databases Textual databases Multi-media databases Image databases Spatial databases Temporal databases Application domain Engineering databases Scientific databases Statistical databases Manufacturing databases Business 13 Data usage Operational databases Decision-support databases Data warehousing Data mining Tactical and planning databases Nature of data Structured databases Semi-structured (like XML data) Unstructured (like Web) Self modifiability Passive databases Active databases ( Triggers) Databases: a classification Yesterdays DBMS Landscape Database... DBMS Application Banking, SAP, " Server Disk" Yesterdays Data Structured data Centralized data Homogeneous data Small Cleaned Static 15 Yesterdays DBMS Hardware 16 Small main memory Disk-based systems Assumptions of yesterdays DBMSs Structured data with well-defined schema Capacity of main memory