OpenSearch è una suite di analisi dei dati e ricerca distribuita, controllata dalla community, con licenza Apache 2.0 e open source al 100% utilizzata per un'ampia gamma di casi d'uso come il monitoraggio delle applicazioni in tempo reale, l'analisi dei dati di log e la ricerca di siti Web. OpenSearch fornisce un sistema altamente scalabile per fornire accesso e risposta rapidi a grandi volumi di dati con uno strumento di visualizzazione integrato, OpenSearch Dashboards, che semplifica l'esplorazione dei dati da parte degli utenti. OpenSearch si basa sulla libreria di ricerca Apache Lucene e supporta una serie di funzionalità di ricerca e analisi dei dati come la ricerca k-nearest neighbors (KNN), SQL, Anomaly Detection, Machine Learning Commons, Trace Analytics, la ricerca full-text e altro ancora.

D: Perché dovrei usare OpenSearch?

OpenSearch consente di importare, proteggere, cercare, aggregare, visualizzare e analizzare facilmente i dati per una serie di casi d'uso come l'analisi dei log, la ricerca di applicazioni, la ricerca aziendale e altro ancora. Con OpenSearch, trai vantaggio dall'avere un prodotto open source al 100% che puoi utilizzare, modificare, estendere, monetizzare e rivendere come desideri. Esiste un numero crescente di partner del progetto OpenSearch che offrono una varietà di servizi, come assistenza professionale, funzionalità avanzate e servizi OpenSearch gestiti. Il progetto OpenSearch continua a fornire una suite di ricerca e analisi dei dati sicura e di alta qualità con una ricca roadmap di funzionalità nuove e innovative.

D: Perché è stato creato OpenSearch?

Gli sviluppatori adottano il software open source per molte ragioni, una delle più importanti è la libertà di utilizzare quel software dove e come desiderano. Il 21 gennaio 2021, Elastic NV ha annunciato che avrebbe cambiato la propria strategia di licenza software e non avrebbe rilasciato nuove versioni di Elasticsearch e Kibana con la licenza permissiva Apache, Versione 2.0 (ALv2). Invece, Elastic sta rilasciando Elasticsearch e Kibana con il codice sorgente disponibile con la licenza Elastic o la licenza Server Side Public License (SSPL). Queste licenze non sono open source e non offrono agli utenti le stesse libertà. Poiché alcuni sviluppatori desiderano che il loro software sia open source e poiché vogliono evitare il lock-in di un singolo fornitore, abbiamo deciso di creare e mantenere un fork dell'ultima versione ALv2 di Elasticsearch e Kibana. Il fork si chiama OpenSearch ed è disponibile con la licenza ALv2.

D: In che modo OpenSearch è correlato al servizio OpenSearch di Amazon?

Il servizio OpenSearch di Amazon è un servizio gestito da AWS che consente di eseguire e scalare cluster OpenSearch senza doversi preoccupare della gestione, del monitoraggio e della manutenzione dell'infrastruttura o di acquisire competenze approfondite nella gestione dei cluster OpenSearch. Abbiamo lanciato il supporto per OpenSearch nel servizio OpenSearch di Amazon nel settembre 2021, partendo dalla versione 1.0, e abbiamo rinominato il servizio da servizio Elasticsearch di Amazon a servizio OpenSearch di Amazon. Da allora, il servizio ha supportato diverse nuove funzionalità che sono state aggiunte a OpenSearch in più versioni. Alcuni esempi sono il supporto per la replica tra cluster, l'analisi delle tracce, i flussi di dati, le trasformazioni, una nuova interfaccia utente per l'osservabilità e i notebook in OpenSearch Dashboards. Inoltre, sono stati apportati miglioramenti significativi a k-NN, al rilevamento delle anomalie, a PPL, a SQL e agli avvisi. Sebbene il servizio OpenSearch di Amazon continui a supportare le versioni legacy open-source di Elasticsearch (fino alla 7.10), consigliamo vivamente di utilizzare OpenSearch sul servizio per beneficiare delle nuove funzionalità che vengono sviluppate come parte delle versioni open-source di OpenSearch.

D: Il servizio OpenSearch di Amazon supporta nuove versioni di Elasticsearch oltre la versione 7.10?

No. Le versioni di Elasticsearch oltre la versione 7.10 non sono open source e non vengono rilasciate con licenza ALv2 permissiva. Nonostante il servizio OpenSearch di Amazon continuerà a supportare le versioni open source di Elasticsearch fino alla 7.10, in futuro sfrutteremo le nuove versioni open source di OpenSearch per offrire funzionalità e innovazioni ai clienti che utilizzano il servizio OpenSearch di Amazon per i vari casi d'uso, come analisi dei log, ricerca e osservabilità.

D: OpenSearch mantiene la compatibilità e la parità di funzionalità con le nuove versioni di Elasticsearch?

