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