L’acquisizione di dati in Elasticsearch può essere impegnativa poiché comporta una serie di fasi, tra cui la raccolta, la conversione, la mappatura e il caricamento dei dati da diverse origini dati al tuo indice Elasticsearch. È necessario convertire i dati grezzi in un formato strutturato, ad esempio JSON o CSV, ripulire i dati e mapparli a campi di dati di destinazione. È anche necessario suddividere in batch e memorizzare nel buffer i dati per rendere efficiente il caricamento, in modo che i dati siano disponibili immediatamente per l'esecuzione di query, senza sovraccaricare le risorse di calcolo e di rete del cluster.
Con Amazon Elasticsearch Service è possibile realizzare tutto questo in modo semplice, sfruttando le integrazioni con Amazon Kinesis Data Firehose, Logstash, Amazon CloudWatch, oppure AWS IoT, offrendoti la scelta di selezionare lo strumento di acquisizione più idoneo alle esigenze a seconda del caso.
Acquisizione di dati con Amazon Kinesis Firehose
Con Amazon Kinesis Firehose, è possibile convertire i flussi di dati grezzi dalle origini dati nei formati richiesti dall’indice di Elasticsearch e caricarli in Amazon Elasticsearch Service, senza dover creare una pipeline di elaborazione apposita.
È sufficiente selezionare una funzione AWS Lambda dalla scheda relativa alla configurazione del flusso di distribuzione di Amazon Kinesis Firehose nella Console di gestione AWS. Amazon Kinesis Firehose applicherà automaticamente la funzione AWS Lambda a tutti i record dati di input, caricando i dati trasformati nell'indice di Amazon Elasticsearch.
Amazon Kinesis Firehose fornisce piani Lambda predefiniti senza alcuna modifica o personalizzazione, per la conversione delle origini dati più comuni, ad esempio i log di Apache e i log di sistema in formato JSON e CSV. È possibile inoltre configurare Amazon Kinesis Firehose affinché esegua automaticamente nuovi tentativi sui processi con errori ed effettui il backup dei flussi di dati grezzi. Ulteriori informazioni »
Acquisizione di dati con Logstash
Amazon Elasticsearch Service supporta l'integrazione con Logstash, uno strumento di elaborazione open source che raccoglie dati provenienti da diverse origini, li trasforma e il carica in Elasticsearch. Logstash può essere distribuito con la massima semplicità in Amazon EC2, impostando il dominio di Amazon Elasticsearch come store di back-end per tutti i log in arrivo tramite l'implementazione. Logstash supporta una libreria di filtri predefiniti per semplificare l'esecuzione delle operazioni di trasformazione più comuni, ad esempio la conversione di dati di log non strutturati in dati strutturati tramite condizioni di ricerca, ridenominazione, rimozione, sostituzione e modifica del campi nel report di dati o l'aggregazione di parametri. Ulteriori informazioni »
Acquisizione di dati con Amazon CloudWatch Logs
Amazon CloudWatch Logs consente di monitorare e risolvere i problemi di sistema e applicazioni utilizzando i file di log esistenti generati dal sistema e dall'applicazione o log personalizzati. È possibile configurare un gruppo di log di CloudWatch Logs in modo che inoltri il flusso di dati nel dominio Amazon Elasticsearch Service quasi in tempo reale tramite abbonamento a CloudWatch Logs. Questa integrazione è utile se utilizzi già CloudWatch Logs per raccogliere dati di log e desideri condividere tali dati con gli utenti di Amazon Elasticsearch Service. Ulteriori informazioni »
Acquisizione di dati con AWS IoT
AWS IoT è una piattaforma cloud gestita che consente a dispositivi connessi di interagire in modo semplice e sicuro con applicazioni nel cloud e altri dispositivi. AWS IoT consente di acquisire dati dai dispositivi connessi quali elettrodomestici, sensori incorporati e set-top box per TV. Con la console di gestione AWS, è possibile configurare AWS IoT per il caricamento diretto dei dati in Amazon Elasticsearch Service, fornendo ai clienti l’accesso ai parametri e ai dati IoT quasi in tempo reale. Ulteriori informazioni »
Come scegliere il meccanismo di acquisizione dati più adatto
La scelta di un meccanismo di acquisizione dati più adatto dipende dai requisiti del caso d’uso come la latenza dei dati e il tipo di dati. In caso di volumi elevati, consigliamo l'utilizzo di Amazon Kinesis Firehose, un servizio completamente gestito che ridimensiona automaticamente le risorse in base al throughput dei dati e non richiede alcuna attività di amministrazione. Inoltre permette di trasformare, comprimere e suddividere in batch i dati prima del caricamento nel dominio Amazon Elasticsearch Service. La scelta spesso ricade su servizi già in uso. Se ad esempio i log di un'applicazione vengono già raccolti da CloudWatch Logs, sarà sufficiente caricare tali dati nel dominio Amazon Elasticsearch Service, senza alcuno sforzo aggiuntivo.
Fasi successive
- Inizia a usare Amazon Elasticsearch Service con ilpiano gratuito di AWS »
- Prova questa attività pratica gratuita della durata di 40 minuti »
- Crea una soluzione di analisi di log seguendo questo tutorial dettagliato »
- Consulta la Amazon Elasticsearch Service Getting Started Guide »
Ulteriori informazioni sui prezzi di Amazon Elasticsearch Service