मेरा अनुमान, यह देखते हुए कि मैं एक सांख्यिकीविद् नहीं हूं, यह है कि ओवरहेड कुछ इस तरह है 8-12% धीमा।
मैंने 3 . का उपयोग करके परिणाम प्राप्त किए संरचनात्मक रूप से समान और सरल टेबल दो टेक्स्ट कॉलम के साथ, 10,000 running चल रहा है प्रत्येक तालिका में सम्मिलित करता है, इसे 4 उपकरणों पर 5 बार दोहराता है।
तालिका 1 (डीएफएलटी कॉलम) केवल दो टेक्स्ट कॉलम (इस प्रकार डिफ़ॉल्ट ROWID का उपयोग करके) के साथ बनाया गया था।
तालिका 2 (AI कॉलम) _id INTEGER PRIMARY KEY AUTOINCREMENT
का उपयोग करके बनाया गया था दो टेक्स्ट कॉलम के अलावा।
तालिका 3 (कोई AI कॉलम नहीं) _id INTEGER PRIMARY KEY
. का उपयोग करके बनाया गया था दो टेक्स्ट कॉलम के अलावा।
तो तालिका 2 थोड़ा भिन्न ROWID चयन एल्गोरिथम . का उपयोग करता है डालने के लिए।
उपयोग किए गए चार उपकरण थे :-
-
(1) जेनिमोशन एमुलेटेड डिवाइस (कस्टम टैबलेट - 5.1.0 - एपीआई 22 - 1536x2048)
-
(2) एक ओनिक्स 10" टैबलेट (एटी101-1116)
-
(3) एक एचटीसी 1 एम8 (एचटीसी_0पीकेवी1)
-
(4) एक लेनेवो ए10-30 टैबलेट (लेनोवो टीबी2-एक्स30एफ)
मुझे जो परिणाम मिले वे थे :-
परिणाम तब अधिक अनुकूल होते हैं जब सब कुछ केवल 1 लेन-देन में चलाया जाता है (यानी beginTransaction();
किसी भी प्रविष्टि से पहले, setTransactionSuccessful();
. के साथ और endTransaction();
सभी प्रविष्टियों के बाद (सभी तालिकाओं के लिए यानी संपूर्ण 150,000 प्रविष्टियां), उदा। :-
दो तालिकाओं की तुलना, प्रदर्शन पर लेनदेन का उपयोग करने वाले लाभों पर प्रकाश डालती है।