ETL - data transfer scripts
BOX=beginning of expedition
EOX=end of expedition
ETL=etract, transfer, load
Overview
This document reviews scripts found in all IODP data TRANSFER schemas. An overview of DBA scripts found on the OEM (Oracle Enterprise Manager) NFS shares is also provided--these scripts are used to perform a variety of bulk database management tasks.
TRANSFER schema procedures
All of these scripts were designed to be executed with TRANSFER schema owner privileges--operating within a given database instance and its web of application-specific permissions and configurations.
BOX script
These scripts assist in automating shipboard beginning of expedition (BOX) database preparations.
BOX_ASMAN_CATALOG_DELETE
BOX_LIME_AUDIT_DELETE
BOX_LIMS_CLEANUP
BOX_LIMS_DEFRAG
BOX_LIMS_EXPEDITION_DELETE
BOX_SM_DELETE_REQUEST_CODES
Container load script
One of the shipboard systems (moisture and density) requires data for pre-weighed containers. This script aids in loading content from an Excel file into the shipboard LIMS.
CL
Data copy script - formerly applied for EOX ETL
These COPY_* scripts were (routinely) applied by shipboard developers to prepare expedition data for transport to shore via an export of the TRANSFER schema. This EOX activity no longer occurs (since Dec 2022, Exp 398). Prior to Dec 2022 the scripts were named as-shown, but without the COPY_ prefix.
The scripts are retained for occasional use. They provide a semi-automated means for aggregating an expedition's data for transport into a test environment via the supporting tables in the TRANSFER schemas.
COPY_ASMAN_CATALOG_TO_NEW
COPY_DESCINFO_TO_NEW
COPY_LIMS_EXPEDITION_TO_NEW
Data cleaning and preening--between ETL activities
These scripts automate occasional data cleaning activities.
UTIL_CLEANOUT_TRANSFER_NEW_TABLES
UTIL_LIMS_TEST_RESULT_DELETE
Implements Shore EOX ETL
This script merges content staged (and modified) at the TRANSFER schema into the LIMS warehouse.
EOX_SHORE_MERGE_TRANSFER_NEW_TO_LIMS
iRIS
No merge scripting is in place for IRIS data. Direct imports are taken from export files to the OPS schema for tables RIS_CONFIGURATION, RIS_EVENT, and RIS_DATA.
OVERVIEW script
These scripts support the computation of summary data presented by the database OVERVIEW application. Each script summarizes a different kind of data. The scripts were revised to log activity and progress to TRANSFER.LOG. Formerly the DBMS_OUTPUT package was used. Current usage is more transparent. The log content provides a resource for process auditability.
DBO_COMPUTE_1001
DBO_COMPUTE_1011
DBO_COMPUTE_1021
DBO_COMPUTE_1041
DBO_COMPUTE_1051
DBO_COMPUTE_1061
DBO_COMPUTE_1071
DBO_COMPUTE_1081
DBO_COMPUTE_1091
DBO_COMPUTE_1101
DBO_COMPUTE_1111
DBO_COMPUTE_1121
DBO_COMPUTE_1131
DBO_COMPUTE_1141
DBO_COMPUTE_1151
DBO_COMPUTE_1161
DBO_COMPUTE_1171
DBO_COMPUTE_1181
DBO_COMPUTE_1191
DBO_COMPUTE_1201
DBO_COMPUTE_1211
DBO_COMPUTE_1221
DBO_COMPUTE_1225
DBO_COMPUTE_1231
DBO_COMPUTE_1241
DBO_COMPUTE_1251
DBO_COMPUTE_1255
DBO_COMPUTE_1261
DBO_COMPUTE_1271
DBO_COMPUTE_1281
DBO_COMPUTE_1291
DBO_COMPUTE_1301
DBO_COMPUTE_1311
DBO_COMPUTE_1321
DBO_COMPUTE_1331
DBO_COMPUTE_1341
DBO_COMPUTE_1351
DBO_COMPUTE_1361
DBO_COMPUTE_ALL
DBO_COMPUTE_EXP
Database management scripts
The OEM (Oracle Enterprise Manager) hosts on shore and ship host an NSF mount point used by each ODA (Oracle Data Appliance). As the mount point is read-write to all ODAs, it is a convenient space to store scripts for DBA operations.
Scripts used for a variety of database management purposes may be found here and in underlying subdirectories: /backup/scripts.
The script sets named for an expedition indicate collections of work done to complete the shore side of EOX merges of ship data into shore: /backup/scripts/rci_work. The /exp folder is the generic and parameterized template that is carried forward.
EOX load and merge - rci_work/exp
The collection of scripts in this location was used to automate the shore components of EOX processing: retrieve last expedition content from the database dump, create and apply moratorium supports, merge the data into production; provide statistics which give quality assurance/quality control on the process. Excepting import_transfer.ksh, in_moratorium.ksh, and crt_user_exp.ksh--all other scripts are considered legacy examples of OS automation for database processes.
These are the scripts (in-order) that are typically used
# Shore EOX processing for a data load
# per Sunil Armarni from a Slack thread.
export EOX=#
chk_eox_count.ksh
select sum(bytes)/1024/1024 from dba_free_space where tablespace_name = 'TRANSFER'
import_transfer.ksh
transfer_upd_stat.ksh
data_pre_01_crt_unq.ksh
data_pre_01_chk_dup.ksh
eox_gen_in_moratorium_script.ksh <GROUP>
in_moratorium_<GROUP>.ksh
crt_user_exp.ksh $EOX
chk_tablespace_free.ksh
grp_cnt_transfer.ksh
data_pre_03_dis_trig.ksh
dis_trig_all_<YYYMMDD_HHMMSS>.sql
chk_eox_count.ksh exp#
exec transfer.lims_expedition_delete('#')
chk_eox_count.ksh
grp_cnt_lims.ksh
data_pre_05_without_DI_v6.ksh # calls scors also
grp_cnt_lims.ksh
chk_scale_data.ksh
data_pre_05_scale_data.ksh
chk_scale_data.ksh
enb_trig_all_<YYYMMDD_HHMMSS>.sql
merge_descinfo2_data_v2.ksh
insert_dbo_#.sql - N/A
dbo_compute_v4.sql exp#
data_post_06_upd_stat.ksh
Â