640 likes | 761 Views
Toro 1. EMu Hacking at the Peabody Museum. Yale campus. Peabody Collections Counts & Functional Cataloguing Unit. Anthropology 325,000 Lot Botany 350,000 Individual Entomology 1,000,000 Individual Invertebrate Paleontology 300,000 Lot
E N D
Toro 1 EMu Hacking at the Peabody Museum
Peabody CollectionsCounts & Functional Cataloguing Unit • Anthropology 325,000 Lot • Botany 350,000 Individual • Entomology 1,000,000 Individual • Invertebrate Paleontology 300,000 Lot • Invertebrate Zoology 300,000 Lot • Mineralogy 35,000 Individual • Paleobotany 150,000 Individual • Scientific Instruments 2,000 Individual • Vertebrate Paleontology 125,000 Individual • Vertebrate Zoology 185,000 Lot / Individual 2.7 million database-able units => ~11 million items
Peabody CollectionsFunctional Units Databased • Anthropology 325,000 90 % • Botany 350,000 1 % • Entomology 1,000,000 1 % • Invertebrate Paleontology 300,000 55 % • Invertebrate Zoology 300,000 20 % • Mineralogy 35,000 85 % • Paleobotany 150,000 60 % • Scientific Instruments 2,000 100 % • Vertebrate Paleontology 125,000 60 % • Vertebrate Zoology 185,000 95 % 940,000 of 2.7 million => 37 % overall
Big events EMu migration in '05 (all disciplines went live simultaneously) Physical move in '00-'02 (primarily neontological disciplines)
The four YPM buildings Peabody (YPM) Environmental Science Center (ESC) Geology / Geophysics (KGL) 175 Whitney (Anthropology)
VZ Kristof Zyskowski (Vert. Zool. - ESC) Greg Watkins-Colwell (Vert. Zool. - ESC)
HSI Shae Trewin (Scientific Instruments – KGL )
VP Mary Ann Turner (Vert. Paleo. – KGL / YPM)
ANT Maureen DaRos (Anthro. - YPM / 175 Whitney)
EMu Hacking at Peabody Hacking – in a laudatory programming sense, not a criminal sense
Mitnick Often we tend to think of “hackers” in this mode
Mitnick modified cracker A better moniker
Mitnick modified w/EMu cracker Crackers often have unnamed accomplices…
3 Vignettes of YPM EMu “hacks” • An issue of functionality (background script) • An issue of performance (tweaking the catalogue) • An issue of user behavior & cost (another script…)
Hack Vignette #1 Multimedia module - JPEG 2000 support
http://www.jpeg.org/jpeg2000 • - non-proprietary compression standard • - lossless mode (much smaller files) • lossy mode (vastly smaller files) • potential space/bandwidth savings
JP2 spicebush tails with file sizes 1.54 mB (native TIFF) 15 kB (heavily squeezed JP2)
261 kb – <1% 1,302 kb – 2% HERBIS images 5,166 kb – 12% 62,640 kb – 100%
JP2 – no thumbnail In EMu, oops… no thumbnail
JP2 – script coding find imagedir –name *.jp2 –mtime -2 –print loop on the matches and test to see which recently loaded JP2 files are missing a thumbnail JPG, or which JP2 files have been modified more recently than their existing thumbnail JPG ; then build filenames for any qualifying target JPGs ; execute script several times per hour from cron jasper –f match –F tempfile convert tempfile –resize 90x90 target
JP2 – prior, without script wakes up every 20 minutes…
JP2 – now, with makes the thumbnail…
JP2 – Tiled View JP2 files now behave just like all other standard multimedia
JP2 – Photoshop opens Double click and the Photoshop handler kicks in
V. 1 – simply generated thumbnails in the background JP2 – V1
V. 2 – also inserted suitable metadata into records via texload JP2 – V2 (next version, script to be called directly in validation code at file time)
Hack Vignette #1 Moral #1 = EMu is extensible, you may be able to implement significant changes yourself in whole or in part, without delay
Hack Vignette #2 Catalogue module - performance issues
Default EMu “cron” job configuration Mo Tu We Th Fr Sa Su late night workday evening = emulutsrebuild = emumaintenance batch = emumaintenance compact Orange is time EMu busy running background jobs. Interfering with workday work, and leaving Sunday processing time idle/unused.
The ecatalogue database is a rate limiter File NameFunction ~/emu/data/ecatalogue/data the actual data ~/emu/data/ecatalogue/rec indexing (part) ~/emu/data/ecatalogue/seg indexing (part) At YPM, the combined size of these was >10 gB, with 4 gB in data and 3 gB in both rec and seg
Touch many types of records in EMu… e.g., Party record add middle name e.g., Bibliography record add author e.g., Collecting Events record add collector …automatic changes subsequently propogate to numerous records in the ecatalogue database …ecatalogue can grow a lot and slow EMuto varying degreesbetween maintenance runs
Make it smaller - trim nulls from Legacy Data ? maybe save 20+% ?
Make it smaller - trim nulls from Legacy Data ? Repetitive scripting of texexport & texload jobs Conducting around a million re-imports of records Manual adjustment of nightly cron jobs to accommodate Do the work at nighttime over a month-long period Watched ecatalogue closely to keep from exploding disk
Starting situation at YPM for ecatalogue (gB on y axis) data seg rec
delete nulls from AdmOriginalData data seg rec
sites – round 2 constant data lengthy prefixes … not satisfied with just that… here are some other things to possibly trim!
>55 % ! delete nulls from AdmOriginalData data shorten prefix on AdmOriginalData seg rec selectively delete AdmOriginalData
catalogue – round 2 data seg rec What ecatalogue AdmOriginalData looks like post scripting
BEFORE Default EMu “cron” job configuration Mo Tu We Th Fr Sa Su late night workday evening = emulutsrebuild = emumaintenance batch = emumaintenance compact
AFTER Modified EMu “cron” job configuration * * * Mo Tu We Th Fr Sa Su late night workday evening = emulutsrebuild = emumaintenance batch = emumaintenance compact Can now squeeze all maintenance into wee hours of night, use Sunday, and fully compact ecatalogue every other day (asterisks)!
Quick backup Also, all of YPM EMu can now be squeezed onto a thumbdrive
Hack Vignette #2 Moral #2 = know your data, you can put aspects of EMu on a diet and your computer system is likely to thank you
Hack Vignette #3 EMu sessions - licensing and user behavior
Dreaded email for sysadmins Dreaded email WARNING! 2 KE EMu user(s) are currently being denied access because all 10 of your KE EMu licenses are in use. For license upgrades, please contact info@kesoftware.com
Museum Director: "Go license shopping at KE!"Systems Admin: "VISA or MasterCard?" The conversation you dream of but of course never have…
What do you need ? • Guaranteed license seat for every potential user ? • Cover maximal number of expected concurrent users ? • Minimize expenses by minimizing license seats ?