यह कार्यक्षमता भौतिक दृश्य नामक एक विशेषता द्वारा सबसे अच्छी सेवा प्रदान की जाएगी। , जो दुर्भाग्य से MySQL की कमी है। आप किसी भिन्न डेटाबेस सिस्टम, जैसे PostgreSQL में माइग्रेट करने पर विचार कर सकते हैं।
संग्रहीत प्रक्रियाओं, ट्रिगर और घटनाओं का उपयोग करके MySQL में भौतिक विचारों का अनुकरण करने के तरीके हैं। आप एक संग्रहीत कार्यविधि बनाते हैं जो समग्र डेटा को अद्यतन करता है। यदि प्रत्येक सम्मिलन पर कुल डेटा अपडेट किया जाना है तो आप प्रक्रिया को कॉल करने के लिए एक ट्रिगर परिभाषित कर सकते हैं। यदि डेटा को हर कुछ घंटों में अपडेट करना होता है तो आप एक MySQL अनुसूचक घटना या इसे करने के लिए क्रॉन जॉब।
आपके विकल्प 3 के समान एक संयुक्त दृष्टिकोण है, जो इनपुट डेटा की तारीखों पर निर्भर नहीं करता है; कल्पना कीजिए कि क्या होगा यदि कुछ नया डेटा एक पल भी देर से आता है और इसे एकत्रीकरण में शामिल नहीं करता है। (आपको यह समस्या नहीं हो सकती है, मुझे नहीं पता।) आप एक ट्रिगर को परिभाषित कर सकते हैं जो "बैकलॉग" में नया डेटा सम्मिलित करता है और प्रक्रिया केवल बैकलॉग से समग्र तालिका को अपडेट करती है।
इस लेख में इन सभी विधियों का विस्तार से वर्णन किया गया है:http://www.fromdual.com/ mysql-materialized-views