विचार नेता

ग्राफक्यूएल – एप्लिकेशन के बीच संचार को बदलना और बेहतर बनाना

mm
Unite.AI को Google पर अपने पसंदीदा स्रोतों में जोड़ें

यह ज्यादा समय नहीं होगा जब अगली पीढ़ी क्रिप्टो खरीदेगी और फोर्टनाइट लॉबी में गेम के बीच अपने निवेश कोष (यूनिट ट्रस्ट) के शेष की जांच करेगी। यह कई तकनीकी प्रगति के माध्यम से संभव होगा।

जिस पर हम आज चर्चा कर रहे हैं वह है डेटा को एक एप्लिकेशन से दूसरे एप्लिकेशन में स्थानांतरित करने का तरीका (पढ़ना, अद्यतन करना, जोड़ना/निकालना) और जो कंपनियां उन्हें स्वामित्व में रखती हैं। एप्लिकेशन प्रोग्रामिंग इंटरफेस (एपीआई) वे आर्किटेक्चर हैं जो इस डेटा संचार को परिभाषित करते हैं, और जैसे-जैसे ये मानक विकसित हुए हैं, प्रोसेसिंग और डेटा स्टोरेज की आवश्यकताएं कम बोझिल हो गई हैं।

कम संसाधन उपयोग के मामले में अग्रणी ग्राफक्यूएल है, एक ओपन-सोर्स डेटा क्वेरी और मैनिपुलेशन भाषा। इसके इकोसिस्टम का आधार इसका विनिर्देश और इसके आसपास बनाए गए टूल्स का संग्रह है।

यह नया नहीं है – समय तेजी से चलता है। फेसबुक ने 2012 में इसका विकास किया और इसे केवल आंतरिक रूप से मोबाइल एप्लिकेशन विकास के लिए उपयोग किया। 2015 में इसे ‘ओपन सोर्स’ किया गया और आज इसकी देखभाल ग्राफक्यूएल फाउंडेशन (https://graphql.org/foundation/) द्वारा की जाती है, जो इसके आगे के विकास की देखभाल करता है।

मैं अब इसके बारे में क्यों लिख रहा हूं? तकनीक अपनाने का एक सामान्य रोडमैप निम्न चरणों से गुजरता है: 1) शौकीन/व्यक्तिगत परियोजनाएं, 2) कई प्रोग्रामिंग भाषाओं में कार्यान्वयन, 3) स्टार्टअप और छोटी कंपनियों में कार्यान्वयन, 4) मध्यम आकार की कंपनियां और उत्पाद विकास में उपयोग, 5) बड़े निगम और तकनीकी दिग्गज।

ग्राफक्यूएल ने स्तर 5 तक पहुंच गया है। वर्तमान में इसका उपयोग गिटहब, पिंटरेस्ट, शॉपिफाई, माइक्रोसॉफ्ट (MSFT ) द्वारा किया जाता है, और हाल ही में, मार्च 2022 में, सेल्सफोर्स (CRM ) द्वारा भी।

सेल्सफोर्स से डेटा को अधिक कुशलता से प्राप्त करने के तरीके की तलाश में, मैं उनके ग्राफक्यूएल दस्तावेज़ पर आया और इसे पढ़ना और लागू करने के तरीके देखना शुरू किया।

यह एक पारंपरिक रेस्ट एपीआई से कैसे अलग है?

  • एक प्रमुख लाभ यह है कि ग्राफक्यूएल के साथ आप केवल उस विशिष्ट डेटा के लिए पूछताछ कर सकते हैं और केवल वही डेटा वापस मिलेगा। यदि आप किसी विशिष्ट ग्राहक घटना से संबंधित केवल दो क्षेत्रों की पूछताछ करना चाहते हैं, तो आपको केवल वही मिलेगा। एक पारंपरिक रेस्ट एपीआई आपको घटना से संबंधित सभी क्षेत्र वापस कर देगा, जो 100+ क्षेत्र हो सकते हैं। अब आपको उन सभी डेटा के साथ कुछ करना होगा जो आप नहीं चाहते थे। इसे डेटा ओवर फेचिंग (अंडर फेचिंग भी एक समस्या है) कहा जाता है।
  • उपरोक्त बात ग्राफक्यूएल को अन्य एपीआई पद्धति की तुलना में डेटा वापस करने में तेज बनाती है।
  • ग्राफक्यूएल एक मजबूत रूप से टाइप की गई भाषा है, जिसका अर्थ है कि कोड त्रुटियों को कार्यक्रम चलने से पहले ही पकड़ लिया जाता है, न कि इसके दौरान।
  • ग्राफक्यूएल के आसपास एक महान सेट ऑफ टूल्स बनाए गए हैं, जो इसे विकासकर्ताओं के लिए बहुत उपयोगकर्ता-मित्र बनाता है।
  • ग्राफक्यूएल का एक एकल अंत बिंदु है, जबकि रेस्ट एपीआई में कई अंत बिंदु हैं। इसका अर्थ है कि आपका सभी डेटा एक ही अनुरोध में प्राप्त किया जा सकता है।

