SlideShare a Scribd company logo
Overview of Oracle Database

 Lee, JeongKyu (jelee@bridgeport.edu)
Part 1. Introduction to Database System


  Introduction to Database


  History of RDBMS


  Entity-Relationship Modeling

  Database Language
Introduction to Database

   File-Based Approach
      Each program defines and manages its own data
      Limitation
            Separation and isolation of data
            Duplication of data
            Data dependence
            Incompatibility of files
            Fixed queries/proliferation of application program

   Database Approach
      A shared collection of logically related data, designed
       to meet the information needs of an organization
   Database Management System(DBMS)
      A software system that enables users to define, create and
       maintain the database and provides controlled access to
       database
          DDL
          DML : procedural, non-procedural
          Control : security, integrity, concurrency control,
                   recovery control, user-accessible catalog




   Components of the DBMS Environment
      Hardware - Software - Data - Procedures - People
   Advantages of DBMS
     - Control of data redundancy - Economy of scale
     - Data consistency            - Balance of conflicting requirements
     - More information from the same amount of data
     - Sharing of data             - Improved data accessibility and
         responsiveness
     - Improved data integrity     - Increased productivity
     - Improved security           - Improved maintenance through data
         independence
     - Enforcement of standards    - Increased concurrency
                                   - Improved backup and recovery services

   Disadvantages of DBMS
     - Complexity, Size, Cost of DBMSs, Additional H/W costs
     - Cost of conversion, Performance, Higher impact of a failure
   Three-Level Database Architecture
      External Level
         The users’ view of the database

      Conceptual Level
         The community view of the database

      Internal Level
         The physical representation of the database on the computer
   Functions of a DBMS
     1. Data storage, retrieval, and update
     2. A user-accessible catalog
     3. Transaction support
     4. Concurrency control services
     5. Recovery services
     6. Authorization services
     7. Support for data communication
     8. Integrity services
     9. Services to promote data independence
     10. Utility services
   Components of a DBMS
     Programmers     Users               DBA
     Application                       Database
                    Queries
      Programs                         Schema


        DML          Query               DDL       DBMS
     preprocessor   processor          compiler


       Program      Database          Dictionary
      object code   manager            manager


        Access        File
       methods      manager


       System                   Database and
        buffers                 system catalog
   Components of Database Manager


                    Authorization
                       control


        Integrity    Command          Query
        checker      processor       optimizer


                    Transaction
                                     Scheduler
                      manager

                                                 Data
                       Buffer        Recovery
                                                 Manager
                      manager        manager
History of RDBMS

   History of DBMS
      1960s - Apollo moon-landing project, GUAM
      mid 1960s - IMS by IBM (hierarchical DBMS)
      mid 1960s - IDS by GE (network DBMS)
      1965 - CODASYL(Conference on Data SYStems
       Language)
      1967 -DBTG(Data Base Task Group)
      1970 - E.F.Codd of the IBM Research Lab.
      Late 1970s - System R project at IBM
      1980s - commercial relational DBMS(DB2, Oracle,
        Informix..)
      Now - OODBMS, ORDBMS
   Terminology
      Relation : a relation is a table with columns and rows
      Attribute : an attribute is a named column of a relation
      Domain : a domain is the set of allowable values for
       one or more attributes
      Tuple : a tuple is a row of a relation
      Degree : the degree of a relation is the number of
       attributes it contrains
      Cardinality : the cardinality of a relation is the number
       of tuples it contains
      Relational database : a collection of normalized
       relation
   Properties of Relations
      The relation has a name that is distinct from all other
       relation names
      Each cell of the relation contains exactly on atomic
       value
      Each attribute has a distinct name
      The values of an attribute are all from the same domain
      The order of attributes has no significance
      Each tuple is distinct; there are no duplicate tuples
      The order of tuples has no significance, theoretically
   When is a DBMS Relational?
      Foundational rules
         Rule 0 : Foundational rule Rule 12 : Nonsubversion rule

      Structural rules
         Rule 1 : Information representation       Rule 6 : View updateing

      Integrity rules
         Rule 3 : Systematic treatment of null values               Rule 10 : Integrity independance

      Data manipulation rules
         Rule2 : Guaranteed access                 Rule 4 : Dynamic online catalog based on the
                                                            relational model
         Rule5 : Comprehensive data sublanguage         Rule7 : High-level insert, update, delete

      Data independence rules
         Rule8 : Physical data independence        Rule 9 : Logical data independence
         Rule11 : Distribution independence
Entity-Relationship Modeling

   Concepts of the E-R Modeling
      Entity Types
        An object or concept that is identified by the enterprise as having an
        independent existence
      Attributes
        A property of an entity or a relationship type
      Relationship Types
        A meaningful association among entity types
   Normalization
      A technique for producing a set of relations with desirable
       properties, given the data requirements of an enterprise
      UNF is a table that contains one or more repeating groups
      1NF is a relation in which the intersection of each row and column contains one
         and only one value

      2NF is a relation that is in 1NF and every non-primary-key attribute is fully
         functionally dependent on the primary key.

      3NF is a relation that is in 1NF, 2NF in which no non-primary-key attribute is
         transitively dependent on the primary key

      BCNF is a relation in which every determinant is a candidate key
      4NF is a relation that is in BCNF and contains no trivial multi-valued
         dependency

      5NF is a relation that contains no join dependency
   Conceptual Database Design
      The process of constructing a model of the information
       used in an enterprise, independent of all physical
       considerations
 Logical Database Design
      The process of constructing a model of the information
       used in an enterprise based on a specific data model,
       but independent of a particular DBMS and other
       physical considerations.
   Physical Database Design
      The process of producing a description of the
       implementation of the database on secondary storage;
       it describes the storage structures and access
       methods used to archieve efficient access to the data
