Return-Path: X-Original-To: archive-asf-public-internal@cust-asf2.ponee.io Delivered-To: archive-asf-public-internal@cust-asf2.ponee.io Received: from cust-asf.ponee.io (cust-asf.ponee.io [163.172.22.183]) by cust-asf2.ponee.io (Postfix) with ESMTP id E9141200C76 for ; Fri, 28 Apr 2017 11:07:09 +0200 (CEST) Received: by cust-asf.ponee.io (Postfix) id E7B58160B8C; Fri, 28 Apr 2017 09:07:09 +0000 (UTC) Delivered-To: archive-asf-public@cust-asf.ponee.io Received: from mail.apache.org (hermes.apache.org [140.211.11.3]) by cust-asf.ponee.io (Postfix) with SMTP id 42FC2160BA3 for ; Fri, 28 Apr 2017 11:07:09 +0200 (CEST) Received: (qmail 65128 invoked by uid 500); 28 Apr 2017 09:07:08 -0000 Mailing-List: contact commits-help@cassandra.apache.org; run by ezmlm Precedence: bulk List-Help: List-Unsubscribe: List-Post: List-Id: Delivered-To: mailing list commits@cassandra.apache.org Received: (qmail 64795 invoked by uid 99); 28 Apr 2017 09:07:08 -0000 Received: from pnap-us-west-generic-nat.apache.org (HELO spamd2-us-west.apache.org) (209.188.14.142) by apache.org (qpsmtpd/0.29) with ESMTP; Fri, 28 Apr 2017 09:07:08 +0000 Received: from localhost (localhost [127.0.0.1]) by spamd2-us-west.apache.org (ASF Mail Server at spamd2-us-west.apache.org) with ESMTP id E144D1B0FA3 for ; Fri, 28 Apr 2017 09:07:07 +0000 (UTC) X-Virus-Scanned: Debian amavisd-new at spamd2-us-west.apache.org X-Spam-Flag: NO X-Spam-Score: -99.202 X-Spam-Level: X-Spam-Status: No, score=-99.202 tagged_above=-999 required=6.31 tests=[KAM_ASCII_DIVIDERS=0.8, RP_MATCHES_RCVD=-0.001, SPF_PASS=-0.001, USER_IN_WHITELIST=-100] autolearn=disabled Received: from mx1-lw-eu.apache.org ([10.40.0.8]) by localhost (spamd2-us-west.apache.org [10.40.0.9]) (amavisd-new, port 10024) with ESMTP id cCJbhuIU20Kq for ; Fri, 28 Apr 2017 09:07:07 +0000 (UTC) Received: from mailrelay1-us-west.apache.org (mailrelay1-us-west.apache.org [209.188.14.139]) by mx1-lw-eu.apache.org (ASF Mail Server at mx1-lw-eu.apache.org) with ESMTP id B47615FDB7 for ; Fri, 28 Apr 2017 09:07:06 +0000 (UTC) Received: from jira-lw-us.apache.org (unknown [207.244.88.139]) by mailrelay1-us-west.apache.org (ASF Mail Server at mailrelay1-us-west.apache.org) with ESMTP id 76BA9E0DB3 for ; Fri, 28 Apr 2017 09:07:05 +0000 (UTC) Received: from jira-lw-us.apache.org (localhost [127.0.0.1]) by jira-lw-us.apache.org (ASF Mail Server at jira-lw-us.apache.org) with ESMTP id 70E7D21DF1 for ; Fri, 28 Apr 2017 09:07:04 +0000 (UTC) Date: Fri, 28 Apr 2017 09:07:04 +0000 (UTC) From: "Marcus Eriksson (JIRA)" To: commits@cassandra.apache.org Message-ID: In-Reply-To: References: Subject: [jira] [Commented] (CASSANDRA-10496) Make DTCS/TWCS split partitions based on time during compaction MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 7bit X-JIRA-FingerPrint: 30527f35849b9dde25b450d4833f0394 archived-at: Fri, 28 Apr 2017 09:07:10 -0000 [ https://issues.apache.org/jira/browse/CASSANDRA-10496?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15988457#comment-15988457 ] Marcus Eriksson commented on CASSANDRA-10496: --------------------------------------------- you need to inspect the timestamp on each cell in each partition and split based on that > Make DTCS/TWCS split partitions based on time during compaction > --------------------------------------------------------------- > > Key: CASSANDRA-10496 > URL: https://issues.apache.org/jira/browse/CASSANDRA-10496 > Project: Cassandra > Issue Type: Improvement > Reporter: Marcus Eriksson > Labels: dtcs > Fix For: 3.11.x > > > To avoid getting old data in new time windows with DTCS (or related, like [TWCS|CASSANDRA-9666]), we need to split out old data into its own sstable during compaction. > My initial idea is to just create two sstables, when we create the compaction task we state the start and end times for the window, and any data older than the window will be put in its own sstable. > By creating a single sstable with old data, we will incrementally get the windows correct - say we have an sstable with these timestamps: > {{[100, 99, 98, 97, 75, 50, 10]}} > and we are compacting in window {{[100, 80]}} - we would create two sstables: > {{[100, 99, 98, 97]}}, {{[75, 50, 10]}}, and the first window is now 'correct'. The next compaction would compact in window {{[80, 60]}} and create sstables {{[75]}}, {{[50, 10]}} etc. > We will probably also want to base the windows on the newest data in the sstables so that we actually have older data than the window. -- This message was sent by Atlassian JIRA (v6.3.15#6346) --------------------------------------------------------------------- To unsubscribe, e-mail: commits-unsubscribe@cassandra.apache.org For additional commands, e-mail: commits-help@cassandra.apache.org