में डेटा को समवर्ती रूप से सम्मिलित करने का तेज़ तरीका मेरे पास लगभग 64 बच्चों के साथ समानांतर प्रक्रिया है जिसे प्रत्येक को लैंडिंग तालिका में डेटा डालने की आवश्यकता होती है। मैं वर्तमान में एक MySQL MyISAM इंजन का उपयोग कर रहा हूं, और मैं आवेषण से पहले और बाद में कुंजी अक्षम करता हूं।MySQL
हालांकि, यह मेरी प्रक्रिया में एक बड़ी बाधा प्रतीत होता है। मेरा मानना है कि MySQL प्रत्येक सम्मिलन के लिए टेबल लॉकिंग है और इसलिए प्रक्रियाएं लगातार लिखने की प्रतीक्षा कर रही हैं।
आवेषण स्वतंत्र हैं और विरोधाभासी आवेषण का कोई खतरा नहीं है। इसे लेन-देन या उस प्रकृति के किसी भी चीज की आवश्यकता नहीं है।
क्या कोई अलग इंजन है, या MySQL के सम्मिलित/लिखने के प्रदर्शन को बेहतर बनाने के तरीके हैं?
मैं प्रत्येक प्रक्रिया के लिए एक मेज instantiating बारे में सोचा है, लेकिन इस कोड को और अधिक जटिल हो जाएगा, और कहा कि वास्तव में मेरी शैली नहीं है ....
कोई सुझाव बहुत सराहना की जाएगी।
धन्यवाद!
हाँ, मैं इसके बारे में सोच रहा था, लेकिन मेरी चिंता यह है कि प्रसंस्करण मशीन और सर्वर एक ही मशीन है। सम्मिलित विलंब का उपयोग करते समय, MySQL वास्तव में डेटा कहां रखता है? राम, एसडब्ल्यूएपी, डिस्क? मैं प्रसंस्करण बच्चों के साथ पहले ही राम सीमा के करीब बहुत करीब चला जाता हूं ... धन्यवाद! – user1459544
@ user1459544: "* पंक्तिबद्ध पंक्तियों को केवल तब तक स्मृति में रखा जाता है जब तक उन्हें तालिका में डाला नहीं जाता है। *" - ज़ाहिर है, ओ/एस आवश्यकतानुसार वर्चुअल मेमोरी में बदल जाएगा - लेकिन यदि आप रैम पर कम हैं, यह शायद कुछ और निवेश में लायक है। – eggyal
मुझे लगता है कि 256GB पर यह मशीन टैप की गई है, लेकिन इसे जाने दें और मैं आपको बता दूंगा कि यह कैसे निकलता है। शायद अगर यह डीबी में तेजी से पहुंच सकता है तो मेरे बच्चे अपने राम संसाधनों को तेजी से और अच्छे समय के लिए छोड़ देंगे। – user1459544