Vai al contenuto

Servizio di Interrogazione dei Dataset

Il Dataset Query Service è un componente software progettato per consentire l’accesso e l’interrogazione di file archiviati in uno storage remoto.
Il servizio è pensato per essere utilizzato principalmente da altri sistemi applicativi tramite API REST, abilitando scenari di integrazione automatica tra servizi software.

L’obiettivo principale del servizio è permettere ai sistemi di:

  • esplorare i file disponibili all’interno di uno spazio di archiviazione remoto;
  • individuare file specifici tramite ricerche per nome;
  • recuperare informazioni contenute all’interno dei file.

In questo modo i dati archiviati nello storage possono essere utilizzati dinamicamente da applicazioni e workflow digitali, evitando la consultazione manuale dei file.


Gestione dei dati nello storage

I dataset interrogabili dal servizio sono memorizzati in uno storage compatibile con protocollo S3, implementato tramite MinIO.

I file presenti nello storage possono essere, ad esempio:

  • fogli Excel
  • file CSV
  • altri formati strutturati utilizzati per la gestione dei dati

Il servizio si collega allo storage remoto e permette ai sistemi applicativi di interrogare i contenuti attraverso un’interfaccia standardizzata basata su API.

In questo modo lo storage diventa una fonte dati interrogabile, integrabile nei flussi applicativi.


Funzionalità delle API REST

Il servizio espone una serie di API che permettono di accedere ai dati archiviati nello storage.

Le principali funzionalità disponibili sono:

  • elenco dei file disponibili nello storage;
  • ricerca di file tramite nome o parte del nome;
  • ricerca di valori specifici all’interno dei file.

Le API consentono quindi di utilizzare i dataset come risorsa interrogabile da altri servizi o componenti software.


Architettura del servizio

Il servizio è progettato secondo una struttura applicativa a livelli, che separa le responsabilità tra gestione delle richieste API, logica applicativa e accesso ai dati.

L’architettura logica può essere schematizzata come segue:

Dataset Query Service

In questo modello:

  • il client applicativo invia richieste HTTP al servizio;
  • il servizio API riceve e gestisce le richieste;
  • il livello di servizio esegue le operazioni sui dati;
  • lo storage MinIO contiene i file interrogati.

Questa separazione consente di mantenere il sistema modulare e facilmente estendibile.


Interrogazione dei file

Il servizio consente di recuperare informazioni dai file attraverso diverse modalità di interrogazione.

Elenco dei file disponibili

Una prima funzionalità permette di recuperare la lista dei file presenti nello storage.
Questo consente ai sistemi applicativi di conoscere quali dataset sono disponibili per eventuali elaborazioni o interrogazioni successive.


Ricerca di file per nome

È possibile effettuare ricerche di file utilizzando:

  • il nome completo del file
  • una parte del nome

Il servizio restituisce tutti i file che corrispondono al criterio di ricerca, consentendo di individuare rapidamente il dataset desiderato.


Ricerca di valori all’interno dei file

Una funzionalità più avanzata consente di interrogare direttamente il contenuto dei file.

Il flusso operativo è il seguente:

  1. il sistema richiedente indica il file da analizzare;
  2. il servizio recupera il file dallo storage remoto;
  3. il contenuto del file viene caricato in una struttura dati tabellare;
  4. viene eseguita una ricerca del valore richiesto all’interno dei dati;
  5. i risultati vengono restituiti al sistema richiedente.

La ricerca può essere effettuata:

  • sull’intero dataset;
  • su una specifica colonna, se indicata nella richiesta.

Questo permette di utilizzare i dataset archiviati come fonte interrogabile per applicazioni di analisi, controllo o monitoraggio.


Flusso operativo di interrogazione

Il processo di ricerca di informazioni all’interno dei dataset può essere sintetizzato nel seguente flusso:

  1. Un sistema applicativo invia una richiesta al servizio tramite API REST.
  2. Il servizio verifica i parametri della richiesta.
  3. Il file richiesto viene recuperato dallo storage MinIO.
  4. Il contenuto del file viene elaborato e trasformato in struttura tabellare.
  5. Il servizio esegue la ricerca del valore richiesto.
  6. I risultati vengono restituiti al sistema richiedente.

Questo meccanismo consente di interrogare i dataset senza doverli scaricare manualmente o analizzare localmente.


Integrazione nei sistemi applicativi

Il servizio è progettato per essere utilizzato principalmente in scenari machine-to-machine, nei quali applicazioni software interagiscono tra loro tramite API.

Grazie a questo approccio:

  • i dataset possono essere interrogati automaticamente da altri sistemi;
  • i dati archiviati diventano parte dei flussi informativi digitali;
  • è possibile integrare facilmente il servizio in architetture basate su microservizi.

Il Dataset Query Service consente quindi di trasformare uno storage di file in una fonte dati interrogabile, accessibile in modo strutturato e integrabile nei processi applicativi.