Voyager MARC record export script
What it is
This is a Voyager-ILS-specific script for exporting:
- bibliographic, holdings, and authority MARC records
- item record data
It is designed to run on the Voyager database server and is an alternative to using the Voyager Pmarcexport utility. The script was written to automate the export and transfer of ILS records for a discovery layer product (aka "next-generation catalog").
What the script does
By default, with no options, the script exports all the bibliographic, holdings, and authority MARC records from your Voyager database, as well as a flat file of item record data. A full export can take anywhere from one to four hours (depending on CPU number/speed, memory, load, etc.) for these many records:
AUTHs: 1,000,000 BIBs: 1,500,000 MFHDs: 1,500,000 Items: 1,300,000
Incremental exports run much faster. Your mileage may vary.
You can choose to not export authority and/or item records.
After an initial full export, you can choose to do an incremental export of new/changed records. The script maintains a file of run dates to facilitate the incremental exports.
Also, the script can ftp the files after the export.
Why use this script?
I believe this script offers more flexibility than the Pmarcexport utility. It also differs in significant ways from the other customer-created export scripts.
With this script (as with Ere's), you have access to each MARC record as they are being retrieved from Voyager: this allows you to adapt and extend the script to do error checking, clean-up, editing, transformation to another format, yadda, yadda, as part and parcel of the export process.
Example: The script exports bib and holdings records simultaneously (i.e. bibs and their associated/linked holdings records). If you wanted to move data from the bib to the holdings record or vice versa (using MARC::Record) you could fairly easily add that to the script.
Usage: vmarc-export.pl [options] Default is a full export of MARC records with no FTP Options: --incr=[lastfull|lastincr|YYYY-MM-DD] Incremental export of new/changed records since date Examples: --incr=lastfull from last full extraction --incr=lastincr from last incremental extraction --incr=YYYY-MM-DD from date provided --library=N Export records associated with a Voyager library_id Example: --library=1 --noauth Do not export authority records. --noitem Do not export item level data. --ftp FTP the files of records after they are generated --man --usage --help