click below
click below
Normal Size Small Size show me how
DATABASE
ARCHITECTURE
Question | Answer |
---|---|
what is the Logical structure of the DB? | blocks, extents, segments, and tablespaces as its building blocks |
what is the Physical structure of the DB? | physical database structure consists of datafiles and related files |
why Oracle database used the logical structure? | It allow Oracle to control the use of the physical space allocated to the Oracle database. |
what are the other logical entities of the database? | tables, indexes, and packaged SQL code |
What is a Data blocks? | A data block is the smallest building block of the Oracle database and consists of a specific number of bytes on the disk. |
What is an Extents ? | An extent is two or more consecutive Oracle data blocks, and this is the unit of space allocation. |
What is a Segments? | A segment is a set of extents that you allocate to a logical structure like a table or an index (or some other object). |
What is a tablespaces? | A tablespace is a set of one or more datafiles, and usually consists of related segments. The datafiles contain the data of all the logical structures that are part of a tablespace, like tables and indexes |
More about tablespaces | Oracle databases are logically divided into one or more tablespaces. An Oracle tablespace is a logical entity that contains the physical datafiles. Tablespaces store all the usable data of the database. |
WHY TABLESPACES? | Tablespaces make it easier to allocate space quotas to various users in the database. |
WHY TABLESPACES 2? | You can take a tablespace offline without having to bring down the entire database Tablespace are an easy way to allocate database space. You can import or export specific application data by using the import an exp utilities at the tablespace level |
Datafiles | Oracle datafiles make up the largest part of the physical storage of your database. A datafile can belong to only one database, and one or more datafiles constitute the logical entity called the tablespace. |
The Control File | The control file is a file that the Oracle DBMS maintains to manage the state of the database, and it is probably the single most important file in the Oracle database. Every database has one control file, |
what is the critical function of the database? | The control file is critical to the functioning of the database, and recovery is difficult without access to an up-to-date control file. Oracle creates the control file (and the copies) during the initial database creation process. |
SCN | system change number |
More about control File | The control file is also important in verifying the integrity of the database and when recovering the database |
The checkpoint | The checkpoint process instructs the database writer to write data to the disk when some specific conditions are met, and the control file notes all checkpoint information from the online redo log files |
Redo Log Files | The redo log files record all the changes made to the database, and they are vital during the recovery of a database. If you need to restore your database from a backup, you can recover the latest changes made to the database from the redo log files. |
Checkpoint (CKPT) | Updates the headers of all datafiles to record the checkpoint details |
Process monitor (PMON) | Cleans up after finished and failed processes |
System monitor (SMON) | Performs crash recovery and coalesces extents |
Archiver (ARCn) | Archives filled online redo log files |
Manageability monitor (MMON) | Performs database-manageability-related tasks |
Manageability monitor light (MMNL) | Performs tasks like capturing session history and metrics |
Memory manager (MMAN) | Coordinates the sizing of the SGA components |
Job queue coordination process (CJQO) | Coordinates job queues to expedite job processes |
Database writer | all modifications of data take place in Oracle memory. The database writer process is then responsible for writing the “dirty"data from the memory areas known as database buffers to the actual datafiles on disk. |
write-ahead protocol | Before the database writer writes the changed data to disk, it ensures that the log writer has already completed writing all redo records for the changed data from the log buffer to the redo logs on disk. This is called the write-ahead protocol |
difference between SGA and PGA | the SGA Shared by all server and background processes (PGA): Private to each server and background process. There is one PGA for each process. |
Shared pool | Contains the library cache for storing SQL and PL/SQL parsed code in order to share it among users. It also contains the data dictionary cache, which holds key data dictionary information. |
Redo log buffer | Contains the information necessary to reconstruct changes made to the database by DML operations. This information is then recorded in the redo logs by the log writer. |
java pool | Represents the heap space for instantiating your java objects. |
large pool | Stores large memory allocations, such as RMAN backup buffers |
stream pool | Supports the Oracle Streams feature |
Database buffer cache | Holds copies of data blocks read from datafiles |
The data dictionary | Is a set of key tables that Oracle maintains, and it contains crucial metadata about the database tables, users, privileges, and so forth. |
hard parse and soft parse | Each time you issue a SQL statement, Oracle first checks the library cache to see if there is an already parsed and ready-to-execute form of the statement in there, If Oracle doesn’t find an execution-ready version —this is called a hard parse. page 191 |
The library cache | All app code, whether it is pure SQL code or code embedded in the form of PL/SQL program units, such as procedures and packages, is parsed first and executed later. Oracle stores all compiled SQL statemen in the library cache component of the shared pool. |
alert log | In addition, every time you start up the Oracle instance, Oracle will list all your initialization parameters in the alert log, along with the complete sequence of the startup process |