330 likes | 593 Views
WORKSHOP Il cielo è blu sopra le nuvole? Scelte, progetti, orientamenti delle istituzioni ITALE in epoca di crisi. Immagine sede evento. Virtual e Reports: le recenti esperienze di CINECA-Roma (Caspur) e CINECA-Milano (Cilea) S ilvia Simonetti (Cineca - Roma)
E N D
WORKSHOPIl cielo è blu sopra le nuvole?Scelte, progetti, orientamenti delle istituzioni ITALE in epoca di crisi Immagine sede evento Virtuale Reports: le recenti esperienze di CINECA-Roma (Caspur) e CINECA-Milano (Cilea) Silvia Simonetti (Cineca - Roma) Zeno Tajoli (Cineca - Milano) Roma Polo bibliotecario parlamentare 16 novembre 2012 Roma, il Polo bibliotecario parlamentare nell’insula domenicana Il cielo è blu sopra le nuvole?
Utilizzo Server virtuale • Aleph(luglio 2011) • SFX (novembre 2011 - marzo 2012) • Utilizzo di server virtuale per un Opac di backup • Status degli ordini via web • Report • Controlli sulle licenze • Riepiloghi sull’uso del server • I periodici nelle sottobiblioteche • Prestiti e prenotazioni • Una p-cir-04 con il dato ‘telefono’ • Tips per System Librarians Il cielo è blu sopra le nuvole?
Perchè virtualizzare? • Ottimizzazione delle risorse esistenti: • raggruppamento in pool delle risorse d'infrastruttura comuni ed eliminazione del vecchio modello di corrispondenza univoca tra applicazioni e server “una sola applicazione su ciascun server” • Diminuzione della complessità dell’infrastruttura: • riduzione numero di server, unità di storage, desktop e dispositivi di rete con conseguente semplificazione della gestione • Riduzione dei costi: • diminuisce l’ esigenza di spazio, di alimentazione e di raffreddamento, grazie alla riduzione di server e delle relative risorse hardware Il cielo è blu sopra le nuvole?
Perchè virtualizzare? Aumento della business continuity: esecuzione di backup sicuri e migrazione di interi ambienti virtuali senza interruzioni operative ottenendo così una sensibile riduzione dei downtime pianificati e ripristino immediato in caso di imprevisti (utile in caso di installazione Service-pack). Flessibilità operativa: grazie ad un cluster virtuale composto da più macchine fisiche, si può migrare una VM da una macchina fisica all'altra, sia per bilanciare i carichi di lavoro, sia in caso di malfunzionamenti, ripristinando in tempi brevissimi la funzionalità. 16/11/2012 Il cielo è blu sopra le nuvole?
Perchè virtualizzare? Facilità di gestione sistemistica (schermata riassuntiva vmware per una VM) 16/11/2012 Il cielo è blu sopra le nuvole?
Utilizzo di server virtuale per un Opac di backup export dati da aleph (p_ret_01, p_print_03, ALL) indicizzazione tramite Zebra su altro server virtuale interrogazione web tramite php/yaz 16/11/2012 Il cielo è blu sopra le nuvole?
$id[]= yaz_connect("@:9999/aleph"); yaz_syntax($id[0], "usmarc"); yaz_search($id[0], "rpn", $richiesta); yaz_wait(); $hits= yaz_hits($id[0]); $richiesta= str_replace("@and", "", $richiesta); $richiesta= str_replace("\"", "", $richiesta); $richiesta= str_replace("@attr 1=4", "| <span class=criterio>Titolo: </span>", $richiesta); $richiesta=str_replace("@attr 1=1003", "<span class=criterio>Autore: </span>", $richiesta); $richiesta=str_replace("@attr 1=1018", "| <span class=criterio>Editore: </span>", $richiesta); $richiesta=str_replace("@attr 1=31", "| <span class=criterio>Anno: </span>", $richiesta); $richiesta=str_replace("@attr usmarc 1=2659", "| <span class=criterio>Biblioteca: </span>", $richiesta); $richiesta=str_replace("@attr usmarc 1=1016", "| <span class=criterio>Collocazione: </span>", $richiesta 16/11/2012 Il cielo è blu sopra le nuvole?
Report status degli ordini via web Cron-job per estrazione SQL sulle tabelle Z68, Z30, Z13 interrogazione web tramite cgi 30 18 * * 1,2,3,4,5 /exlibris/aleph/script/ORDINI/estrae.sh > /exlibris/aleph/script/ORDINI/estrae.log estrae.sh #!/bin/csh source /exlibris/aleph/a20_1/alephm/.cshrc sqlplus user/pw @/exlibris/aleph/script/ORDINI/stampa.sql; cd /exlibris/aleph/script/ORDINI/; ./reset.pl ordini.txt; ./confronto.pl; 16/11/2012 Il cielo è blu sopra le nuvole?
SPOOL /exlibris/aleph/script/ORDINI/ordini.txt SELECT z13u.z13u_rec_key || '_' || RTRIM(substr(z13u.z13u_USER_DEFINED_4,1,160)) || '_' || RTRIM(z30.z30_material) || '_' || LTRIM(z30.z30_call_no) || '_' || RTRIM(z30.z30_collection) || '_' || RTRIM(z68.z68_order_group) || '_' || RTRIM(z30.z30_sub_library) || '_' || RTRIM(z68.z68_target_text) || '_' || RTRIM(z68.z68_order_status) || '_' || substr(Z68_OPEN_DATE,1,4) || '_' || substr(Z68_OPEN_DATE,5,2) FROM cab01.z13u, z103, z30, z68 WHERE substr(z68.z68_rec_key,1,9)= substr(z30.z30_rec_key,1,9) and RTRIM(Z68_ORDER_NUMBER)=RTRIM(Z30_ORDER_NUMBER) and z30.z30_material != 'ISSUE' and z13u.z13u_rec_key= z103.z103_lkr_doc_number and z103.z103_lkr_library =‘XXX01' and substr(z30.z30_rec_key,1,9)= substr(z103.z103_rec_key,6,9) and Z68_OPEN_DATE > '20100101' ORDER BY z30.z30_call_no, z13u.z13u_USER_DEFINED_4; SPOOL OFF 16/11/2012 Il cielo è blu sopra le nuvole?
16/11/2012 Il cielo è blu sopra le nuvole?
Vari tipi di Report: Script shell: programmi che utilizzano utilities UNIX(grep, awk ..), creano dei file di report che possono essere inviati per posta elettronica, sono schedulati con l’utility cron Script perl: programmi che interrogano via SQL il DB ADM estraggono dati e generano dei report formattati secondo le diverse esigenze Script perl: che elaborano file estratti dal DB BIB in formato MARC 21 tramite p_print_03 e generano dei report utili per diverse esigenze 16/11/2012 Il cielo è blu sopra le nuvole?
Controllo licenzescript shell (pc_server.log e www_server.log) Giornaliero invio e-mail in caso di limiti ecceduti 16/11/2012 Il cielo è blu sopra le nuvole?
Controllo licenzescript shell (pc_server.log e www_server.log) Annuale (file incrementale per valutazione annuale su utilizzo licenze) #!/bin/sh pcfiles=echo"ls /exlibris/aleph/a20_1/log/pc_server_6991*" echo "$pcfiles" date '+%d-%m-%y'>pc.log for i in $pcfiles do echo $i >> /exlibris/aleph/script/CONTROLLI/pc.log grep "data block \|License limit exceeded" $i > /exlibris/aleph/script/CONTROLLI/pctmp while read inputline do if echo "$inputline" |grep -q 'License limit exceeded'; then echo "$precedente - $inputline" >> /exlibris/aleph/script/CONTROLLI/erroritmp echo "$inputline" precedente=$inputline else echo 'no' precedente=$inputline fi echo "$precedente" done < /exlibris/aleph/script/CONTROLLI/pctmp rm /exlibris/aleph/script/CONTROLLI/pctmp done if [ -f /exlibris/aleph/script/CONTROLLI/erroritmp ] then #data=date '+%d%m%y' cut -f "1,2,11,12,13,16" -d" " /exlibris/aleph/script/CONTROLLI/erroritmp >/exlibris/aleph/script/CONTROLLI/errori_gui cat /exlibris/aleph/script/CONTROLLI/errori_gui /exlibris/aleph/script/CONTROLLI/errori_limite_gui|sort -u > /exlibris/aleph/script/CONTROLLI/errori_limite_gui_1 mv /exlibris/aleph/script/CONTROLLI/errori_limite_gui_1 /exlibris/aleph/script/CONTROLLI/errori_limite_gui rm /exlibris/aleph/script/CONTROLLI/errori_gui rm /exlibris/aleph/script/CONTROLLI/erroritmp fi exit 0 aleph@bibliorm3(a20_1) CAB01> more errori_limite_gui | awk '{print $1}' | sort -u 2012-01-09 2012-01-11 2012-01-16 2012-02-14 2012-02-27 2012-03-07 2012-03-12 2012-03-19 2012-03-26 2012-05-21 2012-06-14 2012-09-17 2012-10-02 2012-10-03 2012-10-10 2012-10-16 2012-10-17 2012-10-22 2012-10-23 2012-10-24 2012-10-30 2012-10-31 2012-11-05 2012-11-12 16/11/2012 Il cielo è blu sopra le nuvole?
Report quotidiani riepilogativi sull’utilizzo del server: overnight-check Job eseguiti con util E (jobd.log ) Job eseguiti da crontab (anagrafica, estrazione ordini ….) Check dei file di log aleph (scratch, server log …. ) analyze_pc_server_log http://www.exlibrisgroup.org/display/AlephCC/Aleph+pc_server+Log+Analyzer 16/11/2012 Il cielo è blu sopra le nuvole?
Output overnight_chk 16/11/2012 Il cielo è blu sopra le nuvole?
I periodici nelle sottobiblioteche I catalogatori inseriscono nei records bibliografici il fatto che il periodico sia in una sottobiblioteca e non usano la qualifica ‘ISSUE’ nei dati di copia. Usano il tag 958 $a (codice sottobiblioteca) Si estraggono i dati in formato MARC con le p-ret-01 e p-print-03 Si legge il file con uno script perl che crea un report Il report viene inviato via mail Il tutto governato da cron 16/11/2012 Il cielo è blu sopra le nuvole?
if ((substr($ldr,5,3) eq 'nas') and (length($tipo)< 1)){ my $presenza_subs = 0; foreach my $campo (@arr958){ my $dato = $campo->subfield('a'); if (length($dato)>1){ $dato = substr($dato,0,3); if (length($dato)>1){ $presenza_subs++; $dato =~ s/\://g; #tolgo i ‘:’ $dato =~ s/\s//g; #tolgo spazio, a capo e tabs my $i = $subs_presenti{$dato}; if ($i<1){ $subs_presenti{$dato} = 1; }else{ $i++; $subs_presenti{$dato}= $i; }; } } } if ($presenza_subs > 0){$contatore_serials_globale++} Con il server fra le nuvole
Prestiti e prenotazioni Sono report che danno informazioni sulla circolazione Girano via cron ma anche a mano, passando parametri Script shell che comandano script perl Numero prenotazioni nell’anno divise per sottobiblioteca Quanti prestiti di tipo ‘xx’ ci sono stati nell’anno divisi per sottobiblioteca Gli status dei prestiti in corso in una sottobiblioteca [iterato per ogni sottobib.] Numero utenti per tipologia in una sottobiblioteca [iterato per ogni sottobib.] 16/11/2012 Il cielo è blu sopra le nuvole?
Numero prenotazioni nell’anno divise per sottobiblioteca SELECT count(z35_rec_key), z35_sub_library FROM z35 WHERE z35_event_date like ‘YYYY%' and (z35_event_type = '71‘or z35_event_type = '72' or z35_event_type = '73' or z35_event_type = '74') GROUP BY z35_sub_library; 16/11/2012 Il cielo è blu sopra le nuvole?
Quanti prestiti di tipo ‘xx’ ci sono stati nell’anno divisi per sottobiblioteca SELECT z36h_sub_library, count(z36h_rec_key) FROM z36h WHERE z36h_item_status = ‘XX' and z36h_loan_date BETWEEN ‘YYYY0101' and ‘YYYY1231' GROUP BY z36h_sub_library Gli status dei prestiti in corso in una sottobiblioteca SELECT z36_status, count(z36_rec_key) FROM z36 WHERE z36_sub_library = ‘XXXXX ' and GROUP BY z36_status 16/11/2012 Il cielo è blu sopra le nuvole?
Numero utenti per tipologia in una sottobiblioteca SELECT z305_bor_status, count(z305_rec_key) FROM z305 WHERE z305_rec_key like'%XXXXX ‘ GROUP BY by z305_bor_status; Lo script fa un ciclo che lavora una alla volta tutte le sottobiblioteche Lo script esplicita poi nel report i codici di z305_bor_status 16/11/2012 Il cielo è blu sopra le nuvole?
Una p-cir-04 con il dato ‘telefono’ • Con p-cir-04 si prendono i prestiti in ritardo per i solleciti • Si vuole poter telefonare l’utente • La tabella z304 (gli indirizzi) non fa parte dei dati estratti in p-cir-04 • E’ un tabella multipla • Decisione: • Si fa un custom service • Si useranno i telefoni presenti nell’indirizzo ‘01’ [residenza permanente] Il cielo è blu sopra le nuvole?
Il servizio viene gestito con questi files: • $alephe_root/pc_b_ita/p-cir-04uvr.xml, il form di richiesta • $alephe_root/pc_b_ita/menu-circ.xml, il menu di selezione • $aleph_dev/pc_b_help_ita/ p-cir-04uvr.html, l’HTML per l’help • $aleph_proc/p_cir_04uvr, la procedura shell che gestisce il ricevimento dei parametri e l’integrazione con la GUI e i log • $aleph_proc/p_cir_04_uvr.pl, perl che chiama il DB e crea il file xml dei risultati • $uvr50_dev/uvr50/form_ita/loan-report-03.xsl, il template XSL per la stampa Il cielo è blu sopra le nuvole?
La documentazione al riguardo disponibile: • La presentazione ‘How_to_make_custom-services.ppt’ sul Doc Center • I custom servicespresenti su EL Commons> CodeShare tra cui: • Replacement of Aleph SDI e-mails and enhancement of RSS • SUNY - Aleph Custom Services (ver 18) • Custom service to sort and filter item reports • I SI relativi ai custom servicesche si trovano nella KB Il cielo è blu sopra le nuvole?
Tips per System Librarians: La struttura di uno scripts shell #!/bin/csh source /exlibris/aleph/.cshrc source /exlibris/aleph/a20_1/alephm/.cshrc source /exlibris/aleph/u20_1/alephe/aleph_start source $aleph_proc/def_local_env set user = aleph setenv LOGNAME aleph <La tua lavorazione> 16/11/2012 Il cielo è blu sopra le nuvole?
Tips per System Librarians: I mdouli perl utili Si lavora con perl 5.8.x (del S.O. o installato con Aleph500) Perché perl? DBI [connessione ad Oracle] Unicode::Lite [mantenere l’UTF-8 in ogni situazione] Convert::Translit [su aleph 16.x, per le traduzioni ad UTF-8] Getopt::Long [ilpassaggio di parametri] 16/11/2012 Il cielo è blu sopra le nuvole?
Tips per System Librarians: Per estrarre da Oracle Leggere la documentazione Oracle dal Doc Portal Esplora I dati con Oracle SQL Developer Configural’ oracle environment negliscripts (un parte): $ENV{ORACLE_OWNER} = "oracle"; $ENV{ORACLE_VERSION} = "11"; $ENV{ORACLE_SID} = "aleph20"; $ENV{ORACLE_BASE} = "/exlibris/app/oracle"; $ENV{ORACLE_HOME} = "/exlibris/app/oracle/product/11"; $ENV{ORACLE_CONF} = "/exlibris/aleph/ora_aleph Usa‘printenv’ per trovare come configurare 16/11/2012 Il cielo è blu sopra le nuvole?
Tips per System Librarians: Creare file Excel FormatoSYmbolicLinK (SYLK) http://en.wikipedia.org/wiki/SYmbolic_LinK_(SYLK) http://wiki.tcl.tk/9800 http://netghost.narod.ru/gff/graphics/summary/micsylk.htm E’ praticamentetestopuro, velocee semplificato Permette: Formattarevalori Formattaredate Nomi colonne in grassetto Funzionasu Excel e Calc (LibreOffice) Selezionato 10 annifa Ora meglio l’Open Document Format (XML) 16/11/2012 Il cielo è blu sopra le nuvole?
GRAZIE! s.simonetti@cineca.it z.tajoli@cineca.it Roma, il Polo bibliotecario parlamentare nell’insula domenicana Il cielo è blu sopra le nuvole?