Domanda

Ho molti dati mysql di cui ho bisogno per generare rapporti. Si tratta per lo più di dati storici, quindi non cambierà molto, ma pesa facilmente a 20-30 gigabyte e dovrebbe crescere. Al momento ho una raccolta di script php che eseguirà alcune query complesse e genererà file CSV ed Excel. Uso anche phpMyAdmin con query con segnalibri. Li modifico manualmente per cambiare i parametri. La quantità di dati sta crescendo e anche il numero di persone che hanno bisogno di accedervi sta crescendo, quindi sto prendendo il tempo per migliorare questa situazione.

Ho iniziato a leggere sul data warehousing l'altro giorno e sembra che questa sia un'area correlata a ciò che devo fare. Ho letto alcuni buono articoli e sto anche aspettando un libro. Penso di riuscire a capire cosa fanno questi tipi di sistemi e cosa è possibile.

La creazione di un sistema di reportistica per i miei dati è sempre stata in una lista di cose da fare, ma fino a poco tempo fa ho pensato che sarebbe stata un'impresa di programmazione di nicchia. Dato che ora so che il data warehousing è una cosa comune, immagino che ci debba essere una sorta di frame di reporting / warehousing disponibili per facilitare lo sviluppo. Salverei volentieri la scrittura di interfacce e script per programmare e inviare rapporti e-mail e simili e mi limiterei a scrivere query e impostare relazioni.

Sono stato principalmente un ragazzo lampada, ma non sto cambiando le lingue o le piattaforme. Ho solo bisogno di una soluzione più solida poiché i miei script una tantum non si adattano bene.

Allora, dove è un buon posto per iniziare?

È stato utile?

Soluzione

Discuterò alcuni punti sullo spettro {budget, funzione utility business, time frame}. Per comodità, seguiamo la concettualizzazione dell'architettura che hai collegato a

& nbsp; & Nbsp; WikipediaDataWarehouseArticle

  • Livello database operativo
    I dati di origine per il data warehouse: normalizzati per la manutenzione dei dati in un'unica posizione

  • Livello di accesso ai dati
    La trasformazione dei dati di origine nel livello di accesso informativo.
    Gli strumenti ETL per estrarre, trasformare, caricare i dati nel magazzino rientrano in questo livello.

  • Livello di accesso informativo
    & nbsp; • Struttura dei dati che facilita i report
    & nbsp; & Nbsp; & Nbsp; I dati non sono gestiti qui. È semplicemente un riflesso dei tuoi dati di origine
    & nbsp; & Nbsp; & Nbsp; Quindi, strutture denormalizzate (contenenti dati duplicati, ma derivati ??sistematicamente)
    & nbsp; & Nbsp; & Nbsp; di solito sono più efficaci qui
    & nbsp; • Strumenti di reporting
    & nbsp; & Nbsp; & Nbsp; In che modo consenti ai tuoi utenti di accedere ai dati?
    & nbsp; & Nbsp; & Nbsp; • report preconfezionati (semplice)
    & nbsp; & Nbsp; & Nbsp; • metodi di accesso più dinamici a fette e dadi

& nbsp; & Nbsp; & Nbsp; & Nbsp; I dati a cui si accede per il reporting e l'analisi e gli strumenti per il reporting e l'analisi dei dati
& nbsp; & Nbsp; & Nbsp; & Nbsp; cadere in questo strato. E le differenze Inmon-Kimball sulla metodologia di progettazione,
& nbsp; & Nbsp; & Nbsp; & Nbsp; discusso più avanti nell'articolo di Wikipedia, hanno a che fare con questo livello.

  • Livello metadati (facilita l'automazione, l'organizzazione, ecc.)

Crea il tuo (di fascia bassa)
Per pochissimi costi immediati, riconoscendo semplicemente la necessità delle strutture denormalizzate, è possibile acquistare quelli che non lo stanno utilizzando in modo efficiente

Partecipa al gioco della palla (sono richiesti alcuni esborsi)
Non è necessario utilizzare tutte le funzionalità di una piattaforma fin dall'inizio.
IMO, tuttavia, vuoi essere su una piattaforma che sai crescere, e in un ambiente di BI altamente competitivo e in via di consolidamento, che sembra essere uno dei quattro mega-vendor aziendali (la mia opinione)

  • Microsoft (la piattaforma della nostra azienda di 110 dipendenti)
  • SAP
  • Oracle
  • IBM

