Reading Time: 7 minutes

Abbiamo testato l’ultima release di Opensearch, la 2.4.0.

Tanti gli upgrade, soprattutto in ambito sicurezza, e interessanti funzionalità come la possibilità di integrare modelli di machine learning. Diversi passi avanti che suggeriscono un’interessante road map, da seguire con attenzione nei mesi a venire.

Vediamo un po’ di dettaglio:

Ricerca Semantica

Qualche mese fa avevamo già parlato dello stato di avanzamento nel campo della ricerca semantica, oggi proseguiamo la nostra analisi scoprendo che cosa si sta muovendo in Opensearch in questo specifco settore.

La mission degli strumenti di search moderni nel migliorare sempre di più la precisione e la pertinenza delle risposte alle Query è in continua evoluzione, seguendo di pari passo lo sviluppo e l’ottimizzazione di algoritmi di NLP e Deep Learning.

L’obiettivo di queste integrazioni è quello di istruire i motori di ricerca al fine di comprendere meglio il contesto dei contenuti testuali e restituire risposte più appropriate.

 

Approfondimenti

Abbiamo recentemente affrontato concetti come la Vector similarity e algoritmi di classificazione

L’evoluzione nell’ambito della ricerca semantica è nata quando sono stati introdotti gli algoritmi di classificazione, allo scopo di potenziare la ricerca dando alla macchina un set di informazioni aggiuntive, necessarie a comprendere la sfera semantica di un contenuto.
La tecnica più accreditata è quella di considerare i singoli elementi testuali in uno spazio vettoriale, per sfruttare a pieno la scienza degli algoritmi di clustering e similarità. L’algoritmo attualmente più utilizzato è il k-NN (K-nearest neighbors) utilizzato per classificare gli oggetti sulla base della loro similarità o associazione a quelli più vicini.

In Opensearch 2.4.0 vediamo quindi l’introduzione di un plugin (Neural Search) che permette di eseguire ricerche semantiche automatiche sui loro documenti, migliorando i risultati della ricerca con significati e contesti aggiuntivi forniti da modelli di apprendimento automatico (ML). Affrontiamo questo aspetto in maggiore dettaglio nel paragrafo seguente.

Un nuovo plugin Search comparison è stato ideato per permettere un confronto diretto di due impostazioni di ricerca in parallelo, in modo da facilitare le analisi di confronto tra due diverse configurazioni.

Modelli ML integrabili

L’upload di modelli di machine learning è reso possibile dall’introduzione di un framework: Machine Learning (ML) Model Serving Framework (trovate maggiori informazioni qui)

Operazione non semplice per altro, considerando che i modelli deep learning possono superare facilmente i 100MB. Il plugin si occupa di gestire i modelli in ingresso partizionando il file e inserendo i Chunks in un indice specifico.
Visto che si tratta di una feature sperimentale è consigliabile procedere con modelli di dimensioni ridotte in una prima fase, per evitare eventuali downtime o disservizi.

In questi screen vediamo due esempi di richiesta e risposta del modello nel plugin. Nella richiesta vediamo la creazione della pipeline con il comando:

PUT _ingest/pipeline/<pipeline_name>

E la vettorizzazione del documento attraverso il processore Text_embedding

Come ripetuto diverse volte nella presentazioni ufficiali della release, Neural Search e il framework per l’upload dei modelli sono feature sperimentali, pertanto è consigliabile procedere con l’inserimento di modelli di dimensioni ridotte in una prima fase, per evitare eventuali downtime o disservizi.

Observability

Altro filone che osserviamo sempre con molta attenzione è quello relativo alle nuove feature per l’Observability, ovvero quell’insieme di capacità di monitoraggio e controllo delle performance che permettono di avere pieno controllo di un sistema informatico.
Opensearch
presenta una serie di miglioramenti in questo senso.

 

  • Maggiore granularità: è stata migliorata la modalità di visualizzazione di log e metriche, con meccanismi di aggregazione avanzati.
  • Migliore visibilità delle relazioni tra i dati: adesso è più semplice correlare metriche e dati di utilizzo provenienti da varie sorgenti
  • Log Patterns: è stato infine aggiunto un sistema di generazione automatica di pattern, che riduce di molto i tempi di identificazione di schemi ricorrenti. Molto interessante l’approccio, basato sull’analisi delle espressioni regolari contenute nei dati raw (potete trovare informazioni aggiuntive a questo link)

Sicurezza

Eccoci arrivati a quello che probabilmente è il punto più interessante della release 2.4.0, l’introduzione del plugin Security Analytics.
Questo plugin configura infatti Opensearch come un SIEM a tutti gli effetti, comprensivo non solo di elementi di controllo e monitoraggio, ma anche sistemi di prevenzione e risposta agli attacchi.

Per dare un’idea basta dare un’occhiata alle feature disponibili:

  • Detectors (powered by MITRE ATT&CK ): Opensearch mette a disposizione la knowledge base di MITRE ATT&CK, con una set list di rilevatori, messi a disposizione e già ampiamente utilizzati in altre soluzioni.
  • Log Mapping: una lista di Log tipati pienamente supportati, come DNS Logs, AD/LDAP, System Logs e molti altri.
  • Detection Rules: set di regole preconfigurate applicate automaticamente ai dati in ingestion. Si basa sul repository Open Source Sigma Rules, disponibile qui: https://github.com/SigmaHQ/sigma
  • Alerting: sistema di allarmi associato ai parametri precedentemente descritti. Completamente customizzabile sia nell’impostazione delle soglie che nella tipologia di comunicazione.

Regole: configurazione e utilizzo

Il modulo Rules permette di visualizzare lo schema completo delle regole e filtrarle per tipologia, grado di severità e sorgente. 
È possibile customizzare le regole esistenti o crearne di nuove. Presente anche la funzione duplica regola.
(NB: in caso di modifica di una regola Sigma, questa non verrà sovrascritta, ma verrà creato un duplicato)

Security Findings

Opensearch 2.4.0 presenta anche un modulo che permette di registrare potenziali minacce e visualizzarle all’interno di un’interfaccia dedicata. In questo caso la dashboard presenta la possibilità di filtrare per severità, tipologia di log o impostare un range temporale.

Per maggiori informazioni potete dare un’occhiata alle funzionalità nella documentazione ufficiale

Anche Security Analytics è un Plugin Sperimentale, che necessita sicuramente di un rodaggio e si alimenterà con i feedback della community e dei vari partner.

In conlusione

Opensearch è in piena fase evolutiva, e una nuova minor release (2.5.0) è già stata pianificata per gennaio 2023.
Come detto inizialmente molte delle nuove feature presentano la label experimental, ma già da questi primi passi si nota un grande potenziale ma soprattutto una grande propensione a sfruttare al massimo tutti i feedback della community.

Per adesso ci fermiamo qui, ma se volete ulteriori approfondimenti sulla soluzione non esitate a contattarci.

 

Seacom è partner di Opensearch per l’Italia.
Vuoi scoprire come integrare Opensearch nella tua infrastruttura?

Contattaci per una demo gratuita!