इस प्रोजेक्ट के बारे में

Aerospike Graph Service (AGS) एक JVM-आधारित ग्राफ डेटाबेस इंजन है जो WebSocket पर Apache TinkerPop 3.7.x Gremlin वायर प्रोटोकॉल को लागू करता है और ग्राफ डेटा को Aerospike क्लस्टर में संग्रहीत करता है। वर्टिसेस और एजेस को पैक्ड ऑन-डिस्क लेआउट में रखा जाता है जो एडजेसेंसी जानकारी को सह-स्थित करता है, जिससे अधिकांश ट्रैवर्सल हॉप्स एक ही Aerospike रीड में हल हो जाते हैं। सेवा Gremlin ट्रैवर्सल्स को कुशल Aerospike ऑपरेशंस में अनुवादित करती है, Aerospike-विशिष्ट क्वेरी-प्लानिंग ऑप्टिमाइज़ेशन लागू करती है, और परिणामों को किसी भी TinkerPop-संगत ड्राइवर (gremlin-python, gremlin-javascript, Java के लिए gremlin-driver, आदि) को स्ट्रीम करती है। मुख्य क्षमताएँ शामिल हैं: - पैमाने पर सिंगल-डिजिट मिलीसेकंड p99 के साथ कम-विलंबता वाली OLTP ग्राफ क्वेरीज़। - पूरे ग्राफ पर GraphComputer जॉब्स (PageRank, connected components, कस्टम VertexPrograms) चलाने के लिए Spark-समर्थित OLAP मॉड्यूल। - Spark-आधारित बल्क लोडर जो CSV, GraphML, या GraphSON फ़ाइलों को सीधे Aerospike डेटा मॉडल में इनजेस्ट करता है, तेज़ प्रारंभिक लोड के लिए। - Aerospike से विरासत में मिली हॉरिजॉन्टल स्केलिंग, मजबूत स्थिरता, पूर्वानुमेय सब-मिलीसेकंड रीड्स, हाइब्रिड-मेमोरी आर्किटेक्चर, और क्रॉस-डेटासेंटर रेप्लिकेशन। - मानक Gremlin इंटरफ़ेस; किसी कस्टम क्वेरी भाषा या ड्राइवर की आवश्यकता नहीं। परिनियोजन Docker-अनुकूल है। graph-service-examples डायरेक्टरी में एक docker-compose फ़ाइल AGS, एक Aerospike डेटाबेस, और Zipkin को एक सा शुरू कर सकती है। मौजूदा Aerospike क्लस्टर्स के लिए, AGS कंटेनर को क्लस्टर के होस्ट, पोर्, और नेमस्पेस की ओर इशारा करने वाले एनवायरनमेंट वेरिएबल्स के साथ शुरू किया जा सकता है। कॉन्फ़िरेशन को माउंट की गई प्रॉपर्टीज़ फ़ाल के माध्यम से भी दिया जा सकता है। सोर्स से बिल्ड करने के लिए JDK 17 (हालाँकि कोड Java 11 बाइटकोड में कंपाइल होता है), Maven 3.9+, Buildx के साथ Docker, और हेल्पर build-docker स्क्रिप्ट के लिए python_on_whales के साथ Python 3 आवश्यक है। यह प्रोजेक्ट एक मल्टी-मॉड्यूल Maven बिल्ड है जो OLTP इंजन, Spark बल्क लोडर, Spark OLAP मॉड्यूल, और एक साझा API को कवर करता है। AGS Apache License 2.0 के अंतर्गत जारी किया गया है, Aerospike और Apache TinkerPop/Spark के ट्रेडमार्क नोटिस के साथ।