का उपयोग करते समय ईवेंट संग्रहीत करना मैं घटना सोर्सिंग के बारे में पढ़ रहा हूं और हालांकि मुझे कई समस्याओं के लिए यह एक बहुत ही प्राकृतिक दृष्टिकोण मिला है, मुझे समझ में नहीं आया कि अभ्यास में घटनाओं को कैसे स्टोर किया जाए।इवेंट सोर्सिंग
इंटरनेट पर थोड़ा सा खोज कर मुझे this article वॉन वर्नॉन द्वारा डीडीडी में कुल योग के भंडारण के लिए एक सरल दृष्टिकोण के बारे में बात करते हुए मिला है। हालांकि यह विशेष रूप से ईवेंट सोर्सिंग के बारे में नहीं है, लेकिन वह PostgreSQL का उपयोग करके डोमेन ईवेंट स्टोर करने का एक तरीका है।
उनके दृष्टिकोण में, हमारे पास एक और एक JSON data
फ़ील्ड के साथ एक तालिका Events
है। यह बहुत सारी आजादी देता है, क्योंकि हम किसी भी JSON डेटा को स्टोर कर सकते हैं और इसलिए हम विभिन्न प्रकार की घटनाओं को स्टोर कर सकते हैं।
लेकिन सभी घटनाओंसभी समुच्चय एक एकल तालिका में करने के लिए इसी होने, मुझे एक छोटे से चिंतित बनाता है।
तो, जब हम इवेंट सोर्सिंग का उपयोग करने के लिए ईवेंट स्टोर करते हैं, तो हमें कैसे आगे बढ़ना चाहिए? मैं तीन विकल्प देख सकता हूं:
लेख पर डोमेन ईवेंट के लिए उपयोग किए गए विचार के बाद और एक ही तालिका के अंदर सबकुछ स्टोर करें।
प्रति ईवेंट एक टेबल बनाएं। यहां पर दोष यह है कि हमें प्रत्येक योग के लिए घटनाओं को ट्रैक करने की आवश्यकता है, और प्रत्येक कुल के लिए विभिन्न प्रकार की घटनाएं हो सकती हैं। तो यह आसानी से एक विशाल तालिका संख्या का नेतृत्व करेगा।
कुल मिलाकर एक तालिका बनाएं और उस योग के लिए सभी घटनाओं को स्टोर करें। यद्यपि हम एक ही टेबल में एक साथ लाए गए विभिन्न प्रकार के कार्यक्रमों के साथ समाप्त होते हैं, लेकिन वे सभी एक ही कुल से संबंधित हैं।
इनमें से कौन सा विकल्प अधिक उचित होगा? यदि कोई नहीं है, तो ईवेंट सोर्सिंग का उपयोग करते समय ईवेंट स्टोर करने का सही तरीका क्या होगा?