& nbsp; & Nbsp; BiMarketStateArticle

La mia azienda è in questa fase, utilizzando alcune delle funzionalità ETL offerte da SQL Server Integration Services (SSIS) e un uso alternativo dell'open source, ma in pratica è necessaria una licenza che richiede il prodotto Talend nel "Livello di accesso ai dati", una struttura di report denormalizzata (implementata completamente nel database di base di SQL Server) e SQL Server Reporting Services (SSRS) per automatizzare ampiamente (in base alle proprie competenze) la produzione di report predefiniti. Nota che un SSRS "riporta". è semplicemente una configurazione / specifica XML (scalabile) che viene renderizzata in fase di esecuzione tramite il motore SSRS. Scelte come l'esportazione in un file Excel sono opzioni semplici.

Impegno serio (è richiesto un impegno umano significativo)
Si noti che non è ancora necessario utilizzare il data mining / il slicing / il cubing dinamico funzionalità di SQL Server Analysis Services. Stiamo lavorando per quello, ma ora ci siamo concentrati sul miglioramento della qualità della nostra pulizia dei dati nel "Livello di accesso ai dati".

Spero che questo ti aiuti a capire dove iniziare a cercare.

Altri suggerimenti

Pentaho ha messo insieme una suite di prodotti piuttosto completa. I prodotti sono "gratuiti", ma tieniti pronto per la solita vendita pesante una volta sborsate le tue informazioni identificative.

Non ho avuto la possibilità di allungarli davvero perché siamo un negozio Microsoft da una parte triste all'altra.

Penso che dovresti prima controllare Kimball e Inmon e vedere se vuoi avvicinarti al tuo data warehouse in un modo particolare. Kimball, in particolare, stabilisce un ottimo quadro per la modellazione e la costruzione del magazzino.

Esistono numerosi strumenti che tentano di rendere il processo di progettazione, implementazione e gestione / gestione di un data warehouse e ciascuno ha i suoi punti di forza e di debolezza e spesso punti di prezzo molto diversi. Sotto le coperte sarai sempre il migliore se hai una buona conoscenza dei principi di ingombro dei campi di Kimball e / o Inmon.

Oltre a strumenti come Kalido e Wherescape RED (che fanno cose simili in modi molto diversi), molte delle piattaforme ETL ora hanno un buon supporto integrato per il lavoro di implementazione dell'asino - componenti SCD ecc. e tracciamento del lignaggio.

Meglio vedere tutti questi come strumenti da usare nelle tue mani, artigiano, rendono alcune cose facili ancora più facili (o addirittura banali), alcune cose difficili più facili ma alcune cose che riescono a mettere in mezzo IMHO;) Impara prima la metodologia e i principi e acquisisci una buona comprensione di questi e poi saprai quali strumenti applicare dalla tua kitbag e quando ...

Non è stato aggiornato da un po 'ma c'è un bel pacchetto Data Warehousing / ETL Ruby chiamato ActiveWarehouse .

Ma vorrei dare un'occhiata ai prodotti Pentaho come Nick menzionato in un'altra risposta. Dovrebbe gestire facilmente il volume di dati che hai e potrebbe fornirti più modi di tagliare e tagliare i tuoi dati di quanto tu possa mai immaginare.

Il miglior framework attualmente disponibile è Modellazione di ancoraggi .
Potrebbe sembrare piuttosto complesso a causa della sua struttura generica e della capacità integrata di storicizzare i dati.
Anche la tecnica di modellazione è abbastanza diversa da ERD Ma si finisce con il codice sql per generare tutti gli oggetti db comprese le viste 3NF e:

  • inserisci / aggiorna gestito dai trigger
  • interroga qualsiasi punto / intervallo nella storia
  • gli sviluppatori di applicazioni non vedranno il modello di ancoraggio 6NF sottostante.

La tecnologia è open source e al momento è imbattibile.

Se hai una domanda AM potresti chiedere su quel tag .

Kimball è il metodo più semplice per l'archiviazione dei dati.

Usiamo Informatica per spostare i dati, ma non fa cose DW come l'indicizzazione di default.
Mi piace l'idea di Wherescape RED, come strumento DW e utilizzo dei server collegati di MS SQL per ovviare alla necessità di uno strumento ETL.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top