Database Language

   SQL
      1974 - SEQUEL by D.Chamberlin (IBM)
      1975 - SQUARE by Boyce (System R project)
      1976 - SEQUEL/2 (SQL) by Chamberlin and Boyce)
      late 1970 - SQL(Oracle), QUEL(Ingres)
      1982 - Relational Database Language(RDL) : ANSI
      1987 - ISO standard
      1989 - Integrity Enhancement Feature (ISO)
      1992 - SQL2(SQL92) : ISO
   DML
      SELECT
      INSERT
      UPDATE
      DELETE
   DDL
      CREATE(DROP) SCHEMA
      CREATE(ALTER, DROP) DOMAIN
      CREATE(ALTER, DROP) TABLE
      CREATE(DROP) VIEW
      CREATE(DROP) INDEX
   Advanced SQL
      View
      Integrity Enhancement Feature
          Primary key
          Unique
          Foreign key
      Access Control
      Embedded SQL
      Host Language Variables
      Application Programming Interface
      Dynamic SQL
Part 2. Understanding Oracle Database


  Overview of oracle Database Architecture

  Memory Structure

  Process Structure

  Storage Structure

  New Features
Overview of Oracle Architecture

PMON     SMON       RECO      D000          S000      P000     * Total SGA Size :
                                                                    1700 Mbyte
                                                               * Fixed Size :
                                                   Redo Log            70 Kbyte
                           SGA                      Buffer
  Shared SQL Area     Database Buffer Cashe
                                                               * Variavle Size :
                                                                     490 MByte


                                                                       TL-812
  4,000,000 KByte     1,200,000 KByte          2,100 KByte


                      DBW0            CKPT            LGWR
  Server
                             Data File
                               Raw Device                                ARCH
       USER
                                                              Archive Log Mode(50M)
Memory Structure : Shared Pool

          Shared Pool                      Shared Pool Contents
                                          - Text of the SQL or PL/SQL statement
Library Cache         Dictionary
                      Cache               - Parsed form of the SQL or PL/SQL statement
                                          - Execution plan for the SQL or PL/SQL
    Shared
                                            statements
   SQL Area
                                          - Data dictionary cache containing rows of data
                                            dictionary information
                     Control Structures
                     for example:            Library Cache
PL/SQL Procedures                         - shared SQL area
                     Character Set
and Package          Conversion           - private SQL area
                     Memory
                     Network Security     - PL/SQL procedures and package
                     Attributes
Control Structures                        - control structures : lock and library cache handles
for examples;        and so on ..
                                             Dictionary Cache
Locks
Library                                   - names of all tables and views in the database
Cache handles         Reusable
and so on ...         Runtime             - names and datatypes of columns in database tables
                      Memory              - privileges of all Oracle users
                                             SHARED_POOL_SIZE
Memory Structure :Database Buffer Cache

 Database Buffer Cache holds copies of data blocks read from disk
 All users concurrently connected to the system share access to the buffer cache
 Dirty List
 LRU List
 Size = DB_BLOCK_SIZE * DB_BLOCK_BUFFERS




                SGA                  Database Buffer Cache
               Shared Pool

                   Shared SQL Area
Memory Structure :Redo Log Buffer

   Circular buffer containing information about changes made to the database
   save it redo entry
   Redo Entries is used when Database Recovery
   DBWR write contents of Redo Log Buffer to Online Redo Log
   LOG_BUFFER



                                                           change vector #1
         redo record
                                                           change vector #1

                                                           change vector #1
Oracle Processes

       SNPn       SMON          PMON            RECO              LCK0


       Pnnn
                                          SGA
                    Database Buffer Cache               Redo Log
                                                         Buffer
                                                                                    Offline
                                                                                    Storage
                                                                                    Device
               Dedicated
        Snnn     Server
                Process
                                DBWR              LGWR                   ARCH

Dnnn
                       User
                      Process            CKPT

                                                                                Control
                                                                                 Files
Users                                                  Redo Log
                                 Data                    Files
                                 Files
Background Process

   DBWR (Database Writer)
    - write all dirty buffers to datafiles
    - Use a LRU algorithm to keep most recently used blocks in memory
    - Defers write for I/O optimization
         dirty list reaches a threshold length
         A process scnas a specifed number of buffer in the LRU without finding free buffer
         A time-out occurs
         DBWR checkpoint occurs

   LGWR (Log Writer)
    - writes redo log entries to disk
         Commit occurs
         The redo log buffers pool becomes one-third full
         DBWR completes cleaning the buffer blocks at a checkpoint
         LGWR time-out
    - A commit confirmation is not issued until the tx has been recorded in the rego
     log file
Cont’d

   PMON (Process Monitor)
    - Cleans up abnormally terminated connection
    - Rolls back uncommited transactions
    - Releases locks held by a terminated process
    - Frees SGA resources allocated to the failed processes
    - Database maintenance


   SMON (System Monitor)
    - Performs automatic instance recovery
    - Reclaims space used by temporary segments no longer in use
    - Merges contiguous area of free space in the datafile
Cont’d

   CKPT (Check Point)
    - is enabled by setting the parameter CHECKPOINT_PROCESS=TRUE
    - If enabled, take over LGWR’s task of updating files at a checkpoint
    - Updates header of datafiles and control files at the end of checkpoint
    - More frequent checkpoint reduce recovery time from instance failure
    - CKPT improve the performance of database with many database files
   ARCH (Archiver)
    - Copies redo log files to tape or disk for media failure
    - Operates only when a log switch occurs
    - Is optional and is only needed when in ARCHIVELOG mode
    - May write to a tape drive or to a disk
   LCKn (Lock), Dnnn (Dispatcher), Snnn (Server),
    RECO (Recover), Pnnn(Parallel), SNPn(Job Queue),
    QMNn(Queue Monitor),
Server/User Process

   User Processes
    - A user process is used when a user runs an application program
    - Runs the tool/application and is considered the client
    - Passes SQL to the server process and receives the results


   Server Processes
    - A server process must place the data in the database buffer cache
    - Parce and execute SQL statements
    - Read data blocks from disk into the shred database buffers of the SGA
    - Return the results of SQL statements to the user process
        Parse : check syntax, security access, object resolution, optimization
        Execute : applies the parse tree to the data, perform a physical read and
          change
        Fetch : Passes data to the user (only SELECT)
Oracle Files

   Datafile
   Redo Log Files
   Control Files
   Parameter File
   Archive File
   Log File (alert*.log, sqlnet.log, listener.log...)
   Trace File
