Dominopoint Day 2007 - NSFDB2

Loading...

Flash Player 9 (or above) is needed to view presentations.
We have detected that you do not have it on your computer. To install it, go here.

0 comments

Post a comment

    Post a comment
    Embed Video
    Edit your comment Cancel

    Favorites, Groups & Events

    Dominopoint Day 2007 - NSFDB2 - Presentation Transcript

    1. Daniele Vistalli Autore: Professione: Portal Evangelist Il meglio dei due mondi Domino e DB2 si incontrano Una promessa finalmente realtà Sponsored by 11
    2. Agenda Cos'è NSFDB2 Nuova programmabilità in Domino Domino diventa (anche) relazionale Domino sa fare le query Scenari di impiego con esempi reali Requisiti e limitazioni Entitlement DB2 con Domino 8.0 Perchè/quando usare NSFDB2 (show me the money) Risorse e approfondimenti 2
    3. Cos'è NSFDB2, overview dell'architettura NSF = Notes Storage Facility Il modo in cui Notes e Domino memorizzano i propri dati le “note” NSFDB2 = NSF + Db2 come storage backend Domino 8 sa scrivere e leggere le “note” dentro DB2 Effetti collaterali I dati sono dentro DB2, possiamo usarli in nuovi modi 3
    4. NSFDB2 Domino, metodo classico Domino, con NSFDB2 Domino server Domino server *.x -> 8.x 7.0.x e 8.x NSF API NSF API (nnotes.dll/so) (nnotes.dll/so) NSF Classic API NSFDB2 Api Scrittura in files .NSF Note ed indici Select/Insert/Update/Delete + Query Views e Access Views Astrazione dell’API domino = assolutamente trasparente agli sviluppatori, ma non ai sistemisti che devono gestire anche DB2
    5. Nuova “programmabilità” • Domino 8.0 introduce nuovi elementi di design – Access View: Viste DB2 attraverso cui accedere in modo relazionale ai dati domino (in real-time, lettura e scrittura) – Query View: delle viste domino i cui dati provengono dal una query SQL, stesse possibilità a livello di UI, ma i dati sono “diversi” 5
    6. Access view, domino diventa (anche) relazionale • Access view: – E’ un oggetto relazionale (vista) DB2 che rende accessibili a DB2 le informazioni del o dei nostri database NSF – In lettura, scrittura (compresi creazione documenti e cancellazione) – Si crea con il client designer, dopo la creazione/popolamento iniziale è gestita dal server domino • Ad ogni database domino .nsf che usa access view viene associato uno schema DB2 – Tutte le access view di un database sono inserite in quello schema – La nuova funzione @DB2Schema permette di sapere quale schema DB2 è associato ad un determinato database.
    7. Access view, domino diventa (anche) relazionale • Le ACL domino si applicano anche in DB2 – Ogni utente DB2 che accede ad una access view viene “mappato” ad una identità Domino cercando nel names.nsf un documento persona associato allo user-id db2 – I diritti di lettura, cancellazione e i campi “reader” sono validi anche dentro una access view
    8. Creazione di una Access views 4 3 2 1 1. Creare la access view 2. Mappare i campi da rendere accessibili 3. Creare/aggiornare la DAV in DB2 4. Eseguire l’operazione populate 8
    9. Access View – La mappatura dei campi • I campi multivalore sono trasformati in campi separati da un carattere (selezionabile) • Si può creare un indice Db2 su un campo di una Access View • Le access view hanno campi “virtuali” gestiti da NSFDB2 – #unid: lo universal id del documento – E inoltre: #ADDEDTOFILE, #CREATED, #DATABASE, #DBPATH, #MODIFIED, #OID, #PUBLICACCESS, #REF, #REPLICAID, #RESPINFO, #SEQUENCENUMBER, #SERVER (li trovate nella guida di Domino Designer) 9
    10. Query views – Domino impara a fare le query Non solo portiamo i dati di domino nel mondo relazionale. Con Domino 8.0 il server impara a fare le query su DB2 Una query view è un nuovo tipo di vista costruita con Domino Designer I dati sono relazionali, l’interfaccia utente e la presentazione sono quelli di Domino Funzionano nel client notes (quando connesso a un server) e su Web 10
    11. Query views – Domino impara a fare le query Non esiste selection formula, i dati sono generati ad ogni apertura della vista stessa eseguendo la query SQL che può cambiare ad ogni esecuzione (parametrica e contestuale) Il resultset ottenuto è impiegato per costruire le colonne della vista (le formule delle colonne usano i campi del resultset) Tutte le funzionalità di design sono disponibili (compresa la categorizzazione) 11
    12. Query views – Domino impara a fare le query Le query possono lavorare su dati presenti nel database DB2 del server Domino • Access View create a partire da dati Domino • Tabelle e viste create nel database stesso e popolate con dati relazionali • Tabelle e viste federate da altri sistemi con le feature di integrazione di DB2 12
    13. Basta con la teoria !!! Vediamo un esempio Due database Domino: Anagrafica clienti Archivio offerte commerciali e ordini Una tabella DB2: Fatture e importi totali per fattura 13
    14. 1° esempio: Query views su dati DB2 SELECT f.customerno, f.number, f.date, f.customername, f.totalamount, f.totaltax FROM erp.fatture f In una query view riesco a vedere i dati delle fatture provenienti dall’ERP, poco utile ma “nuovo” per chi usa Notes. erp.fatture è la tabella in cui trovo i dati sulle fatture f è l’alias con cui nella query faccio riferimento alla tabella 14
    15. 2° esempio: Access view avanzate Con delle Access View porto in DB2 i dati di clienti e offerte commerciali: Es. clienti.clienti: ragsoc, piva, address, city, state, country, customerno commercial.quote: customerno, subject, quoteamount, date, datevaliduntil • L’identificatore a sinistra del punto è lo schema db2 assegnato al db da nsfdb2 • Quello a destra è il nome della access view, definito in designer 15
    16. 2° esempio (cont.): Query view su access view • Adesso i dati sono in DB2 con una query view sui dati stessi posso usare nuovi modi per creare viste. Es. SELECT q.customerno, q.subject, q.quoteamount, q.date, q.datevaliduntil FROM commercial.quote q WHERE f.datevaliduntil <= current date + 1 month ORDER by f.quoteamount desc 16
    17. Query view su access view Il risultato è evidente, una vista con le offerte che scadono in meno di un mese ordinate dalla più alta (economicamente) alla più bassa. Si può fare anche con domino ma… le query SQL possono cambiare ad ogni esecuzione, quindi posso parametrizzarle (per esempio su un range o cliente) Inoltre una Query View non è persistente, non occupa spazio fisico. 17
    18. Query view ibride • Ovvero prendo dati da DB2 e domino insieme SELECT c.ragsoc, c.piva, c.state, f.number, f.totalamount, f.date FROM clienti.clienti c INNER JOIN erp.fatture f ON c.customreno = f.customerno ORDER by f.date desc • Ancora molto semplice, però ottengo una vista con ragione dati presi in parte da domino e in parte da DB2. Ordinati per data usando un campo della tabella fatture. 18
    19. Join tra più database Adesso prendo i due db domino e creo una vista che usa dati da entrambi SELECT c.ragsoc, c.piva, c.state, q.date, q.quoteamount, q.datevaliduntil FROM clienti.clienti c INNER JOIN commercial.quote q ON c.customreno = q.customerno ORDER by q.date desc Un sogno non è vero ? Beh, potete usare quante join (o union) volete quindi aggregare i db che vi servono. 19
    20. Da ricordare sempre • Anche in DB2 si applica la sicurezza Domino – Gli utenti DB2, quando accedono alle access view, vengono “mappati” su identità domino (corrispondenza fra utente DB2 e un documento persona nel names.nsf) – Le ACL del db si applicano e così i campi reader e author • Una Access view duplica i dati, quindi occupa più spazio (ma non il doppio) • DB2 richiede una manutenzione diversa, leggete sempre i readme quando installate i FixPack 21
    21. Requisiti sistemistici e limitazioni • Requisiti – Il server Domino deve essere configurato con il transaction journaling attivo – DB2 può essere locale o remoto rispetto al server Domino su Windows e AIX – DB2 deve essere locale rispetto al serve Domino su Linux • Limitazioni – Il Single Copy Object Store non è supportato su NSFDB2 – I folder collegati delle caselle IMAP non sono supportati 22
    22. Entitlements DB2 è incluso ma SOLO per gestire dati Notes Ho bisogno di una licenza completa di DB2 per: • Accedere alle Access view applicazioni esterne (ovvero non domino) • Federare i dati della Access View su altri sistemi • Creare/gestire dentro DB2 altre tabelle relazionali che potrei interrogare con delle query view o federare dati in altri database esterni (es. AS/400) 23
    23. I vantaggi (show me the money) • Riduzione dei tempi di sviluppo • Incremento delle performance – evitando operazioni ETL = Export, Transfer / Transform, Load • Riduzione spazio disco • Nuove possibilità mai viste prima (Join, Reporting, Filtering) 24
    24. Cosa ci portiamo a casa • Una soluzione trasparente • Nuovi elementi per lo sviluppo • Integrazioni con RDBMS avanzate e performanti • Si parte a costo 0 per chi già ha domino in casa e si può crescere sfruttando tutto DB2 Enterprise Edition 25
    25. Risorse online • Domino Blog – Il blog di Rob Ingram (product manager di Domino) • http://www.dominoblog.com • DB2 9 Database administration 731 certification prep series • http://www.ibm.com/developerworks/offers/lp/db2cert/db2-cert731.html • DB2 9 – Information Center • http://publib.boulder.ibm.com/infocenter/db2luw/v9/index.jsp • Blog e Forum http://www.Dominopoint.it – NSFDB2 forum su DominoPoint DA OGGI !!! • • http://dominobaloney.blogspot.com – Il blog di Cristian D’Aloisio • http://www.vistalli.it – Il mio blog 26
    26. Gli Autori Daniele Grillo Gli Speakers Claudio Meregalli Giuseppe Grasso Daniele Vistalli Lui Fabrizio Marchesano Giorgio Blangetti Davide Pannuto Stefano Mastella Enzo Stanzione Marco Fabbri I Nostri Sponsor

    + Daniele VistalliDaniele Vistalli, 3 years ago

    custom

    1604 views, 0 favs, 3 embeds more stats

    La presentazione che ho fatto al Dominopoint Day 20 more

    More info about this document

    © All Rights Reserved

    Go to text version

    • Total Views 1604
      • 1511 on SlideShare
      • 93 from embeds
    • Comments 0
    • Favorites 0
    • Downloads 30
    Most viewed embeds
    • 50 views on http://www.vistalli.it
    • 41 views on http://day.dominopoint.it
    • 2 views on http://connections.avnet.it

    more

    All embeds
    • 50 views on http://www.vistalli.it
    • 41 views on http://day.dominopoint.it
    • 2 views on http://connections.avnet.it

    less

    Flagged as inappropriate Flag as inappropriate
    Flag as inappropriate

    Select your reason for flagging this presentation as inappropriate. If needed, use the feedback form to let us know more details.

    Cancel
    File a copyright complaint
    Having problems? Go to our helpdesk?