Ciao, Habr!
I dati sono l'attivo più prezioso di un'azienda. Questo è dichiarato da quasi ogni azienda con un'orientamento digitale. È difficile discutere su questo: senza discutere i metodi di gestione, archiviazione e trattamento dei dati, non si svolge nessuna grande conferenza IT.
I dati ci arrivano dall'esterno, così come si formano all'interno dell'azienda; e se parliamo dei dati di una telecomunicazione, per i dipendenti interni rappresentano una miniera di informazioni sul cliente, i suoi interessi, le abitudini e la sua posizione. Con un corretto profiling e segmentazione, le offerte pubblicitarie risultano le più efficaci. Tuttavia, nella pratica, non è tutto così roseo. I dati che le aziende conservano possono essere irrimediabilmente obsoleti, ridondanti, duplicati o, in alcuni casi, nessuno è a conoscenza della loro esistenza tranne un ristretto gruppo di utenti. ¯_(ツ)_/¯
In una parola, è necessario gestire i dati in modo efficace: solo in questo caso diventeranno un attivo che porta un reale valore e profitto all'azienda. Purtroppo, per affrontare le questioni di gestione dei dati, bisogna superare molte difficoltà. Queste sono principalmente dovute a un'eredità storica sotto forma di 'zoo' di sistemi e all'assenza di processi e approcci unificati nella loro gestione. Ma cosa significa 'gestire i dati'?
Di questo parleremo nel seguito, e di come ci ha aiutato il nostro stack open source.
Il concetto di gestione strategica dei dati, Data Governance (DG), è già abbastanza noto sul mercato russo, e gli obiettivi perseguiti dalle aziende in seguito alla sua implementazione sono chiari e ben dichiarati. La nostra azienda non è stata un'eccezione e ha fissato come obiettivo l'implementazione del concetto di gestione dei dati.
Allora, da dove siamo partiti? Innanzitutto, abbiamo definito per noi obiettivi chiave:
- Assicurare l'accessibilità dei nostri dati.
- Garantire la trasparenza del ciclo di vita dei dati.
- Fornire agli utenti aziendali dati coerenti e non contraddittori.
- Fornire agli utenti aziendali dati verificati.
Ad oggi, sul mercato del software sono disponibili una dozzina di strumenti della classe Data Governance.

Ma dopo un'analisi dettagliata e lo studio delle soluzioni, abbiamo registrato per noi una serie di osservazioni critiche:
- La maggior parte dei produttori offre un insieme complesso di soluzioni, che per noi risulta eccessivo e ridondante rispetto alle funzionalità già esistenti. Inoltre, l'integrazione nel panorama IT attuale è costosa in termini di risorse.
- Le funzionalità e l'interfaccia sono progettate per i tecnologi, non per gli utenti aziendali finali.
- Bassa resilienza dei prodotti e assenza di implementazioni di successo nel mercato russo.
- Alto costo del software e del suo supporto continuo.
I criteri e le raccomandazioni sopra menzionati riguardo all'import substitution del software per le aziende russe ci hanno convinto a intraprendere un percorso di sviluppo interno basato su stack open source. Abbiamo scelto Django come piattaforma: un framework gratuito e open source scritto in Python. Così facendo, abbiamo individuato i moduli chiave che contribuiranno agli obiettivi precedentemente enunciati:
- Registro dei report.
- Glossario aziendale.
- Modulo di descrizione delle trasformazioni tecniche.
- Modulo di descrizione del ciclo di vita dei dati dalla sorgente allo strumento BI.
- Modulo di controllo della qualità dei dati.

Registro dei report
Secondo le ricerche interne effettuate nelle grandi aziende, nel risolvere le problematiche legate ai dati, i dipendenti spendono il 40-80% del tempo nella loro ricerca. Per questo motivo ci siamo posti l'obiettivo di rendere accessibili le informazioni sui report esistenti, che in precedenza erano disponibili solo per i clienti. In questo modo, riduciamo il tempo necessario per la creazione di nuovi report e garantiamo la democratizzazione dei dati.

Il registro dei report è diventato un'unica fonte di reportistica per gli utenti interni provenienti da diverse regioni, dipartimenti e divisioni. Contiene informazioni consolidate sui servizi informatici creati in diversi archivi aziendali, dei quali ce ne sono molti in Rostelecom.
Ma il registro non è solo un elenco asciutto di report sviluppati. Per ogni report forniamo informazioni necessarie all'utente per un'auto-consultazione:
- breve descrizione del report;
- profondità di accessibilità dei dati;
- segmento del cliente;
- strumento di visualizzazione;
- nome dell'archivio aziendale;
- requisiti di funzionalità commerciale;
- link al report;
- link alla richiesta di accesso;
- stato di realizzazione.
I rapporti offrono un'analisi del livello di utilizzo e vengono classificati in cima alla lista in base all'analisi dei log relativi al numero di utenti unici. Ma non è tutto. Oltre alle caratteristiche generali, abbiamo previsto una descrizione dettagliata della composizione attributiva dei rapporti, con esempi di valori e metodologie di calcolo. Una tale dettagliata presentazione dà immediatamente all'utente una risposta su quanto il rapporto sia utile per lui.
Lo sviluppo di questo modulo è stato un passo importante verso la democratizzazione dei dati e ha notevolmente ridotto il tempo necessario per cercare le informazioni richieste. Oltre alla riduzione del tempo di ricerca, è diminuito anche il numero di richieste al team di supporto per consulenze. Non si può non notare un altro utile risultato ottenuto con la creazione di un registro unico dei rapporti: la prevenzione dello sviluppo di rapporti duplicati per diverse unità strutturali.
Glossario aziendale
Tutti sappiamo che anche all'interno della stessa azienda si parla lingue diverse. Sì, si usano gli stessi termini, ma con significati completamente diversi. Il glossario aziendale è stato creato per risolvere questo problema.
Per noi, il glossario aziendale non è semplicemente un manuale che descrive termini e metodologie di calcolo. È un ambiente completo per lo sviluppo, l'approvazione e la validazione della terminologia, costruendo relazioni tra i termini e altri attivi informativi dell'azienda. Prima di entrare nel glossario aziendale, un termine deve passare attraverso tutte le fasi di approvazione con i richiedenti aziendali e il centro di qualità dei dati. Solo dopo diventa disponibile per l'uso.
Come ho già scritto sopra, l'unicità di questo strumento sta nel fatto che consente di creare collegamenti dal livello del termine aziendale ai rapporti utente concreti in cui viene utilizzato, nonché al livello degli oggetti fisici delle basi di dati.