Storage Architecture

    Physical storage structures
       Data files
       Segments
       Extents
       Blocks
    Logical storage structures
       Tablespaces
       Tables / Clusters / Indexes
       Rows
       Columns
Physical Storage Architecture
   Relationship among Segments, Extents, and Blocks


                Segment
                   96K


                Extent        Extent
                  24K            72K            2K
                                                2K
                         2K       2K   2K       2K
                         2K       2K   2K       2K
                         2K       2K   2K       2K
                         2K       2K   2K       2K
                         2K       2K   2K       2K
                         2K       2K   2K       2K
                         2K       2K   2K       2K
                         2K       2K   2K       2K
                         2K       2K   2K       2K
                         2K       2K   2K       2K



                              Database Blocks
Logical Storage Architecture

   Relationship between tablespaces and datafiles



       Database

        System Tablespace        USER Tablespace



         DATA1.ORA   DATA2.ORA
                                     DATA3.ORA
Cont’d
   Objects stored in tablespaces


    Tablespace (one or more datafiles)



          Table                                Table                     INDEX

          INDEX                 INDEX                  INDEX             INDEX
                                INDEX                  INDEX
          INDEX                                                            Table
                                INDEX                  INDEX


             Database Files                              Objects
             (Physical structures associated             (stored in tablespace may
             with only one tablespace)                   span serveral datafiles)
Block


         Header        General Block Information
    Table Dictionary   (Block add, Segment type)
    Row Dictionary     85 ~ 100 bytes

        Free Space     Table info in Cluster


                       Row info in Block
                       (2 byte per row)

        Row Data
                       using when New Row
                       Insert or Update
                       (pctfree, pctused)

                       Table or Index Data
PCTFREE / PCTUSED
        PCTFREE                        PCTUSED



         20% Free space

                                      61% Free space




           PCTFREE = 20                   PCTUSED = 40

 Insert new row until 80%    Can insert new row when below 60%
                              When Usage is below 40% (61% Free
 20% use when Update          space), block is listed in FREELIST
Extent

A   set of contiguous database blocks within a datafile.
 Extent are    allocated when.
 - The segment is created (INITIAL EXTENT)
 - The segments grows (NEXT EXTENT)
 - The table is altered to allocate extents.

 Extent are    de-allocated when the
 - The segment is dropped and truncated.
 - The segment is larger than optimal and contains free extents
  (for rollback segments only)

 Each   segment is created with at least on extend( initial extent )
 ( Rollback segment : 2)

 ALTER      TABLE table_name DEALLOCATE UNUSED
Segment

   a set of one or more extents that contains all the data for a specific type of logical storage
    structure within a tablespace
   Data Segment
    - A collection of extents that holds all of the data for a table or a cluster
   Index Segment
    - A collection of extents that holds all of the index data for search optimization on large tables
    and clusters
   Rollback Segment
    - A collection of extents that holds rollback data for rollback, read-consistency, or recovery
   Temporary segment
    - A collection of extents that holds data belonging to temporary tables created during a sort
    operation
   Bootstrap segment
    - An extent that contains dictionary definitions for dictionary tables to be loaded when the
    database is opened.
Oracle8 New Feature

VLDB, Warehouse              OLTP
Parallel DML                 Advanced Queuing
Parallel Index Scans         XA rewrite
Star Query Optimization      Memory reduction
Partitioning                 Serially reusable memory
Parallel Backup/Recovery     New OCI Interface
Incremental Backup           Improve Function Performance
Point-in-time Recovery
Objects                      Network Computing
Object Relational Database   Simple User Integration
Object Type                  Simple Maintenance
Object View                  Simple Development
Oracle8i New Features

    Data Warehousing                      OLTP
 Summary management                   Publish and subscribe capabilities
 Analytic function                    Database event trigger

 Hash and Composite Paritioning       Single table hash cluster

 Resource Management                  Object type column in partition table

 Transportable tablespace             Partitioned index-organized table

 Functional index, virtual column     Stable optimizer execution plans


Application Development                   Security
 Oracle Jserver, VM in Database       Virtual Private Database
 Java stored procedure, function..    LDAP integration

 SQLJ: embedded SQL in Java           N-tier authentication/authorization

 WebDB                                SSL and X.509v3, RAIDUS support

                                       Data encrypt, decrypt
Oracle 9i - The eBusiness Platform

 Oracle9i continues Oracle8i's focus on the Internet by providing a series of
    specific capabilities and product bundles targeted at eBusiness environments. In
    addition, Oracle9i continues to add features and capabilities that extends existing
    investment in mission-critical infrastructure. Oracle9i has been designed with
    focus on certain key development areas.



 Key Infrastructure Area                           Key Application Area
 Availability                                       Internet Contents Management
   Scalability and Performance                      B2B and B2C eBusiness
   Security                                         Packaged Application
   Development Platform                             Business Intelligence
   Manageability
 Windows2000 Integration
Oracle Client/Server Architecture


                                NETWORK


  Client                                                           Server b
Application

  Client/Server                                            Server/Server



                                 Server A
 Benefit of Client/Server Component
  - Database S/W work on Server              - Only Server upgrade to increase size
  - Minimize network resource                - Minimize Client H/W spec
  - concurrency, consistency, transparency   - concurrency, consistency, transparency
SQL*Net

   What is SQL*Net?
    - Oracle’s Client/Server middleware product
    - transparent connection from client tool to DB ( from on DB to another )
    - works across multiple network protocol and operation system
   What is TNS?
    - Transparent Network Substrate
    - Oracle’s Network applications to access the underlying network protocols transparently
    - TNS-based application, Oracle Protocol Adapters, Network software like TCP/IP
   Configuration File
    - TNSNAME.ORA        ( Client )
    - TNSNAV.ORA ( Client )
    - SQLNET.ORA ( Client, Server )
    - LISTENER.ORA ( Server )
SQL*Net Configuration

   TNSNAME.ORA                   LISTENER.ORA
