13
CERN IT Department CH-1211 Geneva 23 Switzerland www.cern.ch/ Przemyslaw Radowiecki IT-DB-DBF Oracle Architecture

Przemyslaw Radowiecki IT-DB -DBF

  • Upload
    haamid

  • View
    39

  • Download
    0

Embed Size (px)

DESCRIPTION

Oracle Architecture. Przemyslaw Radowiecki IT-DB -DBF. Outline. Oracle Database Oracle Instance Real Application Clusters (RAC) Network connectivity SQL statements processing. Oracle Database. - PowerPoint PPT Presentation

Citation preview

Page 1: Przemyslaw Radowiecki IT-DB -DBF

CERN IT Department

CH-1211 Geneva 23

Switzerlandwww.cern.ch/

it

Przemyslaw RadowieckiIT-DB-DBF

Oracle Architecture

Page 2: Przemyslaw Radowiecki IT-DB -DBF

CERN IT Department

CH-1211 Geneva 23

Switzerlandwww.cern.ch/

it

Outline

• Oracle Database• Oracle Instance• Real Application Clusters (RAC)• Network connectivity• SQL statements processing

Page 3: Przemyslaw Radowiecki IT-DB -DBF

CERN IT Department

CH-1211 Geneva 23

Switzerlandwww.cern.ch/

it

Oracle Database

• Organized collection of data treated as a unit. The purpose of a database is to store and retrieve related information.

• Oracle’s implementation of a database consists of• data files• control files• online redo log files

• A database has its name (among other properties)

• ATLR, CMSONR, LCGR, INT11R, DEVDB11, TEST2, …

Page 4: Przemyslaw Radowiecki IT-DB -DBF

CERN IT Department

CH-1211 Geneva 23

Switzerlandwww.cern.ch/

it

Oracle Database Server

Page 5: Przemyslaw Radowiecki IT-DB -DBF

CERN IT Department

CH-1211 Geneva 23

Switzerlandwww.cern.ch/

it

DatabaseTablespaceTablespaceTablespaceTablespace

Segment

Segment

Segment

Segment

Exte

nt

Exte

nt

Exte

nt

Exte

nt

Exte

nt

Storage’s logical structures

• Block• the smallest logical unit

of data storage

• Extent• continuous set of blocks

• Segment• type (table, index, …)• tablespace name

• Tablespace• name• maximal size• maps to one or more data files

• Practical aspect:• A user can have a limited quota on a tablespace• in most CERN databases (all physics) 1 block = 8KB• 1 database block - the smallest piece of data to be exchanged

with physical storage

Page 6: Przemyslaw Radowiecki IT-DB -DBF

CERN IT Department

CH-1211 Geneva 23

Switzerlandwww.cern.ch/

it

Instance memory structures

Page 7: Przemyslaw Radowiecki IT-DB -DBF

CERN IT Department

CH-1211 Geneva 23

Switzerlandwww.cern.ch/

it

Instance memory structures

• Buffer cache• holds copies of data blocks• server processes manipulate data from buffer cache (not

directly from data files)• managed using LRU algorithm (Least Recently Used)

• Shared pool• portion of the SGA that contains shared memory constructs

such as shared SQL areas• most recently executed SQL statements• most recently used data definitions

• Practical aspect:• no bind variables causes many shared SQL areas creation, which

leads to high memory usage and fragmentation • ORA-04031:unable to allocate X bytes of shared memory

Page 8: Przemyslaw Radowiecki IT-DB -DBF

CERN IT Department

CH-1211 Geneva 23

Switzerlandwww.cern.ch/

it

• High Availability (HA) + Scalability solution• One database, multiple instances

• managed by Oracle Clusterware• database services vs. database instance

Real Application Clusters

RAC Database

INSTANCE1 INSTANCE2 INSTANCE3

Service C

Service A Service B

Page 9: Przemyslaw Radowiecki IT-DB -DBF

CERN IT Department

CH-1211 Geneva 23

Switzerlandwww.cern.ch/

it

Real Application Clusters

• Practical aspects:• rolling interventions

• sessions are transparently reconnected to working instance

• transactions are broken and need to be rolled back

• internal information sometimes bound to instance not visible immediately in GUI tools (EM, SM)

• connection specification can cause loosing of HA features, e.g. if instance specified instead of service

• RAC aware applications can gain a lot, not RAC aware applications can loose a lot running on RAC

Page 10: Przemyslaw Radowiecki IT-DB -DBF

CERN IT Department

CH-1211 Geneva 23

Switzerlandwww.cern.ch/

it

Database connectivity

• Oracle Net manages connections between user process and server process

• On top of popular network protocols (e.g. TCP, Inter-Process Communication (IPC))

• Oracle Net addresssqlplus usern/password@’(

DESCRIPTION=

(ADDRESS= (PROTOCOL=TCP) (HOST=dbsrvg3305.cern.ch) (PORT=10121) )

(CONNECT_DATA=

(SID=DEVDB11)

)

)’

Page 11: Przemyslaw Radowiecki IT-DB -DBF

CERN IT Department

CH-1211 Geneva 23

Switzerlandwww.cern.ch/

it

Naming methods

• Local naming method• Based on $TNS_ADMIN/tnsnames.oralcgr_backup =

(DESCRIPTION =

(ADDRESS = (PROTOCOL = TCP)(HOST = lcgr1-v.cern.ch)(PORT = 10121))

(ADDRESS = (PROTOCOL = TCP)(HOST = lcgr2-v.cern.ch)(PORT = 10121))

(ADDRESS = (PROTOCOL = TCP)(HOST = lcgr3-v.cern.ch)(PORT = 10121))

(ADDRESS = (PROTOCOL = TCP)(HOST = lcgr4-v.cern.ch)(PORT = 10121))

(ADDRESS = (PROTOCOL = TCP)(HOST = lcgr5-v.cern.ch)(PORT = 10121))

(CONNECT_DATA =

(SERVER = DEDICATED)(SERVICE_NAME = lcgr_backup.cern.ch)

)

)

sqlplus username/password@lcg_backup

• At CERN, centrally managed tnsnames.ora stored in:• \\cern.ch\dfs\Applications\Oracle\ADMIN• /afs/cern.ch/project/oracle/admin

Page 12: Przemyslaw Radowiecki IT-DB -DBF

CERN IT Department

CH-1211 Geneva 23

Switzerlandwww.cern.ch/

it

SQL statement processing

• SQL statement processing phases:• Parse• Execute• Fetch

• Parse paths:• Soft parse• Hard parse

• Practical aspect:• Bind variables make SQL

statements similar enough to use soft parse path

select name from emp where id=:id_val;

Page 13: Przemyslaw Radowiecki IT-DB -DBF

CERN IT Department

CH-1211 Geneva 23

Switzerlandwww.cern.ch/

it

Useful links

• Oracle Database Concepts

http://docs.oracle.com/cd/E11882_01/server.112/e25789/toc.htm

• Oracle 11g documentationhttp://www.oracle.com/pls/db112/portal.all_books