Cassandra DateTieredCompactionStrategy ระบุการประทับเวลาข้อมูลของฉันได้อย่างไร

เพิ่งเคยใช้ Cassandra ฉันเพิ่งอ่านบล็อกเกี่ยวกับ DTCS ของ Cassandra

สมมติว่าฉันมีตารางเช่นนี้

CREATE TABLE foo (
   id text,
   t1 timestamp,
   t2 timestamp,
   bar text,
   PRIMARY KEY (id,t1)
);

ดูเหมือนว่าสิ่งเดียวที่ฉันต้องทำเพื่อเปิดใช้งาน DTCS ก็คือ

ALTER TABLE <table> WITH compaction = {
    'class': 'DateTieredCompactionStrategy',
    'timestamp_resolution':'<resolution>', 'base_time_seconds':'3600',
    'max_sstable_age_days':'365'};

เป็นเรื่องจริงเหรอ? แล้ว Cassandra ขนาดยาจะรู้ได้อย่างไรว่าข้อมูลของฉันในฟิลด์ใดคือเวลาประทับที่ฉันคาดว่าจะใช้สำหรับ DTCS


person rox    schedule 06.06.2016    source แหล่งที่มา


คำตอบ (1)


ไม่ได้ใช้ค่าของ "ฟิลด์" ใด ๆ ของคุณ

ทุกคอลัมน์ที่ไม่ใช่คีย์จะมีเวลาในการเขียนที่เกี่ยวข้องกัน ซึ่ง คือสิ่งที่กลยุทธ์ใช้

สามารถตั้งค่านี้ได้ด้วยตนเองด้วยส่วนคำสั่ง USING TIMESTAMP หรือจะตั้งค่าโดยอัตโนมัติเป็นเวลาของการอัปเดต/แทรก/ลบ

ดังนั้น คุณอาจพบว่าจริงๆ แล้วคุณไม่จำเป็นต้องมี t2 ในสคีมาของคุณ แต่สามารถใช้เวลาในการเขียนเป็น bar ได้

person OrangeDog    schedule 06.06.2016