Apache बीम प्रोजेक्ट

इस पेज पर Google Docs के सीज़न के लिए स्वीकार किए गए एक तकनीकी लेखन प्रोजेक्ट की जानकारी है.

प्रोजेक्ट की खास जानकारी

ओपन सोर्स संगठन:
Apache बीम
तकनीकी लेखक:
श्रुति श्री कुमार
प्रोजेक्ट का नाम:
रनर की तुलना करने वाले पेज / क्षमता मैट्रिक्स का अपडेट
प्रोजेक्ट की अवधि:
मानक अवधि (तीन महीने)

प्रोजेक्ट का विवरण

Apache बीम एक ऐसा प्लैटफ़ॉर्म है जिस पर बैच और स्ट्रीम प्रोसेस करने वाली पाइपलाइन, दोनों की परिभाषा तय की जाती है. Apache बीम पर आपको किसी खास डेटा प्रोसेसिंग प्लैटफ़ॉर्म पर ध्यान दिए बिना डेटासेट को दिखाने और बदलने के लिए कोई मॉडल तय करने की सुविधा मिलती है. एक बार तय हो जाने के बाद, इसे काम करने वाले किसी भी रन-टाइम फ़्रेमवर्क (रनर) पर चलाया जा सकता है, जिसमें Apache Apex, Apache Flink, Apache Spark, और Google Cloud Dataflow शामिल हैं. Apache बीम में कई तरह के SDK टूल भी आते हैं. इनकी मदद से, Java, python, और GO जैसी प्रोग्रामिंग भाषाओं में अपनी पाइपलाइन में बदलाव किए जा सकते हैं.

मैं “रनर की तुलना करने वाले पेज/क्षमता मेट्रिक के अपडेट” पर जीएसओडी के लिए अपना आवेदन सबमिट कर रहा/रही हूं. Apache बीम कई रनर और SDK टूल पर काम करता है, इसलिए नए उपयोगकर्ता को इन दोनों में से कोई एक विकल्प चुनने में दिक्कत होगी. अलग-अलग रनर के मौजूदा दस्तावेज़ में, रनर के बारे में बहुत कम शब्दों में खास जानकारी दी गई है. मेरा सुझाव है कि किसी रनर दस्तावेज़ के पेज पर, हर रनर की ज़्यादा समझ में आने वाली जानकारी जोड़ें. साथ ही, मुझे उदाहरण के तौर पर वर्ड काउंट प्रोजेक्ट की जानकारी में बदलाव करना है, ताकि ज़्यादा जानकारी जोड़ी जा सके. इसके लिए, मेरा प्लान है कि मैं अपनी मशीन में, शब्दों की गिनती के हर उदाहरण को अपने डिवाइस पर आज़माऊं और यह पता करूं कि कहीं कोई चरण छूट तो नहीं गया. साथ ही, मैं इस प्रोसेस के बारे में ज़्यादा जानकारी भी जोड़ना चाहता हूं. एक और बात जो मैंने देखी है, वह यह है कि रनर के लिए दिए गए दस्तावेज़ किसी भी पैटर्न के हिसाब से नहीं हैं. हालांकि, कुछ को खास जानकारी वाला सेक्शन मिला है, जबकि दूसरों के पास सबसे पहले, इस्तेमाल करने का तरीका, ज़रूरी शर्तों या किसी रैंडम टाइटल का इस्तेमाल होता है. मैं एक सिंपल पैटर्न का पालन करने के लिए, सभी को अपडेट करूँगा.

मैं हर रनर के बारे में जानकारी देने के लिए एक नया पेज जोड़ना चाहता हूं और हर रनर के बारे में पूरी जानकारी देना चाहता हूं[BEAM-3220]. इस पेज से, उपयोगकर्ता हर रनर और कैपिबिलिटी मैट्रिक्स की ज़्यादा जानकारी वाले पेज पर रीडायरेक्ट कर सकते हैं. मेरी योजना यहां हर रनर के लिए, ब्यौरे के साथ तुलना करने की भी है. वर्तमान में, मैं अपनी मास्टर थीसिस के लिए मानदंड फ्लिंक रनर के लिए बीम नेक्समार्क का उपयोग कर रहा/रही हूं. मुझे NEXमार्क मानदंड के बारे में पूरी जानकारी है. इसलिए, मैं यहां बैच और स्ट्रीमिंग मोड, दोनों में हर रनर के मानदंड के नतीजे(BEAM-2944) शामिल करना चाहता/चाहती हूं. अगर मुझे पता चलता है कि कोई पैरामीटर/ कॉन्फ़िगरेशन मौजूद नहीं है या हटाया गया है, तो मैं NEXmark दस्तावेज़ को भी अपडेट करूंगा/करूंगी. Flink रनर का इस्तेमाल करने से पहले, मैं शुरू में अटक गया था, क्योंकि दस्तावेज़ों में एक पैरामीटर मौजूद नहीं था. हालांकि, अब मुझे NEXमार्क कोड बेस के बारे में पता चल गया है. साथ ही, मेरे लिए रनर का बेंचमार्क और मेट्रिक जोड़ना आसान होगा. इसी पेज पर, हम हर रनर के प्रोडक्शन रेडीनेस के बारे में खास जानकारी देना चाहेंगे.