La roadmap di OpenSearch è guidata dalla comunità e varie organizzazioni, tra cui AWS, contribuiscono con nuove funzionalità al codice open source. OpenSearch viene utilizzato per un'ampia gamma di casi d'uso come il monitoraggio delle applicazioni in tempo reale, l'analisi dei dati di log e la ricerca di siti Web. La roadmap di OpenSearch deve essere considerata indipendente da quella di Elasticsearch e l'obiettivo di OpenSearch sarà quello di fornire nuove funzionalità e innovazioni per la comunità e i clienti che lo richiederanno. Nonostante OpenSearch possa includere funzionalità simili alle nuove funzionalità disponibili in Elasticsearch (e viceversa), l'implementazione di tutte le funzionalità è unica tra i due progetti. L'obiettivo principale di OpenSearch sarà quello di costruire ciò che meglio si adatta alle esigenze della comunità OpenSearch e dei nostri clienti.

D: Quali sono le funzionalità di OpenSearch?

Funzionalità Vantaggio
Sicurezza avanzata Offre caratteristiche di crittografia, autenticazione, autorizzazione e verifica. Includono integrazioni con Active Directory, LDAP, SAML, Kerberos, token Web JSON e altro. OpenSearch fornisce anche un controllo granulare degli accessi basato sui ruoli a indici, documenti e campi.
Funzionalità di ricerca integrate Offre una serie di funzionalità che consentono di personalizzare l'esperienza di ricerca, come le query full-text, il completamento automatico, la ricerca a scorrimento, il punteggio e la classifica personalizzabili e altro ancora.
Sintassi delle query SQL Fornisce la sintassi familiare delle query SQL. Utilizza aggregazioni, raggruppamenti e frasi WHERE per esaminare i dati. Legge i dati come documenti JSON o tabelle CSV in modo da avere la flessibilità di utilizzare il formato più adatto alle tue esigenze.
Supporto di ricerca in SQL Consente di utilizzare la sintassi nota delle query SQL e di accedere a un ricco set di funzionalità di ricerca, come il fuzzy matching, il boosting, il phrase matching e altro ancora.
Data Prepper Data Prepper è un raccoglitore di dati lato server in grado di filtrare, arricchire, trasformare, normalizzare e aggregare i dati per l'analisi e la visualizzazione downstream. Data Prepper consente agli utenti di creare pipeline personalizzate per migliorare la visione operativa delle applicazioni.
Trace Analytics Trace Analytics consente di importare e visualizzare i dati di OpenTelemetry in OpenSearch. Questi dati possono aiutarti a individuare e risolvere i problemi di prestazioni nelle applicazioni distribuite.
Analisi dell'applicazione Utilizza l'analisi delle applicazioni per creare applicazioni di osservabilità personalizzate per visualizzare lo stato di disponibilità dei tuoi sistemi, dove puoi combinare gli eventi di log con i dati di traccia e metrica in un'unica vista dello stato generale del sistema. In questo modo puoi passare rapidamente tra registri, tracce e metriche per individuare l'origine di qualsiasi problema.
Piped Processing Language Piped Processing Language fornisce una sintassi di query familiare con un set completo di comandi delimitati da pipe (|) per eseguire la query dei dati.
Pannelli operativi Crea pannelli operativi per organizzare le visualizzazioni di osservabilità generate utilizzando il Piped Processing Language (PPL).
Analisi di eventi Utilizza le query Piped Processing Language (PPL) per creare e visualizzare in modo interattivo diverse visualizzazioni dei dati, incluse le correlazioni dei log di traccia.
Libreria di ML Commons Utilizza una serie di algoritmi di machine learning come kmeans e il rilevamento delle anomalie per formare modelli e prevedere le tendenze dei tuoi dati. ML Commons si integra direttamente con PPL e l'API REST.
Creazione di report Pianifica, esporta e condividi report da pannelli di controllo, ricerche salvate, avvisi e visualizzazioni. 
Rilevamento di anomalie Sfrutta il rilevamento delle anomalie di machine learning basato sull'algoritmo Random Cut Forest (RCF) per rilevare automaticamente le anomalie man mano che i dati vengono importati. Utilizza anche gli avvisi per monitorare i dati quasi in tempo reale e inviare automaticamente notifiche di avviso. 
Gestione degli indici Definisci policy personalizzate per automatizzare le attività di gestione degli indici di routine, come il rollover e l'eliminazione, e applicali agli indici e ai modelli di indice.
Trasformazioni di indici Crea una vista riassuntiva dei dati incentrata su determinati campi, in modo da poter visualizzare o analizzare i dati in modi diversi. Ad esempio, supponiamo che disponga di dati sulle compagnie aeree sparsi in più campi e categorie e che tu voglia visualizzare un riepilogo dei dati organizzato per compagnia aerea, trimestre e prezzo. Puoi utilizzare un processo di trasformazione per creare un nuovo indice riassuntivo organizzato per categorie specifiche.
Rollup di indici Scegli i campi che ti interessano e usa il rollup di indici per creare un nuovo indice con solo quei campi aggregati in bucket temporali più comuni. Puoi archiviare mesi o anni di dati storici a una frazione del costo e con le stesse prestazioni di query.
Analizzatore delle prestazioni e framework RCA Esegui la query di numerosi parametri e aggregazioni delle prestazioni del cluster. Utilizza PerfTop, l'interfaccia a riga di comando (CLI) per visualizzare e analizzare rapidamente questi parametri. Utilizza il framework di analisi della causa principale (RCA) per analizzare i problemi di prestazioni e affidabilità nei cluster.
Ricerca asincrona Esegui query complesse senza preoccuparti del timeout delle query e con le query di ricerca asincrona eseguite in background. Tieni traccia dell'avanzamento delle query e recupera i risultati parziali non appena diventano disponibili.
Trace Analytics Importa e visualizza i dati di OpenTelemetry per le applicazioni distribuite. Visualizza il flusso di eventi tra queste applicazioni per identificare i problemi di prestazioni.
Avvisi Monitora automaticamente i dati e invia automaticamente notifiche di avviso alle parti interessate. Con un'interfaccia intuitiva e una potente API, imposta, gestisci e monitora facilmente gli avvisi. Crea condizioni di avviso altamente specifiche utilizzando il linguaggio di query completo e le funzionalità di scripting di OpenSearch.
Avvisi a livello di bucket Crea policy di avviso che segnalino le tendenze raggruppate nei dati. Ad esempio, puoi emettere avvisi per ogni host che ha una CPU media superiore alla soglia desiderata.
Replica tra cluster Replica indici, mappature e metadati da un cluster OpenSearch a un altro per creare ridondanza tra cluster o per scaricare le query di report su un cluster secondario.
Ricerca k-NN Utilizzando il machine learning, esegui l'algoritmo di ricerca del vicino più prossimo su miliardi di documenti in migliaia di dimensioni con la stessa facilità di esecuzione di qualsiasi normale query OpenSearch. Utilizza aggregazioni e frasi di filtro per perfezionare ulteriormente le operazioni di ricerca di similarità. I poteri di ricerca per similarità k-NN utilizzano casi d’uso come suggerimenti sui prodotti, rilevamento di frodi, ricerca di immagini e video, ricerca di documenti correlati e altro ancora.
Notebook di pannelli di controllo Combina pannelli di controllo, visualizzazioni, testo e altro per fornire contesto e spiegazioni dettagliate durante l'analisi dei dati.
Client OpenSearch OpenSearch supporta una serie di client di linguaggi come Go, JavaScript, Python, Java e altri ancora. Utilizza questi client per creare applicazioni che si integrino direttamente con OpenSearch.

