Upload
immacolata-simonetti
View
224
Download
5
Embed Size (px)
Citation preview
116/11/2012 Il cielo è blu sopra le nuvole?
WORKSHOPIl cielo è blu sopra le nuvole?
Scelte, progetti, orientamenti delle istituzioni ITALE in epoca di crisi
Immagine sede evento
Roma Polo bibliotecario parlamentare
16 novembre 2012
Roma, il Polo bibliotecario parlamentare nell’insula domenicana
Virtual e Reports: le recenti esperienze di
CINECA-Roma (Caspur) e CINECA-Milano (Cilea)
Silvia Simonetti (Cineca - Roma)Zeno Tajoli (Cineca - Milano)
216/11/2012 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
316/11/2012 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
416/11/2012 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à.
516/11/2012 Il cielo è blu sopra le nuvole?
Perchè virtualizzare? Facilità di gestione sistemistica (schermata riassuntiva vmware per una VM)
616/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
716/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
816/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/cshsource /exlibris/aleph/a20_1/alephm/.cshrcsqlplus user/pw @/exlibris/aleph/script/ORDINI/stampa.sql;
cd /exlibris/aleph/script/ORDINI/;./reset.pl ordini.txt;./confronto.pl;
916/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, z68WHERE 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
1016/11/2012 Il cielo è blu sopra le nuvole?
1116/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
1216/11/2012 Il cielo è blu sopra le nuvole?
Controllo licenze script shell (pc_server.log e www_server.log) Giornaliero invio e-mail in caso di limiti ecceduti
1316/11/2012 Il cielo è blu sopra le nuvole?
Controllo licenze script shell (pc_server.log e www_server.log) Annuale (file incrementale per valutazione annuale su utilizzo licenze)
#!/bin/shpcfiles=echo"ls /exlibris/aleph/a20_1/log/pc_server_6991*"echo "$pcfiles"date '+%d-%m-%y'>pc.logfor i in $pcfilesdo 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/pctmpdone
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 fiexit 0
aleph@bibliorm3(a20_1) CAB01> more errori_limite_gui | awk '{print $1}' | sort -u2012-01-092012-01-112012-01-162012-02-142012-02-272012-03-072012-03-122012-03-192012-03-262012-05-212012-06-142012-09-172012-10-022012-10-032012-10-102012-10-162012-10-172012-10-222012-10-232012-10-242012-10-302012-10-312012-11-052012-11-12
1416/11/2012 Il cielo è blu sopra le nuvole?
Report quotidiani riepilogativi sull’utilizzo del server:
• overnight-checkJob 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
1516/11/2012 Il cielo è blu sopra le nuvole?
Output overnight_chk
16
analyze_pc_server_log
17
Output analyze_pc_server_log
1816/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
1911/04/23 Con il server fra 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++}
2016/11/2012 Il cielo è blu sopra 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
a) Numero prenotazioni nell’anno divise per sottobiblioteca
b) Quanti prestiti di tipo ‘xx’ ci sono stati nell’anno divisi per sottobiblioteca
c) Gli status dei prestiti in corso in una sottobiblioteca [iterato per ogni sottobib.]
d) Numero utenti per tipologia in una sottobiblioteca [iterato per ogni sottobib.]
2116/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;
2216/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 z36hWHERE z36h_item_status = ‘XX' andz36h_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 ' andGROUP BY z36_status
2316/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
2416/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]
2516/11/2012 Il cielo è blu sopra le nuvole?
2616/11/2012 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
2711/04/23 Con il server fra le nuvole
2816/11/2012 Il cielo è blu sopra le nuvole?
La documentazione al riguardo disponibile:
La presentazione ‘How_to_make_custom-services.ppt’ sul Doc Center
I custom services presenti 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 services che si trovano nella KB
2916/11/2012 Il cielo è blu sopra le nuvole?
Tips per System Librarians: La struttura di uno scripts shell
#!/bin/cshsource /exlibris/aleph/.cshrcsource /exlibris/aleph/a20_1/alephm/.cshrcsource /exlibris/aleph/u20_1/alephe/aleph_startsource $aleph_proc/def_local_envset user = alephsetenv LOGNAME aleph
<La tua lavorazione>
3016/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 [il passaggio di parametri]
3116/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
Configura l’ oracle environment negli scripts (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
3216/11/2012 Il cielo è blu sopra le nuvole?
Tips per System Librarians: Creare file Excel
Formato SYmbolic LinK (SYLK) http://en.wikipedia.org/wiki/SYmbolic_LinK_(SYLK) http://wiki.tcl.tk/9800 http://netghost.narod.ru/gff/graphics/summary/micsylk.htm E’ praticamente testo puro, veloce e semplificato Permette:
Formattare valoriFormattare dateNomi colonne in grassetto
Funziona su Excel e Calc (LibreOffice) Selezionato 10 anni fa Ora meglio l’Open Document Format (XML)
3316/11/2012 Il cielo è blu sopra le nuvole?
GRAZIE!
[email protected]@cineca.it
Roma, il Polo bibliotecario parlamentare nell’insula domenicana