मौजूदा दस्तावेज़ में, क्लासिक/पोर्टेबल रनर के लिए सहायता, हर रनर के ब्यौरे वाले पेज पर शामिल है. मुझे लगता है कि बेहतर होगा कि आप इन सबको एक ही जगह पर, क्षमता के मैट्रिक्स में या जोड़े गए नए ब्यौरे वाले पेज पर ले आएं. साथ ही, फ़िलहाल पोर्टेबिलिटी सहायता को एक अलग Google शीट में मैनेज किया जाता है, जिसे कम्पैटबिलटी मैट्रिक्स में मर्ज करना है. https://docs.google.com/स्प्रेडशीटs/d/1KDa_FGn1ShjomGd-UDOhuh2q73de2tPz6BqHpzqvNI/edit#gid=0). इस टास्क के हिस्से के तौर पर, मेरी योजना BEAM-2888 में बताए गए सभी बड़े/मामूली सुधार शामिल करने हैं.

मुझे GSoD को, ओपन सोर्स में योगदान देने का मौका लगता है. मैं ओपन सोर्स प्रोजेक्ट में, खास तौर पर बीम में योगदान देना जारी रखूंगा. साथ ही, समुदाय के एक सक्रिय सदस्य के तौर पर आगे बढ़ना जारी रखना चाहता/चाहती हूं. Apache बीम को एक सक्रिय समुदाय मिला है जिसमें लगातार चलने वाली सुविधाएं डेवलप की जा रही हैं, इसलिए मुझे लगता है कि दस्तावेज़ को अपडेट करने के लिए उसमें सुधार करने का अवसर हमेशा मौजूद रहता है. साथ ही, मैं डेवलपमेंट के काम में भी योगदान देना चाहता हूं. अगर मेरे पास बीम में अच्छी जानकारी है, तो मैं उपयोगकर्ता समुदाय की भी मदद कर सकता हूं, क्योंकि मुझे बीम शुरू करते समय समुदाय से हमेशा मदद मिलती थी.

मुझे लगता है कि इस प्रोजेक्ट के लिए मैं सही व्यक्ति हूं, क्योंकि:

  1. मुझे डिस्ट्रिब्यूटेड सिस्टम में दिलचस्पी है और मुझे डेटा प्रोसेसिंग सिस्टम के अंदरूनी पहलुओं को समझने की कोशिश करनी है.
  2. एक उपयोगकर्ता के तौर पर, मेरे पास Apache बीम और Apache Flink के साथ काम करने का अनुभव है.
  3. मैंने एक डेवलपर के तौर पर Apache बीम और Apache Flink कोड बेस को पहले ही समझ लिया है.
  4. मैंने अलग-अलग बीम रनर की तुलना करने के लिए एक प्रोजेक्ट पूरा किया है.
  5. मुझे बिग डेटा प्रोसेसिंग और डिस्ट्रिब्यूटेड सिस्टम के सिद्धांतों को समझाने के लिए, तकनीकी ब्लॉग लिखने का अनुभव है.
  6. फ़िलहाल, मैं Apache Flink स्टेट बैकएंड की परफ़ॉर्मेंस को बेहतर बनाने के लिए अपनी मास्टर थीसिस पर काम कर रहा/रही हूं. इसके लिए, मैं मानदंड के लिए Apache बीम NEXमार्क को लागू करने की सुविधा का इस्तेमाल कर रहा/रही हूं और मैंने Apache बीम दस्तावेज़ अपडेट करने में योगदान दिया है.
  7. एक सॉफ़्टवेयर डेवलपर के तौर पर मुझे चार साल का अनुभव है. इसलिए, मैंने कई तकनीकी डिज़ाइन वाले दस्तावेज़, प्रॉडक्ट से जुड़े दस्तावेज़, और Readme फ़ाइलें लिखी हैं. फ़िलहाल, मेरे पास इनका ऐक्सेस नहीं है.
  8. मैं दस्तावेज़ों को इस तरह से लिखता/लिखती हूं कि कोई भी व्यक्ति, जिसे पहले इस बारे में जानकारी नहीं है, एक नज़र में उसे समझ आ जाएगा.