Utente decide cosa cercare

di il
19 risposte

19 Risposte - Pagina 2

  • Re: Utente decide cosa cercare

    Di quale database stai parlando?
    Descrivi:
    - il tema del tuo database, ossia di cosa parla
    - le tabelle di cui è composto
    - tutti i campi di ogni tabella, specificando quale è la chiave primaria
    - le relazioni
    - poi dici che cosa vuoi dalla vita di questo database
  • Re: Utente decide cosa cercare

    Ok me lo invento al volo.

    Supponiamo un database che memorizzi attori che recitano nei film.

    Tabelle : Attore, Film
    Relazione : recita

    un Attore puo' recitare in N film, nello stesso Film possono recitare N attori.

    Film avra' come attributi : Titolo, data, trama, eccetera
    Attore avra' come attributi : dati anagrafici vari

    Ora io lo do al cliente il quale mi ha detto mettimi una query che mi esponga tutti gli attori che hanno recitato in un film. Ok glielo consegno con questa query.

    Ora il cliente ha l'esigenza di formulare query non previste e vorrebbe farlo in maniera autonoma quindi non vuole il mio intervento e lui non sa scrivere query.

    Si sveglia lunedi e vuole sapere : Quanti attori hanno recitato in film horror? ;
    Si sveglia martedi e vuole sapere : In quanti film comici ha recitato l'attore Pippo?

    e cosi via...

    In che modo o con quali strumenti (anche gia presenti sul mercato) posso fornire una dinamicita' tale?
  • Re: Utente decide cosa cercare

    Scusate se mi intrometto, ma vi siete avviati in una discussione in termini impropri!

    Vi sono strumenti/programmi appositi per il datawarehousing, più o meno avanzati e, quindi, più o meno costosi!.
    si trovano anche cercando sul web usando i termini: OLAP, Cube, Data Mining, ..

    Alcune info:

    Business Intelligence and Data Visualization Software | Qlik
    http://www.qlik.com/i

    OLAP & Reporting with instantOLAP
    http://www.instantolap.com
    con una demo online:
    http://www.instantolap.com/iolap/#142607273508

    Vi sono anche componenti di sviluppo predisposti a questo scopo che consentono di integrare le funzionalità di DW, DM, OLAP all'interno dei propri programmi.
    Ad es. noi in azienda usiamo OLAP di ComponentOne (per lo sviluppo in .NET).

    Qui trovi una serie di strumenti:
    Windows OLAP Software - SourceForge.net
    http://sourceforge.net/directory/business-enterprise/enterprise/olap/os:windows/freshness:recently-updated/


    In linea generale, questi dati possono venire acquisiti da più fonti diverse contemporaneamente (tabelle presenti in più database differenti, fogli Excel, file CSV, ecc.)

    In alcuni casi , vedi QlikView, i dati (una volta acquisiti dalle varie fonti) vengono memorizzati in locale così che sono disponibili off-line, in questo caso ovviamente non potranno aggiornarsi, ma ad esempio per chi viaggia (titolare, responsabile, ecc.) è utile comunque portarsi dietro una sorta di 'fotografia' per poter analizzare la situazione su cui discutere con i propri partner.

    Naturalmente vi sono ulteriori scenari in cui è possibile connettersi al server aziendale ed avere la situazione aggiornata in tempo reale (anche usando device di altri S.O. come tablet, smartphone, portatili, netbook Windows, Android, iOS, OSX, ...).

    Tutto dipende da 'quanto si vuole/può spendere'.




    P.S.
    @Osvaldo
    Se non sai di cosa si parla, ti suggerisco prima di rispondere, di documentarti:
    http://it.wikipedia.org/wiki/Data_warehous
  • Re: Utente decide cosa cercare

    Grazie , do un occhiata
  • Re: Utente decide cosa cercare

    Intanto spero tu conosca i giochi di relazioni che devono legare le tabelle. Nel caso specifico Attori è in relazione molti-a-molti con Film perchè un Attore può aver recitato in molti Film e un film è interpretato da molti Attori. Ti serve una tabella di congiunzione Interpretazioni che espliciti questa relazione.
    Quelli che tu chiami "attributi" dovrebbero essere i "campi" veri e propri delle singole tabelle che hai citato. Purtroppo avresti dimenticato un campo Genere in tabella Film dove lì ci vai a scrivere che il filmX è Horror, mentre il filmY è Comico.
    Ora non è chiaro il livello di programmazione/ricerca che tu vuoi dedicare al tuo utente. Se l'utente ha un minimo di dimistichezza con le query, non gli sarà difficile mettere in piedi le 2 query che rispondono alle tue 2 "relativamente semplici" domande.
    Se invece vuoi provvedere tutto tu, la cosa si complica perchè devi essere talmente arguto da impostare una serie di maschere anche solo esplicative in cui guidi l'utente verso la propria domanda personalizzata.
    Ti posso assicurare però che, su questo argomento, l'appetito ricercativo non ha limiti. Personalmente ho un database molto elaborato dove ho previsto moltissime domande di ricerca che l'utente può manovrare grazie alle mie maschere guida. Ma mi sono accorto che ci sono molte altre domande in cui le mie maschere guida non possono rispondere e, siccome si tratta di domande alquanto sporadiche/rare non ne è valsa la pena di includerle in maniera automatizzata, ma è sempre possibile costruire nuove query, talvolta sfruttando anche query precedenti (a catena).
Devi accedere o registrarti per scrivere nel forum
19 risposte