MySQL

2011-09-19 3 views
12

में एक विशाल डेटा मैट्रिक्स को स्टोर और एक्सेस करने का सबसे प्रभावी तरीका मैं एक mysqlDB में मैट्रिक्स डेटा की एक बड़ी मात्रा को स्टोर करने जा रहा हूं डेटा को स्टोर और एक्सेस करने का सबसे प्रभावी तरीका क्या है?MySQL

डेटा प्राप्त करते समय दक्षता सबसे महत्वपूर्ण है, तालिका नियमित रूप से अपडेट नहीं की जाएगी।

मैट्रिक्स है 100,000 के बारे में बार 1000 (शायद भविष्य में बड़ा)

 

id1 
value 
value_id1 
id1 
value 
value_id2 
id2 
value 
value_id1 
id2 
value 
value_id2 
. 
. 
. 
id 100.000 
value 
value_id1000 

vs 
    value_id1, value_id2, value_id3 ... id 1000 
id1 value  value  value 
id2 value  value  value 
id3 value  value  value 
. 
. 
. 
id 100.000 

जब डेटा बहुत बड़ा है क्या, सबसे कारगर है एक छोटी कॉल (mysql क्वेरी) या एक के रूप में संग्रहीत डेटा के लिए मैट्रिक्स? डेटा नियमित रूप से उपयोग किया जाता है, इसलिए डेटा लाने के लिए यह प्रभावी होना चाहिए।

+0

क्या यह एक स्पैर मैट्रिक्स है? क्या इसे एप्लिकेशन में उप-विभाजित करने के लिए यह समझ में आता है? – spraff

+0

मैट्रिक्स का क्षैतिज आयाम लगातार बने रहने के लिए जा रहा है? या यह घटने या बढ़ने की संभावना है? – dmcnelis

+0

क्षैतिज आयाम शायद सुसंगत रहेगा, इसे "अपग्रेड" में बदला जा सकता है लेकिन नियमित रूप से नहीं! – david

उत्तर

9

जब से तुम ने कहा कि आप ढूंढने में दक्षता चाहते हैं, मैं मेज प्रारूप

Column Row Value 
     1 1 1.2 
     2 1 2.3 
     ... 

निम्न का उपयोग होता प्रारूप और स्तंभ और मैट्रिक्स की पंक्ति में मौजूद अनुक्रमण का उपयोग करके आप किसी भी डेटा भाग के रूप में तेजी से आप चाहते हैं के रूप में प्राप्त कर सके ।

+0

क्या आप विस्तारित कर सकते हैं और मुझे बता सकते हैं? यह वास्तव में कैसे काम करता है? –

4

जानने के कुछ संबंधित प्रश्नों को यहां हैं:

घने मैट्रिक्स के लिए उत्तर स्तंभ, पंक्ति के लिए कॉलम के साथ एक सामान्यीकृत तालिका करने के लिए नीचे उबालने के लिए लगता है, और मान, जैसा कि ऊपर Taesung द्वारा सुझाया गया है, या ब्लॉब्स के रूप में अपने मूल मैट्रिक्स से अलग पंक्तियों को संग्रहित करने की तरह कुछ कर रहा है।

HDF5 इस तरह की चीज़ के लिए बनाया जाना प्रतीत होता है। यह अच्छा होगा अगर अनुभव वाला कोई व्यक्ति आगे टिप्पणी कर सके।