D: Chi sponsorizza e mantiene OpenSearch?

Molte organizzazioni tra cui AWS, SAP, CapitalOne, RedHat, Logz.io, Aiven.io, Bonsai, Logit.io, InstaCluster e BAInsight hanno pubblicamente sostenuto OpenSearch.

Incoraggiamo e accettiamo i contributi della comunità e non richiediamo un CLA (Contributor License Agreement) per farlo. Inoltre, se sei un collaboratore attivo e vuoi assumere maggiori responsabilità nel progetto, abbiamo definito un processo per i non dipendenti di AWS per ottenere i diritti di manutentore nei repository del progetto OpenSearch qui

D: Qual è il futuro di OpenSearch?

Abbiamo lanciato la prima versione disponibile al pubblico di OpenSearch versione 1.0 nel luglio 2021 e da allora abbiamo lanciato 4 nuove versioni, di cui OpenSearch 2.0 è l'ultima. Grazie al grande interesse e al sostegno della comunità, abbiamo introdotto diverse nuove funzionalità che riguardano casi d'uso fondamentali come l'analisi dei log, la ricerca e l'osservabilità. Queste aree continuano a essere temi importanti per i futuri miglioramenti sia di OpenSearch che del nostro livello di visualizzazione OpenSearch Dashboards. Consulta la roadmap per una panoramica rapida delle aree chiave su cui si basa OpenSearch. 

D: Come viene rilasciata la licenza di OpenSearch?

Tutto il software nel progetto OpenSearch è rilasciato con la licenza Apache, versione 2.0 (ALv2). ALv2 garantisce diritti di utilizzo ben compresi e permissivi che corrispondono alle libertà che le persone si aspettano da un software open source: libertà come poter utilizzare, modificare, estendere, monetizzare e rivendere il software open source dove e come vogliono. Per OpenSearch, riteniamo che questa licenza consentirà un'ampia adozione e contributi a beneficio di tutti i membri della community. Abbiamo anche pubblicato linee guida per l'uso permissivo per il marchio OpenSearch, affinché sia possibile utilizzare il nome per promuovere le offerte.

D: Dove posso trovare ulteriori informazioni sulla compatibilità dei client e delle API di OpenSearch?

Vedi le domande frequenti sul sito Web OpenSearch open-source. Le domande frequenti sono anche un'ottima fonte di informazioni su strumenti e plugin, sulla compatibilità degli aggiornamenti, sulla comunità in generale e su come contribuire e beneficiare di OpenSearch.

Altre risorse

OpenSearch include alcuni codici Elasticsearch con licenza Apache di Elasticsearch B.V. e altri codici sorgente. Elasticsearch B.V. non è la fonte dell’altro codice sorgente. ELASTICSEARCH è un marchio registrato di Elasticsearch B.V.