A OpenSearch Software Foundation, a Linux Foundation által irányított non-profit szervezet, kiadta az OpenSearch 3.0 projekt frissítését, amely az Elasticsearch keresési, elemzési és adatkezelési platformjának és a Kibana webes felületének forkját fejleszti. A fork fejlesztésében olyan cégek vesznek részt, mint az Amazon, SAP, Uber, Aryn, Atlassian, Canonical, DigitalOcean és NetAp. A kód Apache 2.0 licenc alatt terjesztésre kerül.
A forkot 2021-ben hozták létre válaszként az Elasticsearch projekt nem szabad SSPL (Server Side Public License) licenc alá való átállására és a régi Apache 2.0 licenc alatti változások közzétételének leállítására. Annak ellenére, hogy az Elasticsearch visszatért a szabad licenc használatához, az OpenSearch projekt relevanciáját nem vesztette el, mivel továbbra is az Apache 2.0 engedélyköteles licencet használja az AGPLv3 licenc helyett, amelyre az Elasticsearch áttért, emellett számos specifikus kiegészítő fejlesztésében is folytatódik, amelyeket az Amazon korábban külön Open Distro for Elasticsearch disztribúcióval szállított és amelyek helyettesítik az Elasticsearch fizetős komponenseit.
Az OpenSearch tartalmazza az OpenSearch tároló- és keresőmotort, a webes felületet és az OpenSearch Dashboards adatok vizualizálására szolgáló környezetet, valamint egy csomag kiegészítőt gépi tanuláshoz, SQL támogatáshoz, értesítések generálásához, klaszter teljesítménydiagnosztikához, forgalom titkosításhoz, szerep alapú hozzáférés-vezérléshez (RBAC), Active Directory, Kerberos, SAML és OpenID általi hitelesítéshez, egyetlen bejelentkezési pont (SSO) megvalósításához és részletes auditnaplózásához.
Az OpenSearch 3.0-ban történt változások közül:
- Hozzáadásra került egy vektormotor (OpenSearch Vector Engine), amely a gépi tanulási rendszerekben felhasznált adatok tárolására és kezelésére alkalmazható. A GPU oldali számításokat használnak a vektorkeresés gyorsítására, amelyek lehetővé tették az indexelési sebesség 9,3-szoros növelését és a működési költségek 3,75-szörös csökkentését azokhoz a megoldásokhoz képest, amelyek csak CPU-t használnak. Az adatforrásokkal, LLM-alkalmazásokkal és AI-platformokkal való interakció érdekében megvalósításra került az MCP (Model Context Protocol) protokoll támogatása. Támogatott az Anthropic, LangChain és OpenAI cégek AI-ügynökeivel való integráció.
- Hozzáadva egy optimalizálás, amely lehetővé teszi a k-NN (k legközelebbi szomszédok) vektor tárolásának méretének egyharmadra csökkentését, valamint a késleltetések akár 30-szoros csökkentését a lekérdezések végrehajtása során a rendszer indításakor (hideg indítás) a felesleges másodlagos információk eltávolításával és az elsődleges adatok használatával a szükséges információk újbóli létrehozásához.
- Hozzáadva egy kísérleti lehetőség a gRPC (protobuf gRPC-n) protokoll használatára az adatok átadására az ügyfelek és a tároló csomópontok között. szerverek A JSON-hoz képest a gRPC alkalmazása csökkenti a sorozatba alakítás költségeit és növeli a teljesítményt, mivel különböző lekérdezések egyszerre küldhetők ugyanazon TCP-kapcsolaton.
- Hozzáadva egy pull-mód az adatok beszerzésére, amely során az OpenSearch közvetlenül kéri az adatokat a folyamatábrás forrásokból, mint az Apache Kafka és az Amazon Kinesis.
- A klaszterben lehetőség nyílik a forgalom különválasztására az indexelés és a keresés között. Hozzáadva egy API, amely lehetővé teszi a írási műveletek letiltását, és az indexet csak keresésre elérhetővé teszi, célzottan az adatok optimalizálására, amelyek nem fognak változni (olyan konfigurációk, ahol az adatok egyszer íródnak és többször olvashatók).
- Bővült az integráció az Apache Calcite-tel, és lehetőség nyílt a PPL (Piped Processing Language) lekérdező nyelv használatára keresési, szűrési és egyesítési műveletekhez.
- Automatikusan meghatározhatóak az indexek típusa. A naplózáshoz kapcsolódó adatokkal rendelkező indexek esetén specifikus optimalizálásokat alkalmaznak a naplóelemzési műveletek felgyorsítására.
- A Lucene teljes szövegű keresőmotor frissítve lett a 10-es ágra, amely javítja az indexek kezelését és növeli a párhuzamos feladatfeldolgozás teljesítményét.
- Hozzáadva a Java-modulok támogatása (Java Platform Module System) az összetevők külön könyvtárakra bontásához. Minimális verzióként a Java 21-es kiadása van megjelölve.
- Felgyorsult a munkavégzés az értéktartományokra és a dátumokat és számokat tartalmazó mezőkre (a Big5 tesztkészlet átlagos sebessége 25%-kal nőtt). Az adatok aggregálásának műveletei felgyorsultak (a p90 késleltetési tesztben 75%-kal csökkentek). A k-NN vektoroknál alapértelmezés szerint engedélyezve van a szegmensek párhuzamos keresésének módja, amely 2,5-szeresére növelte a lekérdezések teljesítményét.
Forrás: opennet.ru