info =                         LISTENER=
 (DESCRIPTION=                 (ADDRESS_LIST=
     (ADDRESS_LIST=
                               (ADDRESS=
         (ADDRESS=
                                 (PROTOCOL=tcp)
            (PROTOCOL=tcp)
            (HOST=brinfoa01)     (HOST=brinfoa01)
            (PORT=1521)          (PORT=1521)
          )                    )
      )                        )
   (CONNECT_DATA=              SID_LIST_LISTENER=
        (SID=BRBINFO1)              (SID_LIST=
   )                                (SID_DESC=
 )                                  (SID_NAME=BRBINFO1)
                                    (ORACLE_HOME=/oracle7/oracle7)
                                    (ENVS='EPC_DISABLED=TRUE')
                                    )
                                    )
   SQLNET.ORA                 STARTUP_WAIT_TIME_LISTENER=0
# SQLNET.EXPIRE_TIME = 0       CONNECT_TIMEOUT_LISTENER=0
                               LOG_DIRECTORY_LISTENER=/oracle7/oracle7/network/log
SQLNET.AUTHENTICATION_S
                               LOG_FILE_LISTENER=listener
  ERVICES=(none, beq)
                               TRACE_LEVEL_LISTENER=OFF
Net8

Networking Challenge
   Support large mission-critical
    client/server, and provide migration
    path towards distributed object
    architecture


   Net8 Focus
     1. Scalability : Connection Pooling, Multiplexing(Connection Manager)
     2. Manageability : Configuration-free installation option,
        Centralized client administration, Automated client configuration
     3. Security : Oracle Security Server
ODBC / oo4o / JDBC

 ODBC (Open Database Connectivity )
 - Provide a way for client program (eg VB, Excel, Access) to access database
 - is a standardized API, developed according to the specification of the SQL
  Access Group, than allows one to connect to SQL database

 oo4o (Oracle Object for OLE)
 - a middleware product manufactured by Oracle that allows native access to Oracle7
  databases from client applications via the Microsoft OLE standard
 - OLE 2.0 Automation Server, Oracle Data Control, Two C++ Class Library

 JDBC (Java Database Connectivity )
 - a set of classes and interfaces written in Java to allow other Java programs to send
  SQL statements to a relational database management system
 - JDBC Thin for Java applets, JDBC OCI for Java application

More Related Content

PDF
Navigating the Transition from relational to NoSQL - CloudCon Expo 2012
Dipti Borkar
 
PDF
Transition from relational to NoSQL Philly DAMA Day
Dipti Borkar
 
PDF
Introduction to NoSQL and Couchbase
Dipti Borkar
 
PDF
oracle intro
Rinki Soni
 
PDF
MongoDB on Windows Azure
Jeremy Taylor
 
PDF
MongoDB on Windows Azure
Jeremy Taylor
 
PPT
VNSISPL_DBMS_Concepts_appA
sriprasoon
 
PDF
CSC1100 - Chapter08 - Database Management
Yhal Htet Aung
 
Navigating the Transition from relational to NoSQL - CloudCon Expo 2012
Dipti Borkar
 
Transition from relational to NoSQL Philly DAMA Day
Dipti Borkar
 
Introduction to NoSQL and Couchbase
Dipti Borkar
 
oracle intro
Rinki Soni
 
MongoDB on Windows Azure
Jeremy Taylor
 
MongoDB on Windows Azure
Jeremy Taylor
 
VNSISPL_DBMS_Concepts_appA
sriprasoon
 
CSC1100 - Chapter08 - Database Management
Yhal Htet Aung
 

What's hot (20)

PPT
Vnsispl dbms concepts_ch1
sriprasoon
 
PDF
project report
Ranjan Sharan
 
PDF
How Apollo Group Evaluted MongoDB
Jeremy Taylor
 
PDF
Relational
dieover
 
PPT
ORACLE 9i
suniljoshi151
 
PPTX
Search Computing Overview
Search Computing
 
PDF
Sql server difference faqs- 6
Umar Ali
 
PDF
Accessioning-Based Metadata Extraction and Iterative Processing: Notes From t...
Mark Matienzo
 
PDF
Cidr11 paper32
jujukoko
 
PDF
"A Study of I/O and Virtualization Performance with a Search Engine based on ...
Lucidworks (Archived)
 
PPT
Chapter01 introduction
Ngeam Soly
 
PDF
Implementation of nosql for robotics
João Gabriel Lima
 
PDF
Mydb 2010 - AbhijeetKalsi
Abhijeet Kalsi
 
PPTX
Couchbase at the academic bisilim, Turkey
sharonyb
 
PDF
Characterization of hadoop jobs using unsupervised learning
João Gabriel Lima
 
PDF
New York City and Baltimore Semantic Web Meetups 20130221/20120226
3 Round Stones
 
PDF
A history and evaluation of system r
sugeladi
 
PPT
E force dnw rewrite-draft-v7-080607
Debjani Roy
 
Vnsispl dbms concepts_ch1
sriprasoon
 
project report
Ranjan Sharan
 
How Apollo Group Evaluted MongoDB
Jeremy Taylor
 
Relational
dieover
 
ORACLE 9i
suniljoshi151
 
Search Computing Overview
Search Computing
 
Sql server difference faqs- 6
Umar Ali
 
Accessioning-Based Metadata Extraction and Iterative Processing: Notes From t...
Mark Matienzo
 
Cidr11 paper32
jujukoko
 
"A Study of I/O and Virtualization Performance with a Search Engine based on ...
Lucidworks (Archived)
 
Chapter01 introduction
Ngeam Soly
 
Implementation of nosql for robotics
João Gabriel Lima
 
Mydb 2010 - AbhijeetKalsi
Abhijeet Kalsi
 
Couchbase at the academic bisilim, Turkey
sharonyb
 
Characterization of hadoop jobs using unsupervised learning
João Gabriel Lima
 
New York City and Baltimore Semantic Web Meetups 20130221/20120226
3 Round Stones
 
A history and evaluation of system r
sugeladi
 
E force dnw rewrite-draft-v7-080607
Debjani Roy
 
Ad

Similar to Lee oracle (20)

PPS
Overview of oracle database
Samar Prasad
 
PPS
Overview of oracle database
Samar Prasad
 
PPT
Oracle archi ppt
Hitesh Kumar Markam
 
