2012-11-28 16 views
6

मैंने हेक्टर और कैसंद्रा ट्यूटोरियल में देखा है कि DynamicCompositeType है।कैसंड्रा कंपोजिट टाइप

किसी को भी,

और

के बीच

create column family Composite with comparator ='DynamicCompositeType 
     (t=>TimeUUIDType,s=>UTF8Type)' 
     and default_validation_class=UTF8Type and key_validation_class=UTF8Type; 

create column family Composite 
    with comparator = 'CompositeType(TimeUUIDType,UTF8Type)' 
    and key_validation_class = 'UTF8Type' 
    and default_validation_class = 'UTF8Type' 
मैं इसे कैसेंड्रा डॉक्स

उत्तर

6

यह मदद मिल सकती है समझने के लिए कैसे कैसेंड्रा भंडार डेटा और क्या वास्तव में कंपोजिट हैं:,

  • सभी डेटा जो सत्यापनकर्ता/तुलनित्र आप उपयोग की परवाह किए बिना, बाइट के रूप में संग्रहीत किया जाता है। जब आप सत्यापनकर्ता निर्दिष्ट करते हैं, तो आप बस यह सुनिश्चित करने के लिए कैसंद्रा से पूछ रहे हैं कि उन बाइट्स को एन्कोड किया गया है जैसा आप चाहते हैं। इसके विपरीत, एक तुलनित्र, आपके द्वारा दिए गए एन्कोडिंग के लिए विशिष्ट प्राकृतिक क्रम के आधार पर कॉलम को ऑर्डर करता है।

  • कंपोजिट्स, फिर, एक विशिष्ट एन्कोडिंग के साथ बाइट सरणी हैं। यह एन्कोडिंग काफी सरल है: प्रत्येक घटक के लिए, यह बाई-एन्कोडेड घटक के बाद दो-बाइट लंबाई रखता है, इसके बाद एक समाप्ति बिट होता है जो यह निर्धारित करता है कि यह समावेशी या अनन्य है या नहीं। चूंकि बाइट एरे में कुछ भी संग्रहीत किया जा सकता है, इसलिए आपके पास अलग-अलग घटक प्रकार हो सकते हैं - लेकिन आपको पता होना चाहिए कि वे क्या हैं और उन्हें स्वयं डीकोड/एन्कोड करें।

  • गतिशील कंपोजिट प्राप्त करने के लिए, हेक्टर अतिरिक्त प्रकार के डेटा बाइट सरणी में लिखता है, ताकि यह बाइट्स को डीकोड करने के बारे में जानता हो, जब यह उन्हें वापस पढ़ता है। स्टेटिक कंपोजिट्स के पास ऐसा करने का कोई तरीका नहीं है क्योंकि कोई प्रकार की जानकारी नहीं है।

0

स्थिर समग्र सीएफ प्रत्येक स्तंभ के साथ में नहीं मिल गया है एक ही प्रकार होगा अंतर पर विस्तृत कर सकते हैं जहां गतिशील सीसीएफ के साथ प्रत्येक कॉलम में अलग-अलग डेटा प्रकार हो सकते हैं।

यदि आप निश्चित हैं कि सीएफ़ के अंदर किस प्रकार का डेटा स्थिर परिभाषा के साथ चिपकने के लिए बेहतर है तो अन्य गतिशील सीएफ का उपयोग करें।

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