Organizata joqeveritare OpenSearch Software Foundation, e kontrolluar nga Linux Foundation, publikoi versionin e projektit OpenSearch 3.0, që zhvillon një fork të platformës për kërkimin, analizën dhe ruajtjen e të dhënave Elasticsearch dhe ndërfaqes web Kibana. Në zhvillimin e fork-ut marrin pjesë kompani si Amazon, SAP, Uber, Aryn, Atlassian, Canonical, DigitalOcean dhe NetAp. Kodi shpërndahet nën licencën Apache 2.0.
Fork-u u krijua në vitin 2021 si përgjigje ndaj kalimit të projektit Elasticsearch në një licencë të pabesueshme SSPL (Server Side Public License) dhe ndërprerjes së publikimit të ndryshimeve nën licencën e vjetër Apache 2.0. Pavarësisht rikthimit të Elasticsearch në përdorimin e një license të lirë, projekti OpenSearch nuk ka humbur relevancën e tij, pasi vazhdoi përdorimin e licencës permissive Apache 2.0 në vend të licencës AGPLv3, në të cilën kaloi Elasticsearch, si dhe zhvillohet një seri ndërtimesh specifike, që më parë u ofruan nga Amazon në një shpërndarje të veçantë Open Distro for Elasticsearch dhe zëvendësojnë komponentët me pagesë të Elasticsearch.
OpenSearch përfshin motorin e ruajtjes dhe kërkimit OpenSearch, ndërfaqen web dhe mjedisin e vizualizimit të të dhënave OpenSearch Dashboards, si dhe një grup shtesash për mësimin e makinerive, mbështetje SQL, gjenerimin e njoftimeve, diagnostikimin e performancës së klasterit, enkriptimin e trafikut, ndarjen e aksesit në bazë të roleve (RBAC), autentikimin përmes Active Directory, Kerberos, SAML dhe OpenID, zbatimin e një pike të vetme hyrjeje (SSO) dhe mbajtjen e një regjistri të detajuar për auditim.
Disa nga ndryshimet në OpenSearch 3.0:
- 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ë makinerive. Për të acceleruar kërkimin vektorik, janë angazhuar llogaritje në anën e GPU, duke rritur shpejtësinë e indeksimit me 9.3 herë dhe ulur kostot operative me 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). Integrimi me agjentët AI të kompanive Anthropic, LangChain dhe OpenAI mbështetet.
- Shtuar optimizimi që lejon uljen e madhësisë së ruajtjes së vektorëve k-NN (k-fqinjët më të afërt) me një të tretën, si dhe deri në 30 herë uljen e vonesave gjatë ekzekutimit të kërkesave menjëherë pas nisjes (start i ftohtë) përmes heqjes së informacionit të tepërt të dytë dhe përdorimit të të dhënave fillestare për rikrijimin e informacionit të nevojshëm.
- Shtuar 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ëve dhe nyjeve të ruajtjes. Krahasuar me JSON, përdorimi i gRPC lejon uljen e kostove të serializimit dhe rritjen e performancës përmes dërgimit të shumë kërkesave në një lidhje TCP.
- Shtuar modin pull për marrjen e të dhënave, ku OpenSearch drejtpërdrejt kërkon të dhënat nga burime streaming, si Apache Kafka dhe Amazon Kinesis.
- Në klaster, është ofruar mundësia e ndarjes së trafikut lidhur me indeksimin dhe kërkimin. Shtuar API që lejon çaktivizimin e operacioneve të shkrimit dhe lënien e indeksit të aksesueshëm vetëm për kërkim me qëllim optimizimin e punës me të dhënat që nuk do të ndryshojnë (konfigurime, në të cilat të dhënat shkruhen një herë dhe lexohen shumë herë).
- Rritur integrimi me Apache Calcite dhe realizuar mundësia e përdorimit të gjuhës së pyetjeve PPL (Piped Processing Language) për operacionet e kërkimit, filtrimit dhe bashkimit.
- Siguruar përcaktimin automatik të llojit të indekseve. Për indekset me të dhëna të lidhura me regjistrimin e ditarëve, janë angazhuar optimizime specifike që shpejtojnë operacionet e analizës së ditarëve.
- Motori i kërkimit të plotëtekstual Lucene është përditësuar në degën 10, në të cilën është përmirësuar puna me indekset dhe është rritur performanca e procesimit paralel të detyrave.
- Shtuar mbështetje për modulat Java (Java Platform Module System) për ndarjen e komponentëve në biblioteka të veçanta. Si version minimal është shpallur lëshimi Java 21.
- Rritur shpejtësinë e punës me intervale vlerash dhe fusha që përmbajnë data dhe numra (shpejtësia e testit Big5 u rrit me 25%). Shpejtuar operacionet e agregimit të të dhënave (në testin p90 vonesat u ulën me 75%). Për vektorët k-NN, si parazgjedhje është aktivizuar mënyra e ndarjes së kërkimeve të segmenteve, që lejoi një rritje prej 2.5 herë të performancës së kërkesave.
Burimi: opennet.ru
