AliEn in Oracle - Indico

Download Report

Transcript AliEn in Oracle - Indico

Almudena Montiel
GSI Darmstadt
ALICE-LCG TF Meeting 28 jan 2010
1


What?
AliEn Interface for Oracle RDBMS
Why?
To be able to run AliEn on Oracle
To run the central services for CBM and Panda
on a maintained, reliable, secure and fast
central GSI service
2


Database.pm
Uses DBI. Database independent interface for
Perl
3
4

Data definition
◦ Data types: SERIAL, TEXT, BIGINT, DOUBLE, etc. only
existing in MySQL.
◦ Reserved words: SIZE and TIMESTAMP are used as names
for fields, but are reserved words for Oracle
◦ Autoincrement, only in MySQL.
◦ Implementation of user defined functions

Data manipulation
◦ Be careful with the fields that changed their name for being
reserved words.

Utility
◦ Use “database” only MySQL

Administration:
◦ SHOW TABLES, SHOW DATABASE only in MySQL
5

With DBI itself:
◦ For raw information about data types supported by
the driver
Perl::DBI::DatabaseHandle::type_info_all()
◦ To map data type codes to names
Perl::DBI::DatabaseHandle::type_info()
◦ To show tables
Perl::DBI::DataBaseMetaData::GetTables()
… and more
6



The DRIVER used is indicated when creating
an instance of Database
The functionality is implemented by DBI
Need to refactor the modules to make SQL
portable
7

In the LDAP indicate, under Config
◦ For Oracle:
 catalogDriver=Oracle
 catalogueDatabase=no_host/Oracle/db-alice-test
◦ For MySQL
 catalogueDriver=mysql
 catalogueDatabase=“hostname”/mysql/db-alice-test

Refactor the modules:
◦
◦
◦
◦
◦
Database/Catalogue/LFN.pm
Database/Catalogue/GUID.pm
Database/Catalogue/Shared.pm
Database/Catalogue.pm
Database.pm
8


Modified the test environment to run outside
CERN
Modifying the SQL code in the modules
related to the FileCatalog
9

Modules affecting the FileCatalog (~1 week
full time)
◦ LFN.pm, Shared.pm, GUID.pm, Catalogue.pm from
the UI and Database packages
◦ CreateOrgDatabases.pl script


Testing (~1 week full time)
Make the SQL of the rest of the modules
portable in order to be opened to future
changes
10