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