From user-return-3138-archive-asf-public=cust-asf.ponee.io@kylin.apache.org Tue Apr 3 04:22:47 2018 Return-Path: X-Original-To: archive-asf-public@cust-asf.ponee.io Delivered-To: archive-asf-public@cust-asf.ponee.io Received: from mail.apache.org (hermes.apache.org [140.211.11.3]) by mx-eu-01.ponee.io (Postfix) with SMTP id 712B7180627 for ; Tue, 3 Apr 2018 04:22:46 +0200 (CEST) Received: (qmail 41704 invoked by uid 500); 3 Apr 2018 02:22:45 -0000 Mailing-List: contact user-help@kylin.apache.org; run by ezmlm Precedence: bulk List-Help: List-Unsubscribe: List-Post: List-Id: Reply-To: user@kylin.apache.org Delivered-To: mailing list user@kylin.apache.org Received: (qmail 41695 invoked by uid 99); 3 Apr 2018 02:22:45 -0000 Received: from mail-relay.apache.org (HELO mailrelay2-lw-us.apache.org) (207.244.88.137) by apache.org (qpsmtpd/0.29) with ESMTP; Tue, 03 Apr 2018 02:22:45 +0000 Received: from mail-pl0-f42.google.com (mail-pl0-f42.google.com [209.85.160.42]) by mailrelay2-lw-us.apache.org (ASF Mail Server at mailrelay2-lw-us.apache.org) with ESMTPSA id 4BCFBFDD for ; Tue, 3 Apr 2018 02:22:44 +0000 (UTC) Received: by mail-pl0-f42.google.com with SMTP id b6-v6so4819391pla.11 for ; Mon, 02 Apr 2018 19:22:44 -0700 (PDT) X-Gm-Message-State: AElRT7Evmvljac4It9hvA2x5EaPoKueWM9OdisLbw/SPSGWKx0x9sDgt 97vOjljgcO/okSQ3cmKIHh7VTbTxY142ATxcR3s= X-Google-Smtp-Source: AIpwx48SrQsQytiuxs/rumxOvBAzAyQzVBAsjoQ0HZOlwG4rCngP1G5NKFUXcTSFJL/aOVydqWPHjmg3bBmXwkEk5hg= X-Received: by 2002:a17:902:581e:: with SMTP id m30-v6mr11156505pli.406.1522722163499; Mon, 02 Apr 2018 19:22:43 -0700 (PDT) MIME-Version: 1.0 Received: by 10.236.156.3 with HTTP; Mon, 2 Apr 2018 19:22:02 -0700 (PDT) In-Reply-To: <00ab01d3ca9b$b3bac5e0$1b3051a0$@stratebi.com> References: <00ab01d3ca9b$b3bac5e0$1b3051a0$@stratebi.com> From: ShaoFeng Shi Date: Tue, 3 Apr 2018 10:22:02 +0800 X-Gmail-Original-Message-ID: Message-ID: Subject: Re: Dimension update issue To: user Content-Type: multipart/related; boundary="000000000000a5cd3d0568e861b0" --000000000000a5cd3d0568e861b0 Content-Type: multipart/alternative; boundary="000000000000a5cd370568e861af" --000000000000a5cd370568e861af Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable Hi Roberto, Kylin will take the snapshot for dimension tables, and persist the snapshots together with the cube segments. If you have modified the dimension table in Hive, and expects to see the changes for history segments, the proper way is to refresh the history segment(s), which will refresh the snapshot. Hope this clarifies your questions. 2018-04-03 0:00 GMT+08:00 : > Hi, > > > > I have some questions about how Kylin refresh dimensions tables. In case > you delete some instances of the dimension on hive table that are not use= d > by any fact in fact table, These values will be deleted from dimension > table on next cube segment built? We have to refresh old segments? > > > > In our case we have added by mistake a lot of empty future days to a Date > dimension (80 years). Then we have built some days of the cube. However, = as > this big date dimensions leads to performance issues, we have deleted mos= t > of future years from Date dimension. However, after built a new segment o= f > the cube, the deleted rows on Hive table they have not been deleted in > Kylin cube table. How can we refresh the dimension table on Kylin properl= y? > > > > Thanks in advance! > > > > *Roberto Tard=C3=ADo Olmos* > > *Senior Big Data & Business Intelligence Consultant* > > Avenida de Brasil, 17 > , > Planta 16.28020 Madrid > > Fijo: 91.788.34.10 > > > [image: > http://www.stratebi.com/image/layout_set_logo?img_id=3D21615&t=3D14863811= 63544] > > > > http://bigdata.stratebi.com/ > > > > http://www.stratebi.com > > > --=20 Best regards, Shaofeng Shi =E5=8F=B2=E5=B0=91=E9=94=8B --000000000000a5cd370568e861af Content-Type: text/html; charset="UTF-8" Content-Transfer-Encoding: quoted-printable
Hi Roberto,

Kylin will take the snapsho= t for dimension tables, and persist the snapshots together with the cube se= gments.

If you have modified the dimension table in Hive= , and expects to see the changes for history segments, the proper way is to= refresh the history segment(s), which will refresh the snapshot.

Hope this clarifies your questions.






--
Best regards,

=
Shaofeng Shi =E5=8F=B2=E5=B0=91=E9=94=8B

--000000000000a5cd370568e861af-- --000000000000a5cd3d0568e861b0 Content-Type: image/png; name="image003.png" Content-Disposition: inline; filename="image003.png" Content-Transfer-Encoding: base64 Content-ID: X-Attachment-Id: 238a2ac9a09bd67c_0.1 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 --000000000000a5cd3d0568e861b0--