Questo è stato reso possibile tramite l'uso degli identificatori dei termini del glossario nella descrizione dettagliata dei rapporti del registro e nella descrizione degli oggetti fisici delle basi di dati.
Attualmente nel Glossario sono stati definiti e concordati oltre 4000 termini. Il suo utilizzo semplifica e accelera l'elaborazione delle richieste di modifica nei sistemi informativi dell'azienda. Se l'indicatore richiesto è già stato implementato in qualche rapporto, l'utente vedrà immediatamente un insieme di rapporti pronti in cui questo indicatore è stato utilizzato, e potrà decidere se riutilizzare in modo efficace la funzionalità esistente o apportare minime modifiche, senza avviare nuove richieste per lo sviluppo di un nuovo rapporto.
Modulo per la descrizione delle trasformazioni tecniche e DataLineage
Vi chiederete, che moduli sono questi? Non basta implementare il Registro dei rapporti e il Glossario, è necessario anche collegare tutti i termini aziendali al modello fisico dei database. In questo modo siamo stati in grado di completare il processo di formazione del ciclo di vita dei dati dai sistemi sorgente fino alla visualizzazione BI attraverso tutti i livelli del data warehouse. In altre parole, costruire DataLineage.
Abbiamo sviluppato un'interfaccia basata sul formato di descrizione delle regole e della logica di trasformazione dei dati precedentemente utilizzato in azienda. Tramite l'interfaccia si introduce la stessa informazione di prima, ma è diventato obbligatorio definire l'identificativo del termine dal glossario aziendale. Così facciamo un collegamento tra i livelli aziendali e fisici.
A chi serve? Cosa non andava bene con il vecchio formato, con cui abbiamo lavorato per diversi anni? Quanto sono aumentati i costi di lavoro per la formulazione dei requisiti? Con queste domande ci siamo dovuti confrontare durante il processo di implementazione dello strumento. Qui le risposte sono abbastanza semplici: serve a tutti noi, all'ufficio dati della nostra azienda e ai nostri utenti.
In effetti, i dipendenti hanno dovuto adattarsi; inizialmente, ciò ha portato a lievi aumenti del lavoro necessario per la preparazione della documentazione, ma abbiamo risolto questa questione. La pratica, l'identificazione e l'ottimizzazione dei punti critici hanno dato i loro frutti. Abbiamo raggiunto l'obiettivo principale: abbiamo migliorato la qualità dei requisiti sviluppati. I campi obbligatori da compilare, i registri uniformati, le maschere di input e i controlli integrati hanno notevolmente migliorato la qualità delle descrizioni delle trasformazioni. Abbiamo abbandonato la pratica di inviare script come requisiti per lo sviluppo, condividendo le conoscenze che erano accessibili solo al team di sviluppo. La banca dati di metadati formata riduce notevolmente il tempo necessario per svolgere l'analisi di regressione e consente una valutazione rapida dell'impatto delle modifiche a qualsiasi livello dell'IT landscape (report della vetrina, aggregati, fonti).
E cosa c'entrano gli utenti comuni dei report, quali vantaggi hanno per loro? Grazie alla possibilità di costruire Data Lineage, i nostri utenti, anche quelli meno esperti in SQL e altri linguaggi di programmazione, possono ottenere rapidamente informazioni sulle fonti e sugli oggetti su cui si basa un determinato report.
Modulo di controllo qualità dei dati
Tutto ciò di cui abbiamo parlato sopra riguardo alla trasparenza dei dati non è rilevante senza la comprensione che i dati che forniamo agli utenti siano corretti. Uno dei moduli più importanti della nostra concezione di Data Governance è il modulo di controllo qualità dei dati.
Attualmente, questo è un catalogo di controlli per entità selettive. L'obiettivo più vicino per lo sviluppo del prodotto è l'espansione dell'elenco dei controlli e l'integrazione con il registro dei report.
Cosa darà e a chi? Per l'utente finale del registro saranno disponibili informazioni sulle date pianificate e reali di completamento del report, i risultati dei controlli eseguiti con la relativa dinamica, e informazioni sulle fonti caricate nel report.
Per noi, il modulo di qualità dei dati integrato nei processi di lavoro significa:
- Generazione rapida delle aspettative dei clienti.
- Decisioni sull'ulteriore utilizzo dei dati.
- Identificazione preliminare di punti problematici nelle fasi iniziali di lavoro per lo sviluppo di controlli di qualità regolari.
Senza dubbio, questi sono i primi passi per costruire un processo di gestione dei dati completo. Ma siamo certi che solo impegnandoci attivamente in questo lavoro e implementando strumenti di DataGovernance nel flusso di lavoro, garantiremo ai nostri clienti informazione, un elevato livello di fiducia nei dati, trasparenza nella loro acquisizione e aumenteremo la velocità di uscita di nuove funzionalità.
Team DataOffice
Fonte: habr.com
