- Facebook ने Presto की शुरुआत के लिए आधार दिया, लेकिन कम्युनिटी और Facebook की ज़रूरतें मेल नहीं खाती थीं, इसलिए जल्दी अलग होना पड़ा
- Presto, Facebook के IPO से ठीक पहले 2012 में open source के रूप में शुरू हुआ
- Presto, Facebook इंफ्रास्ट्रक्चर का एक केंद्रीय प्रोजेक्ट बन गया, जिससे engineers और managers का ध्यान उस पर गया
- यह सफलता का संकेत भी था, लेकिन इनमें से कुछ लोगों के लक्ष्य open source कम्युनिटी जैसे नहीं थे
- कम्युनिटी की नीति थी: "कोई भी विशेष नहीं है"
→ हर किसी के code का review होना चाहिए, और सिर्फ Facebook में काम करने भर से commit permission नहीं मिल सकती - Facebook के engineers को promotion के लिए "प्रभावशाली(Memorable)" काम बनाना पड़ता था, इसलिए ऐसे काम गति को धीमा कर देते थे
→ अंत में यह तय हुआ कि Facebook engineers को अपने-आप contributor permission मिले, ताकि वे ज़्यादा तेज़ी से काम कर सकें - इससे लग सकता है कि Facebook engineers गलत थे, लेकिन वास्तव में ऐसा नहीं था
→ इतनी तीव्र प्रतिस्पर्धा वाली कंपनी में engineers अगर प्रभावशाली काम न करें, तो उन्हें promotion नहीं मिलता और वे नौकरी भी खो सकते हैं - समस्या यह थी कि इससे open source कम्युनिटी को तटस्थ बनाए रखने का प्रयास बदलने लगा
→ इसलिए लगा कि प्रोजेक्ट को स्वस्थ बनाए रखने के लिए उसे fork करना पड़ेगा - इस समय सबसे बड़ी गलती यह थी कि नाम नहीं बदला गया और उसे Presto ही रहने दिया गया
→ हमारा मानना था कि "Presto" नाम Facebook नहीं बल्कि कम्युनिटी के स्वामित्व में है, लेकिन जब कम्युनिटी प्रोजेक्ट से बाहर निकली, तो Facebook अकेला Presto में रह गया और उसका एकमात्र मालिक बन बैठा - इससे भी बड़ी समस्या यह थी कि Facebook में बचे लोगों को इससे गुस्सा आ गया
→ हमें लगा था कि Facebook अंदरूनी तौर पर fork करेगा और कम्युनिटी को वैसे ही रहने देगा, लेकिन उसने प्रतिस्पर्धी प्रोजेक्ट बनाने की कोशिश भी की - मौजूदा PrestoDB से अलग दिखाने के लिए इसका नाम PrestoSQL रखा गया, लेकिन अंततः इसे Trino में बदल दिया गया
- Trino नाम अपनाने के बाद अब कम्युनिटी स्थिर हुई और बढ़ने लगी
2 टिप्पणियां
मैंने सोचा था कि बस नाम बदला गया है, लेकिन असल में यह एक fork था, और उससे जुड़ी कहानी व दर्शन होना दिलचस्प लगा।
थोड़ा देखने पर पता चला कि prestodb/presto के प्रमुख contributors में से कई (कम से कम 4) trinodb/trino में सक्रिय रूप से योगदान दे रहे हैं, और लगभग 2019 के बाद से पुराने prestodb/presto पक्ष में उनका योगदान नहीं दिखता।
https://github.com/trinodb/trino/graphs/contributors
https://github.com/prestodb/presto/graphs/contributors
काफ़ी लंबा अतिरिक्त विवरण था, इसलिए मैंने उसे संक्षेप में सारांशित किया है.
निष्कर्ष यह है कि जैसे-जैसे Presto का इस्तेमाल बहुत बढ़ा और Facebook के भीतर भी उसकी स्थिति मज़बूत हुई,
उसके चलते समुदाय के लक्ष्यों से अलग चीज़ें होने लगीं, और उसी वजह से उन्होंने नाम तक बदलकर फिर से शुरुआत की.
लेकिन मुझे भी अभी तक Presto ज़्यादा परिचित लगता है, और Trino अभी उतना सहज नहीं लगता.
Trino - बिग डेटा के लिए distributed SQL query engine