2014-11-21 11 views
8

मैं अपने आवेदन में टेबल में से किसी एक में बनाए गए मकबरे की संख्या का मूल्यांकन करने की कोशिश कर रहा हूं। इसके लिए मैं nodetool cfstats का उपयोग करने की कोशिश कर रहा हूँ।एक सीक्यूएल क्वेरी के लिए कबूतर गिनती कैसे प्राप्त करें?

create table demo.test(a int, b int, c int, primary key (a)); 
insert into demo.test(a, b, c) values(1,2,3); 

अब मैं उपर दिए गए डालने बनाने हूँ: यहाँ मैं इसे कैसे कर रहा हूँ है। तो मैं 3 मकबरे बनाने की उम्मीद करता हूं। लेकिन इस कॉलम के लिए cfstats चलाने पर, मैं अभी भी देखता हूं कि कोई भी टॉम्बस्टोन नहीं बनाया गया है।

nodetool cfstats demo.test 
Average live cells per slice (last five minutes): 0.0 
Average tombstones per slice (last five minutes): 0.0 

अब मैंने रिकॉर्ड हटाने की कोशिश की, लेकिन फिर भी मुझे कोई भी टॉम्बस्टोन नहीं बनाया गया है। क्या कोई ऐसी चीज है जिसे मैं यहां याद कर रहा हूं? कृपया सुझाव दे।

BTW में कुछ अन्य विवरण, * हम जावा ड्राइवर के संस्करण 2.1.1 का उपयोग कर रहे * हम एक प्रश्न आपका सर्वश्रेष्ठ दांव लगाने में सक्षम बनाना है पर समाधि की गिनती के लिए कैसेंड्रा 2.1.0

+0

के रूप में के साथ इस सक्षम कर सकते हैं एक FYI करें, कैसेंड्रा 2.x और 1.x था समस्याओं लगातार (tombstones से छुटकारा पाने यानी यह स्टार्टअप पर ठीक करना होगा , लेकिन थोड़ी देर के बाद यह पूरी तरह से बंद हो जाएगा।) –

+0

मेरा लेना होगा कि 'cfstats' कमांड द्वारा उपयोग किया गया डेटा अपडेट नहीं किया गया है कि जल्दी से आप हटाए जाने के बाद एक बदलाव देखेंगे। शायद इसे एक मिनट देकर, या RussS समाधान का उपयोग करें। –

उत्तर

18

के खिलाफ चलाए जा रहे । यह आपको एक प्रश्न के गहराई से इतिहास देगा जिसमें इसे पूरा करने के लिए कितने मकबरे को पढ़ना होगा। यह आपको कुल टॉम्बस्टोन गिनती नहीं देगा, लेकिन प्रदर्शन ट्यूनिंग के लिए अधिक प्रासंगिक है।

cqlsh में आप

cqlsh> tracing on; 
Now tracing requests. 
cqlsh> SELECT * FROM ascii_ks.ascii_cs where pkey = 'One'; 

pkey | ckey1 | data1 
------+-------+------- 
    One | One | One 

(1 rows) 


Tracing session: 2569d580-719b-11e4-9dd6-557d7f833b69 

activity                 | timestamp | source | source_elapsed 
--------------------------------------------------------------------------+--------------+-----------+---------------- 
                 execute_cql3_query | 08:26:28,953 | 127.0.0.1 |    0 
Parsing SELECT * FROM ascii_ks.ascii_cs where pkey = 'One' LIMIT 10000; | 08:26:28,956 | 127.0.0.1 |   2635 
                 Preparing statement | 08:26:28,960 | 127.0.0.1 |   6951 
          Executing single-partition query on ascii_cs | 08:26:28,962 | 127.0.0.1 |   9097 
              Acquiring sstable references | 08:26:28,963 | 127.0.0.1 |   10576 
               Merging memtable contents | 08:26:28,963 | 127.0.0.1 |   10618 
               Merging data from sstable 1 | 08:26:28,965 | 127.0.0.1 |   12146 
               Key cache hit for sstable 1 | 08:26:28,965 | 127.0.0.1 |   12257 
                Collating all results | 08:26:28,965 | 127.0.0.1 |   12402 
                 Request complete | 08:26:28,965 | 127.0.0.1 |   12638 

http://www.datastax.com/dev/blog/tracing-in-cassandra-1-2

+1

अच्छा जवाब। मैं भी यही सोच रहा था। – Aaron

+2

उत्तर के लिए धन्यवाद RussS। लेकिन मुझे वास्तव में समझ में नहीं आया कि ट्रेसिंग का कौन सा हिस्सा वास्तव में पढ़ने वाले मकबरे की संख्या के बारे में बोलता है। क्या आप इस पर थोड़ा और जानकारी दे सकते हैं? – PrasanthNath

+1

आप नोडेटूल cfstats – phact

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