PPTX
Ch 2-introduction to dbms
Rupali Rana
 
PPTX
PPT-UEU-Basis-Data-Pertemuan-1.pptx
UbaidURRahman78
 
DOCX
Database management system
RizwanHafeez
 
PDF
csedatabasemanagementsystemppt-170825044344.pdf
SameerKhanPathan7
 
PPTX
Database Management System ppt
OECLIB Odisha Electronics Control Library
 
PPTX
Database-management-system-dbms-ppt.pptx
AnmolThakur67
 
PPT
Introduction of database management system
anjanasharma77573
 
PPTX
Database Management System Part-1.pptx
ArshveerSinghDhillon
 
PPTX
Introduction to Database
Siti Ismail
 
PDF
database introductoin optimization1-app6891.pdf
parveen204931475
 
PPTX
Data Manipulation ppt. for BSIT students
julie4baxtii
 
PPT
data base manage ment
kaleemullah125
 
PPTX
DBMS.pptx
Dr. Thippeswamy S.
 
PPT
27 fcs157al2
CHANDRA BHUSHAN
 
PPTX
Introduction to Database (101) to Akashvani (202) const shortestPath = metroS...
airteltoairtelinfo
 
PPTX
System Analysis And Design
Lijo Stalin
 
Overview of oracle database
Samar Prasad
 
Overview of oracle database
Samar Prasad
 
Oracle archi ppt
Hitesh Kumar Markam
 
Ch 2-introduction to dbms
Rupali Rana
 
PPT-UEU-Basis-Data-Pertemuan-1.pptx
UbaidURRahman78
 
Database management system
RizwanHafeez
 
csedatabasemanagementsystemppt-170825044344.pdf
SameerKhanPathan7
 
Database Management System ppt
OECLIB Odisha Electronics Control Library
 
Database-management-system-dbms-ppt.pptx
AnmolThakur67
 
Introduction of database management system
anjanasharma77573
 
Database Management System Part-1.pptx
ArshveerSinghDhillon
 
Introduction to Database
Siti Ismail
 
database introductoin optimization1-app6891.pdf
parveen204931475
 
Data Manipulation ppt. for BSIT students
julie4baxtii
 
data base manage ment
kaleemullah125
 
27 fcs157al2
CHANDRA BHUSHAN
 
Introduction to Database (101) to Akashvani (202) const shortestPath = metroS...
airteltoairtelinfo
 
System Analysis And Design
Lijo Stalin
 
Ad

Recently uploaded (20)

PPT
L2 Rules of Netiquette in Empowerment technology
Archibal2
 
PDF
How-Cloud-Computing-Impacts-Businesses-in-2025-and-Beyond.pdf
Artjoker Software Development Company
 
PDF
Doc9.....................................
SofiaCollazos
 
PDF
Software Development Company | KodekX
KodekX
 
PPTX
New ThousandEyes Product Innovations: Cisco Live June 2025
ThousandEyes
 
PPTX
ChatGPT's Deck on The Enduring Legacy of Fax Machines
Greg Swan
 
PDF
The Evolution of KM Roles (Presented at Knowledge Summit Dublin 2025)
Enterprise Knowledge
 
PPTX
OA presentation.pptx OA presentation.pptx
pateldhruv002338
 
PDF
Advances in Ultra High Voltage (UHV) Transmission and Distribution Systems.pdf
Nabajyoti Banik
 
PPTX
Comunidade Salesforce São Paulo - Desmistificando o Omnistudio (Vlocity)
Francisco Vieira Júnior
 
PDF
This slide provides an overview Technology
mineshkharadi333
 
PPTX
What-is-the-World-Wide-Web -- Introduction
tonifi9488
 
PPTX
cloud computing vai.pptx for the project
vaibhavdobariyal79
 
PDF
Event Presentation Google Cloud Next Extended 2025
minhtrietgect
 
PDF
AI Unleashed - Shaping the Future -Starting Today - AIOUG Yatra 2025 - For Co...
Sandesh Rao
 
PDF
Revolutionize Operations with Intelligent IoT Monitoring and Control
Rejig Digital
 
PDF
REPORT: Heating appliances market in Poland 2024
SPIUG
 
PPTX
The-Ethical-Hackers-Imperative-Safeguarding-the-Digital-Frontier.pptx
sujalchauhan1305
 
PPT
Coupa-Kickoff-Meeting-Template presentai
annapureddyn
 
PDF
Unlocking the Future- AI Agents Meet Oracle Database 23ai - AIOUG Yatra 2025.pdf
Sandesh Rao
 
L2 Rules of Netiquette in Empowerment technology
Archibal2
 
How-Cloud-Computing-Impacts-Businesses-in-2025-and-Beyond.pdf
Artjoker Software Development Company
 
Doc9.....................................
SofiaCollazos
 
Software Development Company | KodekX
KodekX
 
New ThousandEyes Product Innovations: Cisco Live June 2025
ThousandEyes
 
ChatGPT's Deck on The Enduring Legacy of Fax Machines
Greg Swan
 
The Evolution of KM Roles (Presented at Knowledge Summit Dublin 2025)
Enterprise Knowledge
 
OA presentation.pptx OA presentation.pptx
pateldhruv002338
 
Advances in Ultra High Voltage (UHV) Transmission and Distribution Systems.pdf
Nabajyoti Banik
 
Comunidade Salesforce São Paulo - Desmistificando o Omnistudio (Vlocity)
Francisco Vieira Júnior
 
This slide provides an overview Technology
mineshkharadi333
 
What-is-the-World-Wide-Web -- Introduction
tonifi9488
 
cloud computing vai.pptx for the project
vaibhavdobariyal79
 
Event Presentation Google Cloud Next Extended 2025
minhtrietgect
 
AI Unleashed - Shaping the Future -Starting Today - AIOUG Yatra 2025 - For Co...
Sandesh Rao
 
Revolutionize Operations with Intelligent IoT Monitoring and Control
Rejig Digital
 
REPORT: Heating appliances market in Poland 2024
SPIUG
 
The-Ethical-Hackers-Imperative-Safeguarding-the-Digital-Frontier.pptx
sujalchauhan1305
 
