Neprofitna organizacija OpenSearch Software Foundation, pod kontrolom Linux Foundation, objavila je izdanje projekta OpenSearch 3.0, koji se razvija kao fork platforme za pretragu, analizu i skladištenje podataka Elasticsearch i web-interfejsa Kibana. U razvoju forka učestvuju takve kompanije kao što su Amazon, SAP, Uber, Aryn, Atlassian, Canonical, DigitalOcean i NetAp. Kod se distribuira pod licencom Apache 2.0.
Fork je osnovan 2021. godine kao odgovor na prebacivanje projekta Elasticsearch na nepristupačnu licencu SSPL (Server Side Public License) i prekid objavljivanja promena pod starom licencom Apache 2.0. Iako se Elasticsearch vratio korišćenju slobodne licence, projekat OpenSearch nije izgubio važnost, jer se u njemu nastavlja korišćenje permisivne licence Apache 2.0 umesto AGPLv3, na koju je prešao Elasticsearch, kao i razvoj niza specifičnih dodataka, koji su ranije isporučivani od strane kompanije Amazon u posebnom distribuciji Open Distro for Elasticsearch i zamenjuje plaćene komponente Elasticsearch.
OpenSearch uključuje skladišni i pretraživački engine OpenSearch, web-interfejs i okruženje za vizualizaciju podataka OpenSearch Dashboards, kao i skup dodataka za mašinsko učenje, podršku za SQL, generisanje obaveštenja, dijagnostiku performansi klastera, enkripciju saobraćaja, razdvajanje pristupa na osnovu uloga (RBAC), autentifikaciju putem Active Directory, Kerberos, SAML i OpenID, implementaciju jedinstvene tačke ulaza (SSO) i vođenje detaljnog loga za reviziju.
Među promenama u OpenSearch 3.0:
- Dodata je vektorska mašina (OpenSearch Vector Engine), koja se može koristiti za skladištenje i obradu podataka korišćenih u sistemima mašinskog učenja. Da bi se ubrzao vektorski pretraživački proces, angažovana su izračunavanja sa GPU strane, što je omogućilo povećanje brzine indeksiranja 9,3 puta i smanjenje operativnih troškova 3,75 puta u poređenju sa rešenjima koja koriste samo CPU. Za organizovanje interakcije sa izvorima podataka, LLM-aplikacijama i AI-platformama implemented the support for the MCP (Model Context Protocol). Podržava se integracija sa AI-agentima kompanija Anthropic, LangChain i OpenAI.
- Dodana je optimizacija koja omogućava smanjenje veličine skladišta vektora k-NN (k-najbližih suseda) za trećinu, kao i smanjenje latencije prilikom izvršavanja upita odmah nakon pokretanja (hladni start) do 30 puta, uklanjanjem suvišnih sekundarnih informacija i korišćenjem primarnih podataka za rekonstrukciju potrebnih informacija.
- Dodana je eksperimentalna mogućnost korišćenja gRPC protokola (protobuf preko gRPC) za prenos podataka između klijenata, strežniki i čvorova za skladištenje. U poređenju s JSON-om, primena gRPC omogućava smanjenje troškova serijalizacije i povećanje performansi simultanim slanjem različitih zahteva u jednom TCP konekciji.
- Dodani su pull režim za dobijanje podataka, pri čemu OpenSearch direktno zahteva podatke iz tokovnih izvora, kao što su Apache Kafka i Amazon Kinesis.
- U klasteru je omogućeno deljenje saobraćaja vezanog za indeksiranje i pretragu. Dodato je API koje omogućava isključivanje operacija pisanja i ostavlja indeks dostupnim samo za pretragu s ciljem optimizacije rada s podacima koji se neće menjati (konfiguracije u kojima se podaci jednom upisuju i više puta čitaju).
- Proširena je integracija s Apache Calcite i realizovana mogućnost korišćenja jezika upita PPL (Piped Processing Language) za operacije pretrage, filtriranja i spajanja.
- Obezbeđeno je automatsko određivanje tipa indeksa. Za indekse sa podacima koji su povezani sa vođenjem logova, korišćene su specifične optimizacije koje ubrzavaju operacije analize logova.
- Motore za punu tekstualnu pretragu Lucene ažuriran je na granu 10, u kojoj su poboljšana funkcionalnost sa indeksima i poboljšane performanse paralelne obrade zadataka.
- Dodana je podrška za Java module (Java Platform Module System) za razdvajanje komponenti na posebne biblioteke. Kao minimalna verzija navedena je verzija Java 21.
- Poboljšan je rad s opsegom vrednosti i poljima koja sadrže datume i brojeve (brzina prolaza testa Big5 je porasla za 25%). Ubrane su operacije agregacije podataka (u p90 testu latencije su smanjene za 75%). Za vektore k-NN podrazumevano je omogućen režim paralelizacije pretrage segmenata, što je omogućilo povećanje performansi upita za 2.5 puta.
Izvor: opennet.ru