सिक्के के दो पहलू: अनुरोधकर्ता (क्लाइंट) और प्रदाता (ग्राफक्यूएल होस्ट)

मैंने अब तक ग्राफक्यूएल को डेटा “अनुरोध” दृष्टिकोण से देखा है। जहां एक कंपनी जैसे सेल्सफोर्स या माइक्रोसॉफ्ट ने एक ग्राफक्यूएल एपीआई स्थापित किया है जिसका उपयोग आप डेटा को पूछताछ करने और मैनिपुलेट करने के लिए कर सकते हैं (पढ़ना, अद्यतन करना, जोड़ना)।

एक उदाहरण के रूप में, यदि हम सेल्सफोर्स से संबंधित ग्राहक घटनाओं के डेटा को एक ग्राहक पोर्टल में शामिल करना चाहते हैं, तो ऐसा करने का सबसे कुशल तरीका पोर्टल से सेल्सफोर्स ग्राफक्यूएल सर्वर तक एक ग्राफक्यूएल पूछताछ के माध्यम से सटीक डेटा का अनुरोध करना होगा। आपको वही डेटा मिलेगा जो आप चाहते हैं, न तो कम और न ही ज्यादा, और इसके परिणामस्वरूप कोई अतिरिक्त प्रोसेसिंग या डेटा स्टोरेज की आवश्यकता नहीं होगी।

सिक्के का दूसरा पहलू वह संगठन है जो ग्राफक्यूएल आर्किटेक्चर स्थापित करता है ताकि आपके ग्राहकों के पास अपनी इच्छित डेटा तक पहुंचने का एक कुशल तरीका हो।

ग्राफक्यूएल एपीआई बनाते समय, एक संगठन एक मॉडल बना रहा है जो अपने सभी सिस्टम को एक मॉडल में एकीकृत करता है। यह इन सिस्टम को एकजुट करता है और एक बार काम पूरा हो जाने के बाद, एपीआई के माध्यम से डेटा को पूछताछ करना निर्बाध हो जाता है।

जब मैं एप्लिकेशन या प्रदाताओं की तुलना करता हूं, तो मैं देखता हूं कि वे मुझे अपना डेटा वापस पाने के लिए क्या कार्य प्रदान करते हैं। मैं उनसे ईमेल नहीं करना चाहता या अनम्य पूर्वनिर्धारित रिपोर्टों पर निर्भर नहीं रहना चाहता। मैं अपने डेटा में “प्लग इन” करना चाहता हूं, इसे एक लचीले, समय पर तरीके से पूछताछ करना चाहता हूं। यदि यह दो अनुप्रयोगों/प्रदाताओं के बीच आता है और वे अन्य तुलना बिंदुओं पर समान रूप से मेल खाते हैं, और एक या तो एक रेस्ट एपीआई या ग्राफक्यूएल एपीआई प्रदान करता है, तो मैं निश्चित रूप से एपीआई वाले को चुनूंगा।

Maitland Fund Services में RP PA विश्लेषक और डेवलपर मार्कस लवलैंड आईटी क्षेत्र के पाठकों के लिए लिखते हैं। वे एप्लिकेशन प्रोग्रामिंग इंटरफ़ेस (API) के भविष्य पर नज़र रखते हैं और विशेष रूप से GraphQL API आर्किटेक्चर पर ध्यान केंद्रित करते हैं।