2012-08-07 16 views
5

उच्च-प्रतिकृति डेटास्टोर में (मैं एनडीबी का उपयोग कर रहा हूं), स्थिरता अंततः है। गारंटीकृत पूर्ण सेट प्राप्त करने के लिए, पूर्वजों के प्रश्नों का उपयोग किया जा सकता है। पूर्वजों के प्रश्न भी एक विशेष पूर्वजों के सभी "बच्चों" को दयालु प्रश्नों के साथ पाने का एक शानदार तरीका प्रदान करते हैं। संक्षेप में, पूर्वजों के मॉडल का लाभ उठाने में सक्षम होना जीएई में बेहद उपयोगी है।एनडीबी रिकॉर्ड के पूर्वजों को कैसे बदला जाए?

मुझे लगता है कि समस्या काफी सरल है। मान लें कि मेरे पास एक संपर्क रिकॉर्ड और एक संदेश रिकॉर्ड है। एक दिए गए संपर्क रिकॉर्ड को प्रत्येक संदेश के लिए पूर्वजों के रूप में माना जा रहा है। हालांकि, यह संभव है कि एक ही व्यक्ति (उपयोगकर्ता त्रुटि, विभिन्न डेटा बिंदु, जो कुछ भी) के लिए दो संपर्क बनाए जाएं। यह स्थिति दो संपर्क अभिलेख बनाती है, जिनमें उनके संदेश हैं।

मुझे दो रिकॉर्ड "विलय" करने में सक्षम होना चाहिए, और सभी संदेशों को एक बड़े ढेर में डाल देना होगा। आदर्श रूप से, मैं रिकॉर्ड के बच्चों में से एक के लिए पूर्वजों को संशोधित करने में सक्षम हूं।

एकमात्र तरीका यह है कि मैं ऐसा करने के बारे में सोच सकता हूं, मैपिंग बनाना और यह देखने के लिए मेरा ऐप जांचना है कि रिकॉर्ड विलय हो गया है या नहीं। यदि ऐसा है, तो एक या अधिक संबंधित रिकॉर्ड खोजने के लिए मैपिंग देखें, और उन लोगों के खिलाफ प्रश्न करें। यह बेहद अक्षम है। क्या इस उपयोग के मामले को संभालने के तरीके "पुस्तक द्वारा" अधिक है?

+0

मेरे लिए ऐसा लगता है जैसे यह आपके डेटामैडल कैसा दिखता है इस पर निर्भर करेगा। आप कैसे निर्णय लेते हैं कि 2 रिकॉर्ड मर्ज किए जाने हैं? – aschmid00

+0

अच्छा सवाल - चूंकि यह एक विचार चरण में है, आइए उपयोगकर्ता इनपुट मान लें। – Sologoub

+0

इसलिए यदि आप उपयोगकर्ता इनपुट के विशिष्ट फ़ील्ड के आधार पर विलय करना चाहते हैं (मेल कहें) तो आप पहले डेटास्टोर से पूछताछ करते हैं और देखते हैं कि उस ईमेल के साथ एक रिकॉर्ड पहले से मौजूद है और वहां से आगे बढ़ता है। यदि ऐप नया है और आपके पास पहले से रिकॉर्ड नहीं हैं तो मेरा सुझाव है कि आप आईडी पर क्वेरी करने में सक्षम होने के लिए ईमेल के आधार पर कुंजीनाम/आईडी के साथ रिकॉर्ड बनाएं। – aschmid00

उत्तर

9

किसी इकाई के पूर्वजों को बदलने का एकमात्र तरीका पुराने को हटाना और एक नई कुंजी के साथ एक नया बनाना है। यह पूर्वजों के पथ में सभी बच्चे (और भव्य बच्चे, आदि) इकाइयों के लिए किया जाना चाहिए। यदि यह संभव नहीं है, तो आपका सूचीबद्ध समाधान काम करता है।

यह आवश्यक है क्योंकि किसी इकाई का पूर्वज पथ इसकी अनूठी कुंजी का हिस्सा है। संस्थाओं के माता-पिता (यानी, पूर्वजों के पथ में संस्थाओं) की आवश्यकता नहीं है, इसलिए माता-पिता की कुंजी बदलने से बच्चों को डेटास्टोर में कोई माता-पिता नहीं छोड़ा जाएगा।

+0

धन्यवाद। मैं एक और अधिक कुशल समाधान की उम्मीद कर रहा था, लेकिन यह सही समझ में आता है। – Sologoub

संबंधित मुद्दे