Coupa-Kickoff-Meeting-Template presentai
annapureddyn
 
Unlocking the Future- AI Agents Meet Oracle Database 23ai - AIOUG Yatra 2025.pdf
Sandesh Rao
 

Lee oracle

  • 1. Overview of Oracle Database Lee, JeongKyu ([email protected])
  • 2. Part 1. Introduction to Database System  Introduction to Database  History of RDBMS  Entity-Relationship Modeling  Database Language
  • 3. Introduction to Database  File-Based Approach  Each program defines and manages its own data  Limitation  Separation and isolation of data  Duplication of data  Data dependence  Incompatibility of files  Fixed queries/proliferation of application program  Database Approach  A shared collection of logically related data, designed to meet the information needs of an organization
  • 4. Database Management System(DBMS)  A software system that enables users to define, create and maintain the database and provides controlled access to database  DDL  DML : procedural, non-procedural  Control : security, integrity, concurrency control, recovery control, user-accessible catalog  Components of the DBMS Environment  Hardware - Software - Data - Procedures - People
  • 5. Advantages of DBMS - Control of data redundancy - Economy of scale - Data consistency - Balance of conflicting requirements - More information from the same amount of data - Sharing of data - Improved data accessibility and responsiveness - Improved data integrity - Increased productivity - Improved security - Improved maintenance through data independence - Enforcement of standards - Increased concurrency - Improved backup and recovery services  Disadvantages of DBMS - Complexity, Size, Cost of DBMSs, Additional H/W costs - Cost of conversion, Performance, Higher impact of a failure
  • 6. Three-Level Database Architecture  External Level The users’ view of the database  Conceptual Level The community view of the database  Internal Level The physical representation of the database on the computer
  • 7. Functions of a DBMS 1. Data storage, retrieval, and update 2. A user-accessible catalog 3. Transaction support 4. Concurrency control services 5. Recovery services 6. Authorization services 7. Support for data communication 8. Integrity services 9. Services to promote data independence 10. Utility services
  • 8. Components of a DBMS Programmers Users DBA Application Database Queries Programs Schema DML Query DDL DBMS preprocessor processor compiler Program Database Dictionary object code manager manager Access File methods manager System Database and buffers system catalog
  • 9. Components of Database Manager Authorization control Integrity Command Query checker processor optimizer Transaction Scheduler manager Data Buffer Recovery Manager manager manager
  • 10. History of RDBMS  History of DBMS  1960s - Apollo moon-landing project, GUAM  mid 1960s - IMS by IBM (hierarchical DBMS)  mid 1960s - IDS by GE (network DBMS)  1965 - CODASYL(Conference on Data SYStems Language)  1967 -DBTG(Data Base Task Group)  1970 - E.F.Codd of the IBM Research Lab.  Late 1970s - System R project at IBM  1980s - commercial relational DBMS(DB2, Oracle, Informix..)  Now - OODBMS, ORDBMS
  • 11. Terminology  Relation : a relation is a table with columns and rows  Attribute : an attribute is a named column of a relation  Domain : a domain is the set of allowable values for one or more attributes  Tuple : a tuple is a row of a relation  Degree : the degree of a relation is the number of attributes it contrains  Cardinality : the cardinality of a relation is the number of tuples it contains  Relational database : a collection of normalized relation
  • 12. Properties of Relations  The relation has a name that is distinct from all other relation names  Each cell of the relation contains exactly on atomic value  Each attribute has a distinct name  The values of an attribute are all from the same domain  The order of attributes has no significance  Each tuple is distinct; there are no duplicate tuples  The order of tuples has no significance, theoretically
  • 13. When is a DBMS Relational?  Foundational rules Rule 0 : Foundational rule Rule 12 : Nonsubversion rule  Structural rules Rule 1 : Information representation Rule 6 : View updateing  Integrity rules Rule 3 : Systematic treatment of null values Rule 10 : Integrity independance  Data manipulation rules Rule2 : Guaranteed access Rule 4 : Dynamic online catalog based on the relational model Rule5 : Comprehensive data sublanguage Rule7 : High-level insert, update, delete  Data independence rules Rule8 : Physical data independence Rule 9 : Logical data independence Rule11 : Distribution independence
  • 14. Entity-Relationship Modeling  Concepts of the E-R Modeling  Entity Types An object or concept that is identified by the enterprise as having an independent existence  Attributes A property of an entity or a relationship type  Relationship Types A meaningful association among entity types
  • 15. Normalization  A technique for producing a set of relations with desirable properties, given the data requirements of an enterprise  UNF is a table that contains one or more repeating groups  1NF is a relation in which the intersection of each row and column contains one and only one value  2NF is a relation that is in 1NF and every non-primary-key attribute is fully functionally dependent on the primary key.  3NF is a relation that is in 1NF, 2NF in which no non-primary-key attribute is transitively dependent on the primary key  BCNF is a relation in which every determinant is a candidate key  4NF is a relation that is in BCNF and contains no trivial multi-valued dependency  5NF is a relation that contains no join dependency
  • 16. Conceptual Database Design  The process of constructing a model of the information used in an enterprise, independent of all physical considerations  Logical Database Design  The process of constructing a model of the information used in an enterprise based on a specific data model, but independent of a particular DBMS and other physical considerations.  Physical Database Design  The process of producing a description of the implementation of the database on secondary storage; it describes the storage structures and access methods used to archieve efficient access to the data
  • 17. Database Language  SQL  1974 - SEQUEL by D.Chamberlin (IBM)  1975 - SQUARE by Boyce (System R project)  1976 - SEQUEL/2 (SQL) by Chamberlin and Boyce)  late 1970 - SQL(Oracle), QUEL(Ingres)  1982 - Relational Database Language(RDL) : ANSI  1987 - ISO standard  1989 - Integrity Enhancement Feature (ISO)  1992 - SQL2(SQL92) : ISO
  • 18. DML  SELECT  INSERT  UPDATE  DELETE  DDL  CREATE(DROP) SCHEMA  CREATE(ALTER, DROP) DOMAIN  CREATE(ALTER, DROP) TABLE  CREATE(DROP) VIEW  CREATE(DROP) INDEX
  • 19. Advanced SQL  View  Integrity Enhancement Feature  Primary key  Unique  Foreign key  Access Control  Embedded SQL  Host Language Variables  Application Programming Interface  Dynamic SQL
  • 20. Part 2. Understanding Oracle Database  Overview of oracle Database Architecture  Memory Structure  Process Structure  Storage Structure  New Features
  • 21. Overview of Oracle Architecture PMON SMON RECO D000 S000 P000 * Total SGA Size : 1700 Mbyte * Fixed Size : Redo Log 70 Kbyte SGA Buffer Shared SQL Area Database Buffer Cashe * Variavle Size : 490 MByte TL-812 4,000,000 KByte 1,200,000 KByte 2,100 KByte DBW0 CKPT LGWR Server Data File Raw Device ARCH USER Archive Log Mode(50M)
  • 22. Memory Structure : Shared Pool Shared Pool  Shared Pool Contents - Text of the SQL or PL/SQL statement Library Cache Dictionary Cache - Parsed form of the SQL or PL/SQL statement - Execution plan for the SQL or PL/SQL Shared statements SQL Area - Data dictionary cache containing rows of data dictionary information Control Structures for example:  Library Cache PL/SQL Procedures - shared SQL area Character Set and Package Conversion - private SQL area Memory Network Security - PL/SQL procedures and package Attributes Control Structures - control structures : lock and library cache handles for examples; and so on ..  Dictionary Cache Locks Library - names of all tables and views in the database Cache handles Reusable and so on ... Runtime - names and datatypes of columns in database tables Memory - privileges of all Oracle users  SHARED_POOL_SIZE
  • 23. Memory Structure :Database Buffer Cache  Database Buffer Cache holds copies of data blocks read from disk  All users concurrently connected to the system share access to the buffer cache  Dirty List  LRU List  Size = DB_BLOCK_SIZE * DB_BLOCK_BUFFERS SGA Database Buffer Cache Shared Pool Shared SQL Area
  • 24. Memory Structure :Redo Log Buffer  Circular buffer containing information about changes made to the database  save it redo entry  Redo Entries is used when Database Recovery  DBWR write contents of Redo Log Buffer to Online Redo Log  LOG_BUFFER change vector #1 redo record change vector #1 change vector #1
  • 25. Oracle Processes SNPn SMON PMON RECO LCK0 Pnnn SGA Database Buffer Cache Redo Log Buffer Offline Storage Device Dedicated Snnn Server Process DBWR LGWR ARCH Dnnn User Process CKPT Control Files Users Redo Log Data Files Files
  • 26. Background Process  DBWR (Database Writer) - write all dirty buffers to datafiles - Use a LRU algorithm to keep most recently used blocks in memory - Defers write for I/O optimization  dirty list reaches a threshold length  A process scnas a specifed number of buffer in the LRU without finding free buffer  A time-out occurs  DBWR checkpoint occurs  LGWR (Log Writer) - writes redo log entries to disk  Commit occurs  The redo log buffers pool becomes one-third full  DBWR completes cleaning the buffer blocks at a checkpoint  LGWR time-out - A commit confirmation is not issued until the tx has been recorded in the rego log file
  • 27. Cont’d  PMON (Process Monitor) - Cleans up abnormally terminated connection - Rolls back uncommited transactions - Releases locks held by a terminated process - Frees SGA resources allocated to the failed processes - Database maintenance  SMON (System Monitor) - Performs automatic instance recovery - Reclaims space used by temporary segments no longer in use - Merges contiguous area of free space in the datafile
  • 28. Cont’d  CKPT (Check Point) - is enabled by setting the parameter CHECKPOINT_PROCESS=TRUE - If enabled, take over LGWR’s task of updating files at a checkpoint - Updates header of datafiles and control files at the end of checkpoint - More frequent checkpoint reduce recovery time from instance failure - CKPT improve the performance of database with many database files  ARCH (Archiver) - Copies redo log files to tape or disk for media failure - Operates only when a log switch occurs - Is optional and is only needed when in ARCHIVELOG mode - May write to a tape drive or to a disk  LCKn (Lock), Dnnn (Dispatcher), Snnn (Server), RECO (Recover), Pnnn(Parallel), SNPn(Job Queue), QMNn(Queue Monitor),
  • 29. Server/User Process  User Processes - A user process is used when a user runs an application program - Runs the tool/application and is considered the client - Passes SQL to the server process and receives the results  Server Processes - A server process must place the data in the database buffer cache - Parce and execute SQL statements - Read data blocks from disk into the shred database buffers of the SGA - Return the results of SQL statements to the user process  Parse : check syntax, security access, object resolution, optimization  Execute : applies the parse tree to the data, perform a physical read and change  Fetch : Passes data to the user (only SELECT)
  • 30. Oracle Files  Datafile  Redo Log Files  Control Files  Parameter File  Archive File  Log File (alert*.log, sqlnet.log, listener.log...)  Trace File
  • 31. Storage Architecture  Physical storage structures  Data files  Segments  Extents  Blocks  Logical storage structures  Tablespaces  Tables / Clusters / Indexes  Rows  Columns
  • 32. Physical Storage Architecture  Relationship among Segments, Extents, and Blocks Segment 96K Extent Extent 24K 72K 2K 2K 2K 2K 2K 2K 2K 2K 2K 2K 2K 2K 2K 2K 2K 2K 2K 2K 2K 2K 2K 2K 2K 2K 2K 2K 2K 2K 2K 2K 2K 2K 2K 2K 2K 2K 2K 2K 2K 2K 2K 2K Database Blocks
  • 33. Logical Storage Architecture  Relationship between tablespaces and datafiles Database System Tablespace USER Tablespace DATA1.ORA DATA2.ORA DATA3.ORA
  • 34. Cont’d  Objects stored in tablespaces Tablespace (one or more datafiles) Table Table INDEX INDEX INDEX INDEX INDEX INDEX INDEX INDEX Table INDEX INDEX Database Files Objects (Physical structures associated (stored in tablespace may with only one tablespace) span serveral datafiles)
  • 35. Block Header General Block Information Table Dictionary (Block add, Segment type) Row Dictionary 85 ~ 100 bytes Free Space Table info in Cluster Row info in Block (2 byte per row) Row Data using when New Row Insert or Update (pctfree, pctused) Table or Index Data
  • 36. PCTFREE / PCTUSED PCTFREE PCTUSED 20% Free space 61% Free space PCTFREE = 20 PCTUSED = 40  Insert new row until 80%  Can insert new row when below 60%  When Usage is below 40% (61% Free  20% use when Update space), block is listed in FREELIST
  • 37. Extent A set of contiguous database blocks within a datafile.  Extent are allocated when. - The segment is created (INITIAL EXTENT) - The segments grows (NEXT EXTENT) - The table is altered to allocate extents.  Extent are de-allocated when the - The segment is dropped and truncated. - The segment is larger than optimal and contains free extents (for rollback segments only)  Each segment is created with at least on extend( initial extent ) ( Rollback segment : 2)  ALTER TABLE table_name DEALLOCATE UNUSED
  • 38. Segment  a set of one or more extents that contains all the data for a specific type of logical storage structure within a tablespace  Data Segment - A collection of extents that holds all of the data for a table or a cluster  Index Segment - A collection of extents that holds all of the index data for search optimization on large tables and clusters  Rollback Segment - A collection of extents that holds rollback data for rollback, read-consistency, or recovery  Temporary segment - A collection of extents that holds data belonging to temporary tables created during a sort operation  Bootstrap segment - An extent that contains dictionary definitions for dictionary tables to be loaded when the database is opened.
  • 39. Oracle8 New Feature VLDB, Warehouse OLTP Parallel DML Advanced Queuing Parallel Index Scans XA rewrite Star Query Optimization Memory reduction Partitioning Serially reusable memory Parallel Backup/Recovery New OCI Interface Incremental Backup Improve Function Performance Point-in-time Recovery Objects Network Computing Object Relational Database Simple User Integration Object Type Simple Maintenance Object View Simple Development
  • 40. Oracle8i New Features Data Warehousing OLTP  Summary management  Publish and subscribe capabilities  Analytic function  Database event trigger  Hash and Composite Paritioning  Single table hash cluster  Resource Management  Object type column in partition table  Transportable tablespace  Partitioned index-organized table  Functional index, virtual column  Stable optimizer execution plans Application Development Security  Oracle Jserver, VM in Database  Virtual Private Database  Java stored procedure, function..  LDAP integration  SQLJ: embedded SQL in Java  N-tier authentication/authorization  WebDB  SSL and X.509v3, RAIDUS support  Data encrypt, decrypt
  • 41. Oracle 9i - The eBusiness Platform  Oracle9i continues Oracle8i's focus on the Internet by providing a series of specific capabilities and product bundles targeted at eBusiness environments. In addition, Oracle9i continues to add features and capabilities that extends existing investment in mission-critical infrastructure. Oracle9i has been designed with focus on certain key development areas. Key Infrastructure Area Key Application Area  Availability  Internet Contents Management  Scalability and Performance  B2B and B2C eBusiness  Security  Packaged Application  Development Platform  Business Intelligence  Manageability  Windows2000 Integration
  • 42. Oracle Client/Server Architecture NETWORK Client Server b Application Client/Server Server/Server Server A  Benefit of Client/Server Component - Database S/W work on Server - Only Server upgrade to increase size - Minimize network resource - Minimize Client H/W spec - concurrency, consistency, transparency - concurrency, consistency, transparency
  • 43. SQL*Net  What is SQL*Net? - Oracle’s Client/Server middleware product - transparent connection from client tool to DB ( from on DB to another ) - works across multiple network protocol and operation system  What is TNS? - Transparent Network Substrate - Oracle’s Network applications to access the underlying network protocols transparently - TNS-based application, Oracle Protocol Adapters, Network software like TCP/IP  Configuration File - TNSNAME.ORA ( Client ) - TNSNAV.ORA ( Client ) - SQLNET.ORA ( Client, Server ) - LISTENER.ORA ( Server )
  • 44. SQL*Net Configuration  TNSNAME.ORA  LISTENER.ORA info = LISTENER= (DESCRIPTION= (ADDRESS_LIST= (ADDRESS_LIST= (ADDRESS= (ADDRESS= (PROTOCOL=tcp) (PROTOCOL=tcp) (HOST=brinfoa01) (HOST=brinfoa01) (PORT=1521) (PORT=1521) ) ) ) ) (CONNECT_DATA= SID_LIST_LISTENER= (SID=BRBINFO1) (SID_LIST= ) (SID_DESC= ) (SID_NAME=BRBINFO1) (ORACLE_HOME=/oracle7/oracle7) (ENVS='EPC_DISABLED=TRUE') ) )  SQLNET.ORA STARTUP_WAIT_TIME_LISTENER=0 # SQLNET.EXPIRE_TIME = 0 CONNECT_TIMEOUT_LISTENER=0 LOG_DIRECTORY_LISTENER=/oracle7/oracle7/network/log SQLNET.AUTHENTICATION_S LOG_FILE_LISTENER=listener ERVICES=(none, beq) TRACE_LEVEL_LISTENER=OFF
  • 45. Net8 Networking Challenge  Support large mission-critical client/server, and provide migration path towards distributed object architecture  Net8 Focus 1. Scalability : Connection Pooling, Multiplexing(Connection Manager) 2. Manageability : Configuration-free installation option, Centralized client administration, Automated client configuration 3. Security : Oracle Security Server
  • 46. ODBC / oo4o / JDBC  ODBC (Open Database Connectivity ) - Provide a way for client program (eg VB, Excel, Access) to access database - is a standardized API, developed according to the specification of the SQL Access Group, than allows one to connect to SQL database  oo4o (Oracle Object for OLE) - a middleware product manufactured by Oracle that allows native access to Oracle7 databases from client applications via the Microsoft OLE standard - OLE 2.0 Automation Server, Oracle Data Control, Two C++ Class Library  JDBC (Java Database Connectivity ) - a set of classes and interfaces written in Java to allow other Java programs to send SQL statements to a relational database management system - JDBC Thin for Java applets, JDBC OCI for Java application