db installation and care

22
DB Installation and Care Carmine Cioffi Database Administrator and Developer ICAT Developer Workshop, The Cosener's House 25-26 August 2009 1

Upload: nia

Post on 30-Jan-2016

40 views

Category:

Documents


0 download

DESCRIPTION

ICAT Developer Workshop, The Cosener's House 25-26 August 2009. DB Installation and Care. Carmine Cioffi Database Administrator and Developer. Outline. Team and Our Role The Oracle Server ICAT Schemas SVN Installation Initialization ICAT Jobs Monitoring and Backup ICAT DLS - PowerPoint PPT Presentation

TRANSCRIPT

Page 1: DB Installation and Care

DB Installation and Care

Carmine CioffiDatabase Administrator and Developer

ICAT Developer Workshop, The Cosener's House25-26 August 2009

1

Page 2: DB Installation and Care

Outline

• Team and Our Role• The Oracle Server• ICAT Schemas• SVN• Installation• Initialization• ICAT Jobs• Monitoring and Backup• ICAT DLS• Passed and Future Work

2

Page 3: DB Installation and Care

Team and Our Role

• Gordon D. Brown• Keir C. Hawker• Carmine Cioffi• Eter Pani• Richard B. Sinclair

3

Page 4: DB Installation and Care

Team and Our Role

• We all watch over the databases.• Keir and I are the primary DBA on

ICAT system but if something does happen to us (e.g. we get swine flu ) there will always be someone to look after ICAT (even Gordon )

• We actively participate in the development and maintenance of the database schema and PL/SQL code

4

Page 5: DB Installation and Care

The Oracle Server

• Version 11.1.0.6 64bit• 5nodes RAC• Each node has 2 Dual core Intel Xeon

5160 3GHz• 4 GB RAM• Red Hat Enterprise Linux 4• Is located in the new building R89

(UPS room)

5

Page 6: DB Installation and Care

RAC diagram

6

Page 7: DB Installation and Care

ICAT Schemas

• ICAT system makes use of 3 schemas:– The main database (ICAT) where the

real data are stored– API schema is used by the application

API to store user session information– Data Portal schema is used by the Data

Portal application to store user session information

7

Page 8: DB Installation and Care

ICAT Schemas

• Different schemas are installed for different version and for different facility:– CLF has none

• ICAT Version 3.1:• Only ICAT DLS is installed• ICAT( 280MB)• Data Portal(51MB)

8

Page 9: DB Installation and Care

ICAT Schemas

• Version 3.3• Both facilities (DLS, ISIS) are installed• ICAT size

– DLS 223MB– ISIS 10.5 GB

• Data Portal size:– DLS 3MB– ISIS 3MB

• API size:– DLS 20MB– ISIS 36MB

9

Page 10: DB Installation and Care

SVN

• We have two SVN repositories:– EDB SVN: subversion system for our own code– ICAT SVN: subversion system for ICAT code

• ICAT SVN:– Contains the ICAT DB-schema installation scripts– Used by developers (?)– Used by us– Is the ICAT official code repository

• EDB SVN:– Contains the ICAT API and Data Portal DB-schema

installation scripts– Is used only by us

10

Page 11: DB Installation and Care

SVN

• EDB SVN (cons):– It is not the ICAT official repository– It is a private area– We dump the schemas from the production database:

• No way to keep track of changes in the schema apart from taking regular dump from the database

– If we install a new ICAT API or Data Portal schema we may miss the latest changes

• This should change:– EDB Scripts should be stored in ICAT SVN– Developers should maintain it

11

Page 12: DB Installation and Care

Installation

• We create an account (schema in Oracle terms)

• We put the ICAT initialization files on the database server. These are tvs files

• We run the installation script:– We got an installation script for each ICAT

flavour: DLF,ISIS and CLF• install_icatdls.sql• install_icatisis.sql• install_icatclf.sql

• Distribute the connection string, password and account name

12

Page 13: DB Installation and Care

Initialization

• The initialization is done using external tables

• With External tables is possible to read data from external (tvs) text files stored on the server

• ICAT 3.1 use 8 external tables:

• ICAT 3.3 use 11 external tables

13

Page 14: DB Installation and Care

Initialization

• ICAT 3.1 external tables:– EXTERN_DATAFILE_FORMAT – EXTERN_DATASET_STATUS – EXTERN_DATASET_TYPE – EXTERN_FACILITY_CYCLE – EXTERN_INSTRUMENT – EXTERN_INVESTIGATION_TYPE – EXTERN_PARAMETER_LIST – EXTERN_STUDY_STATUS

• ICAT 3.3 external tables– EXTERN_DATAFILE_FORMAT – EXTERN_DATASET_STATUS – EXTERN_DATASET_TYPE – EXTERN_FACILITY_CYCLE – EXTERN_ICAT_ROLE – EXTERN_INSTRUMENT – EXTERN_INVESTIGATION_TYPE – EXTERN_PARAMETER_LIST – EXTERN_STATION_SCIENIST – EXTERN_STUDY_STATUS– EXTERN_THIS_ICAT

14

Page 15: DB Installation and Care

ICAT JOBS

• ICAT 3.1:– ISIS:

• None– DLS:

• ICAT_DLS_PROPOGATION:– Enabled– Run every 15 minutes

• ICAT 3.3:– ISIS:

• SET_RANGE_AND_DATES:– Enabled– Run every 15 minutes

– DLS:• SET_RANGE_AND_DATES:

– Disabled

• ICAT_DLS_PROPOGATION:– Enabled– Run every 30 minutes

15

Page 16: DB Installation and Care

Monitoring and Backup

• Oracle Enterprise Manager:– manages the database– monitors the database– set up alert for metrics that cross threshold

set by us• Recovery Manager (RMAN):

– Helps to makes database backup– Database Backups are done daily on the local

file system– File system backup to tape (ADS) are done

daily16

Page 17: DB Installation and Care

Monitoring and Backup

17

Page 18: DB Installation and Care

Monitoring and Backup

18

Page 19: DB Installation and Care

ICAT DLS

• The ICAT DLS system does deploy at the moment 15 different databases:– DUO desk– ICAT– 13 Ikittens

• The propagation job (ICAT_DLS_PROPOGATION) is responsible of keeping data flowing between them

19

Page 20: DB Installation and Care

ICAT DLS propagation job flow chart

20

DUO desk ICAT

I02

I03

I22

I04

I16

I041

I05

I24I19

I18

I15

I11

P60

propagation

• ICAT database is located in R89• DUO desk is located at Diamond• Each Ikitten is local at each diamond beam line

New investigation with shifts (etc.) are set at DUO desk level. This information is then propagated to ICAT and from here to the Ikittens.

Page 21: DB Installation and Care

Passed and Future Work

• Last year we worked with Devigo on the development of the new ICAT schemas (ICAT 3.3) :– Creation of the migration script from ICAT 3.1 to

ICAT 3.3– Update the propagation script– Develop new triggers and PL/SQL packages– Help in tuning SQL statements

• We are fully dedicated in maintaining the current system and committed to help any further development that may raise from this meeting

21

Page 22: DB Installation and Care

ANY QUESTIONS?