Digital Notes on Database Management Systems B.Tech Ii Year
Total Page:16
File Type:pdf, Size:1020Kb
DIGITAL NOTES ON DATABASE MANAGEMENT SYSTEMS B.TECH II YEAR - II SEM (2020-21) DEPARTMENT OF INFORMATION TECHNOLOGY MALLA REDDY COLLEGE OF ENGINEERING & TECHNOLOGY (Autonomous Institution – UGC, Govt. of India) (Affiliated to JNTUH, Hyderabad, Approved by AICTE - Accredited by NBA & NAAC – ‘A’ Grade - ISO 9001:2015 Certified) Maisammaguda, Dhulapally (Post Via. Hakimpet), Secunderabad – 500100, Telangana State, INDIA. MALLA REDDY COLLEGE OF ENGINEERING & TECHNOLOGY DEPARTMENT OF INFORMATION TECHNOLOGY SYLLABUS II Year B. Tech. IT – II Sem L/T/P/ C 3/0/0/3 (R15A0509) DATABASE MANAGEMENT SYSTEMS Objectives: To Understand the basic concepts and the applications of database systems To Master the basics of SQL and construct queries using SQL To understand the relational database design principles To become familiar with the basic issues of transaction processing and concurrency control To become familiar with database storage structures and access techniques UNIT I: Database System Applications, Purpose of Database Systems, View of Data – Data Abstraction – Instances and Schemas – Data Models – the ER Model – Relational Model – Other Models – Database Languages – DDL – DML – database Access for applications Programs – Database Users and Administrator – Transaction Management – Database Architecture – Storage Manager – the Query Processor. Introduction to the Relational Model – Structure – Database Schema, Keys – Schema Diagrams. Database design and ER diagrams – ER Model - Entities, Attributes and Entity sets – Relationships and Relationship sets – ER Design Issues – Concept Design – Conceptual Design with relevant Examples. Relational Query Languages, Relational Operations. UNIT II: Relational Algebra – Selection and projection set operations – renaming – Joins – Division – Examples of Algebra overviews – Relational calculus – Tuple Relational Calculus (TRC) – Domain relational calculus (DRC). Overview of the SQL Query Language – Basic Structure of SQL Queries, Set Operations, Aggregate Functions – GROUPBY – HAVING, Nested Sub queries, Views, Triggers, Procedures. UNIT III: Normalization – Introduction, Non loss decomposition and functional dependencies, First, Second, and third normal forms – dependency preservation, Boyce/Codd normal form. Higher Normal Forms - Introduction, Multi-valued dependencies and Fourth normal form, Join dependencies and Fifth normal form UNIT IV: Transaction Concept- Transaction State- Implementation of Atomicity and Durability – Concurrent Executions – Serializability- Recoverability – Implementation of Isolation – Testing for serializability- Lock –Based Protocols – Timestamp Based Protocols- Validation- Based Protocols – Multiple Granularity. UNIT V: Recovery and Atomicity – Log – Based Recovery – Recovery with Concurrent Transactions – Check Points - Buffer Management – Failure with loss of nonvolatile storage-Advance Recovery systems- ARIES Algorithm, Remote Backup systems. File organization – various kinds of indexes - B+ Trees- Query Processing – Relational Query Optimization. TEXT BOOKS: 1. Database System Concepts, Silberschatz, Korth, McGraw hill, Sixth Edition.(All UNITS except III th) 2. Database Management Systems, Raghu Ramakrishnan, Johannes Gehrke, TATA McGrawHill 3rd Edition. REFERENCE BOOKS: 1. Fundamentals of Database Systems, Elmasri Navathe Pearson Education. 2. An Introduction to Database systems, C.J. Date, A.Kannan, S.Swami Nadhan, Pearson, Eight Edition for UNIT III. Outcomes: Demonstrate the basic elements of a relational database management system Ability to identify the data models for relevant problems Ability to design entity relationship and convert entity relationship diagrams into RDBMS and formulate SQL queries on the respect data Apply normalization for the development of application software’s MALLA REDDY COLLEGE OF ENGINEERING & TECHNOLOGY DEPARTMENT OF INFORMATION TECHNOLOGY INDEX S. No Unit Topic Page no INTRODUCTION TO DATABASE 1 I MANAGEMENT SYSTEM 1 2 I VIEW OF DATA 2 3 I DATABASE MODELS 4 4 I DATABASE LANGUAGES 8 5 I DATABASE ARCHITECTURE 11 II RELATIONAL ALGEBRA AND CALCULUS 6 22 7 II SQL 27 8 II AGGREGATE FUNCTIONS 30 9 II NESTED QUERIES 33 10 II VIEWS 36 11 III NORMAL FORMS 39 DEPENDENCY PRESERVATION 12 III 44 DECOMPOSITION 13 IV TRANSACTION 53 14 IV SERIALIZABILITY 57 15 IV LOCK-BASED PROTOCOLS 59 16 IV MULTIPLE GRANUALARITY 62 17 V RECOVERY AND ATOMOCITY 63 18 V BUFFER MANAGEMENT SYSTEM 65 19 V FILE ORGANIZATION 68 20 V B+ TREES 73 UNIT-1 Introduction to Database Management System The database is a collection of inter-related data which is used to retrieve, insert and delete the data efficiently. It is also used to organize the data in the form of a table, schema, views, and reports, etc. For example: The college Database organizes the data about the admin, staff, students and faculty etc. Using the database, you can easily retrieve, insert, and delete the information. Database Management System o Database management system is a software which is used to manage the database. For example: MySQL, Oracle, etc are a very popular commercial database which is used in different applications. o DBMS provides an interface to perform various operations like database creation, storing data in it, updating data, creating a table in the database and a lot more. o It provides protection and security to the database. In the case of multiple users, it also maintains data consistency. Characteristics of DBMS o It uses a digital repository established on a server to store and manage the information. o It can provide a clear and logical view of the process that manipulates data. o DBMS contains automatic backup and recovery procedures. o It contains ACID properties which maintain data in a healthy state in case of failure. o It can reduce the complex relationship between data. o It is used to support manipulation and processing of data. o It is used to provide security of data. o It can view the database from different viewpoints according to the requirements of the user. Advantages of DBMS o Controls database redundancy: It can control data redundancy because it stores all the data in one single database file and that recorded data is placed in the database. o Data sharing: In DBMS, the authorized users of an organization can share the data among multiple users. o Easily Maintenance: It can be easily maintainable due to the centralized nature of the database system. o Reduce time: It reduces development time and maintenance need. o Backup: It provides backup and recovery subsystems which create automatic backup of data from hardware and software failures and restores the data if required. [Database Management System] Page 1 o multiple user interface: It provides different types of user interfaces like graphical user interfaces, application program interfaces Disadvantages of DBMS o Cost of Hardware and Software: It requires a high speed of data processor and large memory size to run DBMS software. o Size: It occupies a large space of disks and large memory to run them efficiently. o Complexity: Database system creates additional complexity and requirements. o Higher impact of failure: Failure is highly impacted the database because in most of the organization, all the data stored in a single database and if the database is damaged due to electric failure or database corruption then the data may be lost forever. DBMS VS FILES DBMS File System DBMS is a collection of data. In DBMS, File system is a collection of data. In this the user is not required to write the system, the user has to write the procedures procedures. for managing the database. DBMS gives an abstract view of data that File system provides the detail of the data hides the details. representation and storage of data. File system doesn't have a crash DBMS provides a crash recovery mechanism, i.e., if the system crashes while mechanism, i.e., DBMS protects the user entering some data, then the content of the from the system failure. file will lost. DBMS provides a good protection It is very difficult to protect a file under mechanism. the file system. DBMS contains a wide variety of File system can't efficiently store and sophisticated techniques to store and retrieve retrieve the data. the data. In the File system, concurrent access has DBMS takes care of Concurrent access of many problems like redirecting the file data using some form of locking. while other deleting some information or updating some information. View of Data in DBMS Abstraction is one of the main features of database systems. Hiding irrelevant details from user and providing abstract view of data to users, helps in easy and efficient user-database interaction. In the previous tutorial, we discussed the three level of DBMS architecture, The top level of that architecture is “view level”. The view level provides the “view of data” to the users and hides the irrelevant details such as data relationship, database schema, constraints, security etc from the user. [Database Management System] Page 2 Data Abstraction in DBMS Database systems are made-up of complex data structures. To ease the user interaction with database, the developers hide internal irrelevant details from users. This process of hiding irrelevant details from user is called data abstraction. We have three levels of abstraction: Physical level: This is the lowest level of data abstraction. It describes how data is actually stored in database. You can get the complex data structure details at this level. Logical level: This is the middle level of 3-level data abstraction