Organizata jofitimprurëse OpenSearch Software Foundation, e kontrolluar nga Linux Foundation, publikoi lëshimin e projektit OpenSearch 3.0, i cili zhvillohet si një fork i platformës për kërkim, analizë dhe ruajtje të të dhënave Elasticsearch dhe ndërfaqes web Kibana. Në zhvillimin e forkut marrin pjesë kompani si Amazon, SAP, Uber, Aryn, Atlassian, Canonical, DigitalOcean dhe NetAp. Kodi shpërndahet nën licencën Apache 2.0.
Forku u krijua në vitin 2021 si përgjigje ndaj kalimit të projektit Elasticsearch në një licencë jo të lirë SSPL (Server Side Public License) dhe ndërprerjes së publikimit të ndryshimeve sipas licencës së vjetër Apache 2.0. Megjithatë, edhe pse Elasticsearch u rikthye në përdorimin e licencës së lirë, projekti OpenSearch nuk e humbi relevancën e tij, pasi vazhdoi të përdorë licencën permissive Apache 2.0 në vend të licencës AGPLv3, në të cilën kaloi Elasticsearch, dhe gjithashtu zhvillohet një sërë shtesash specifike, të cilat ishin ofruar më parë nga kompania Amazon në një distribucion të veçantë Open Distro for Elasticsearch dhe që zëvendësojnë komponentët me pagesë të Elasticsearch.
OpenSearch përfshin motorin e ruajtjes dhe kërkimit OpenSearch, ndërfaqen web dhe ambientin e vizualizimit të të dhënave OpenSearch Dashboards, si dhe një grup këshillash për mësim të makinerisë, mbështetje SQL, gjenerim njoftimesh, diagnostikim të performancës së klasterit, enkriptimin e trafikimit, menaxhimin e qasjes bazuar në rolet (RBAC), autentifikimin përmes Active Directory, Kerberos, SAML dhe OpenID, implementimin e një pikë të vetme hyrjeje (SSO) dhe mbajtjen e një logu të detajuar për auditim.
Ndër ndryshimet në OpenSearch 3.0:
- I është shtuar motorin vektorik (OpenSearch Vector Engine), i cili mund të përdoret për ruajtjen dhe punën me të dhënat që përdoren në sistemet e mësimit të makinerisë. Përshpejtimi i kërkimit vektorik përdor llogaritjet në anën e GPU, të cilat kanë lejuar që shpejtësia e indeksimit të rritet 9.3 herë dhe kostot operative të ulen në 3.75 herë krahasuar me zgjidhjet që përdorin vetëm CPU. Për të organizuar ndërveprimin me burimet e të dhënave, aplikacionet LLM dhe platformat AI, është realizuar mbështetje për protokollin MCP (Model Context Protocol). Mbështetet integrimi me agjentët AI të kompanive Anthropic, LangChain dhe OpenAI.
- U shtua optimizimi që lejon reduktimin e madhësisë së depozitimit të vektorëve k-NN (k-fqinjëve më të afërt) deri në një të tretën, si dhe të reduktojë deri në 30 herë vonesat gjatë ekzekutimit të kërkesave menjëherë pas nisjes (thellimi i ftohtë) duke eliminuar informacionin e tepruar dytësor dhe duke përdorur të dhënat primare për të rikrijuar informacionin e nevojshëm.
- U shtua një mundësi eksperimentale për përdorimin e protokollit gRPC (protobuf mbi gRPC) për transferimin e të dhënave midis klientëve, serverë dhe nyjeve të ruajtjes. Krahasuar me JSON, përdorimi i gRPC lejon uljen e kostove për serailizimin dhe rritjen e performancës duke dërguar njëkohësisht kërkesa të ndryshme në një lidhje TCP.
- U shtua një mod i tërheqjes për marrjen e të dhënave, ku OpenSearch përfiton të dhëna drejtpërdrejt nga burime të rrjedhshme, si Apache Kafka dhe Amazon Kinesis.
- Në klasër u ofrua mundësia e ndarjes së trafikut të lidhur me indeksimin dhe kërkimin. U shtua një API që lejon mbajtjen e operacioneve të regjistrimit dhe lë indeksin të jetë i aksesueshëm vetëm për kërkimin, me qëllim optimizimin e zhvillimit të të dhënave që nuk do të ndryshojnë (konfigurimet ku të dhënat shkruhen një herë dhe lexohet shumë herë).
- U zgjerua integrimi me Apache Calcite dhe u realizua mundësia e përdorimit të gjuhës së kërkimit PPL (Piped Processing Language) për operacionet e kërkimit, filtrimit dhe bashkimit.
- U sigurua identifikimi automatik i llojeve të indekseve. Për indekset me të dhëna të lidhura me regjistrimin e ngjarjeve, u angazhuan optimizime specifike që përshpejtojnë operacionet e analizës së logeve.
- Motori i kërkimit të plotë Lucene u azhurnua në degën 10, ku u përmirësua puna me indekset dhe u rrit performanca e përpunimit paralel të detyrave.
- U shtua përkrahja për modulet Java (Java Platform Module System) për ndarjen e komponentëve në bibliotekat e veçanta. Si version minimal është shpallur publikimi i Java 21.
- U përshpejtua puna me intervalet e vlerave dhe fushat që përmbajnë data dhe numra (shpejtësia e kalimit të grupit të testeve Big5 u rrit me 25%). U përshpejtuan operacionet e agregimit të të dhënave (në testin p90 vonesat u ulën me 75%). Për vektorët k-NN, modaliteti i ndarjes së kërkimit u aktivizua si parazgjedhje, duke rritur 2.5 herë performancën e kërkesave.
Burimi: opennet.ru
