What is Oracle Database ? Part I

An Oracle Database is a Relational Database management System used to store & retrieve the related information.

An Oracle Database server/instance consists of shared memory structurebackground processes & storage which handles the functional requirement to manage concurrent & shared data access by users.

Oracle Database product has evolve though its 8i, 9i, 10g & 11g version


Overview:
Oracle database server is a part of multitier architecture includes Client Machine/WebserverMiddleware Application & Database Server.
Client Machine/Webserver:

Client is the End user who accesses the DB to retrieve the information.
Various ways to access db by client are Sqlplus, Sql developer or other third Party Tools like TOAD/PLSQL Developer, Web URL. 
Client can be remote or local to DB servers which means that Webserver & Middleware layers are optional & DB can be retrieve from its local server itself.
In Complex & Critical Application Setup’s Multitier approach being followed to make efficient administration, security enforcement, patch/upgrades, backup, restoration, monitoring, license management, hardware management of every component.
Middleware Application:
It stands as a middleware layer to client before accessing database which consists of data retrieval policy, functions, application/java /plsql codes, user interface etc.  Oracle CRM, Fusion Middleware and other vendor application products are found in this layer
Database Server:
Here it comes the Oracle Database, located on Server supporting any platform like Windows, Solaris, AIX, HP-UX and Linux etc.
Will simplify the correlation between each of the basic (writing basic as 8i to 11g various new components being added by oracle but I have picked up the most common of all them & will be easy to understand rather than adding more confusion) database Components & their Usage in following section with reference to above Oracle Basic Architecture with below flow.



1.       Database Buffer
2.       Shared Pool
3.       Large Pool
4.       Java Pool
5.       Redo Buffer
6.       Fixed SGA
7.       Stream Pool
8.       Flash Back Buffer
9.       Program Global Area(PGA)
10.    User Global Area (UGA)


Memory components are divided into SGA, PGA & UGA based on their functionality, Manageability & types of the process which access them.

SGA is System Global Area constitutes the Oracle Instance along with background processes & physical/logical components of the database. SGA is an os shared memory hold by the oracle instance for its various internal memory components.

Upper limit of OS Memory that can be shared to oracle is defined in system parameter file of server along with other limits like stack, concurrent number files / blocks, semaphores, number of process that can be utilized by oracle & its dependent components. During DB startup OS Memory is allocated to SGA & same is released to OS during shutdown. Memory blocks inside the SGA Memory can be read/written by oracle process based on internal algorithm. SGA value set by parameter SGA_MAX_SIZE .SGA is known as dynamic for its feature to resize its components online without shut/startup of instance/DB. Unit of allocation of memory blocks are known as granule. Granule size in 4MB if SGA is < 128MB else 16 MB

Oracle maintains granule information for each of the components of SGA



No comments:

Post a Comment