मागच्या आठवड्यात कुणीतरी मला हाच प्रश्न विचारला, आणि तो चांगला प्रश्न आहे कारण दोन्ही रचना डोळे बारीक करून पाहिल्या तर सारख्याच दिसतात. काही मशीन्स, मधे थोडं शेअर्ड स्टोरेज, आणि नोड्सवर पसरलेलं काम. मग एकाला “बिग डेटा” आणि दुसऱ्याला “मायक्रोसर्व्हिसेस” का म्हणतात? हे एकाच क्लस्टरसाठी दोन शब्द आहेत का? खरं सांगायचं तर, नाही. ते एकाच गोष्टीबद्दलच्या अगदी विरुद्ध गृहीतकांवर उभे आहेत: डेटा कुठे राहतो आणि कोण कुणाकडे जातो.
आधी Hadoop प्रत्यक्षात काय आहे ते उलगडून सांगतो, मग आपण दोन्ही गोष्टी शेजारी-शेजारी ठेवू.
जेव्हाही Spark बद्दल चर्चा सुरू होते, तेव्हा “फक्त मायक्रोसर्व्हिसेस scale करा” हा प्रश्न पुन्हा पुन्हा येतो. ऐकायला हे तार्किक वाटते — तुमच्याकडे आधीच distributed services आहेत, समस्येवर आणखी टाकून द्या. पण ही तुलना एका अगदी मूलभूत प्रश्नापुढे कोसळते: तुम्ही प्रत्यक्षात कोणत्या प्रकारची समस्या सोडवत आहात?
हे डेटाबेस नाही. Queue सुद्धा नाही. लोक Spark कडे एखाद्या जलद डेटाबेसची किंवा हुशार Kafka ची अपेक्षा घेऊन येतात. दोन्ही चुकीचे आहेत.