यदि आपके पास वास्तव में कई दस्तावेज़ प्रकारों (अलग-अलग संग्रहों में) में लेन-देन होना चाहिए, तो इसे प्राप्त करने का साधन एक एकल तालिका के साथ है जो कार्रवाई करने के लिए संग्रहीत करता है।
db.actions.insert(
{ actions: [{collection: 'players', _id: 'p1', update: {$set : {name : 'bob'} } },
{collection: 'stories', _id: 's1', update: {$set : {location: 'library'} } }], completed: false }, callback);
यह इंसर्ट परमाणु है, और सभी एक ही बार में किए जाते हैं। फिर आप 'कार्रवाइयां' संग्रह में कमांड निष्पादित कर सकते हैं और उन्हें पूर्ण के रूप में चिह्नित कर सकते हैं या उन्हें पूरा करने के बाद उन्हें हटा सकते हैं, जब वे सभी पूर्ण हो जाते हैं तो अपने मूल कॉलबैक को कॉल कर सकते हैं। यह केवल तभी काम करता है जब आपके क्रिया प्रसंस्करण लूप डीबी को अपडेट करने वाली एकमात्र चीज है। बेशक आपको नेवले का इस्तेमाल बंद करना होगा, लेकिन जितनी जल्दी आप ऐसा करेंगे, आपके लिए उतना ही बेहतर होगा।