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 55454200C28 for ; Mon, 13 Mar 2017 08:20:20 +0100 (CET) Received: by cust-asf.ponee.io (Postfix) id 53DE9160B6C; Mon, 13 Mar 2017 07:20:20 +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 2CD42160B60 for ; Mon, 13 Mar 2017 08:20:19 +0100 (CET) Received: (qmail 52400 invoked by uid 500); 13 Mar 2017 07:20:18 -0000 Mailing-List: contact user-help@kudu.apache.org; run by ezmlm Precedence: bulk List-Help: List-Unsubscribe: List-Post: List-Id: Reply-To: user@kudu.apache.org Delivered-To: mailing list user@kudu.apache.org Received: (qmail 52390 invoked by uid 99); 13 Mar 2017 07:20:17 -0000 Received: from pnap-us-west-generic-nat.apache.org (HELO spamd1-us-west.apache.org) (209.188.14.142) by apache.org (qpsmtpd/0.29) with ESMTP; Mon, 13 Mar 2017 07:20:17 +0000 Received: from localhost (localhost [127.0.0.1]) by spamd1-us-west.apache.org (ASF Mail Server at spamd1-us-west.apache.org) with ESMTP id 4E63EC6CA8 for ; Mon, 13 Mar 2017 07:20:17 +0000 (UTC) X-Virus-Scanned: Debian amavisd-new at spamd1-us-west.apache.org X-Spam-Flag: NO X-Spam-Score: 1.879 X-Spam-Level: * X-Spam-Status: No, score=1.879 tagged_above=-999 required=6.31 tests=[DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, HTML_MESSAGE=2, RCVD_IN_DNSWL_NONE=-0.0001, RCVD_IN_MSPIKE_H3=-0.01, RCVD_IN_MSPIKE_WL=-0.01, SPF_PASS=-0.001] autolearn=disabled Authentication-Results: spamd1-us-west.apache.org (amavisd-new); dkim=pass (2048-bit key) header.d=gmail.com Received: from mx1-lw-eu.apache.org ([10.40.0.8]) by localhost (spamd1-us-west.apache.org [10.40.0.7]) (amavisd-new, port 10024) with ESMTP id D1J6LbvF9uwV for ; Mon, 13 Mar 2017 07:20:15 +0000 (UTC) Received: from mail-yw0-f176.google.com (mail-yw0-f176.google.com [209.85.161.176]) by mx1-lw-eu.apache.org (ASF Mail Server at mx1-lw-eu.apache.org) with ESMTPS id 2082E5F39E for ; Mon, 13 Mar 2017 07:20:15 +0000 (UTC) Received: by mail-yw0-f176.google.com with SMTP id p77so53786785ywg.1 for ; Mon, 13 Mar 2017 00:20:15 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=mime-version:in-reply-to:references:from:date:message-id:subject:to; bh=aWw2uGwIiA87WXmRHVXBTkZT4Sdu+quY0ieCpF/Ldlk=; b=nJtupVrtvwloLlSuCL84xhsvpuQmPGUc6iEf65QFxelv9UW5d52Wb74QbJnCc1wJSV wIcmkzdOlOxNbz20vIh/bFZZF4tEGUS7lh3uqYeRNNuTYxblfu8SuaQEmEnETxe2KO7U gy9+MUW2/QyvEWPA8VpSMjQpR7LuA5/hO1H1MCyeCIaZszzwyFPa1cSVe4D1TFRrgf6F Al/MBIuS4pJRWK+iMqEHgDBeoDS+OsegY2fWxhiAcQsT9Ci8Wbk5vwPdBsDjAU6G3Th9 a2floOZaWxaiz+APHWoz4o5AdPdy7LEZ6JQzcHzCaDnhMEC7Pk9gUxamP3x2WsgRcTdr pz2A== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:in-reply-to:references:from:date :message-id:subject:to; bh=aWw2uGwIiA87WXmRHVXBTkZT4Sdu+quY0ieCpF/Ldlk=; b=G6uZX1auItctEQ/RMbcQNM/jtt2DDX57g/B7QAeg9E4gz/zQPLx3ulGKemvlKicaWp ewwSfpeoGNGL9po5nocYPLjwoetKPgfV0WwmSHC7aVWVmMQu/XgexF2PxGnQ2x6kLTlw oZvQdFzc9XHRAtIXCkxaU/8Ux0eC7635Fyaafj/J6b1ViMXy39YOLKYoETBUdXGNWGPh cxB4IfFpavqOC2O6eCTNs8rA9MQZJ/oJVNQKBVEVx2pN8UG+QA3cTB2xKIh82EDYzAYE P/i4TIAeXEyb/O9bM1FR85mb6DEEc4j/MQqaBv6IQRqAJ65lg9dmtjZBQdyQp2ccSJZC MzJQ== X-Gm-Message-State: AMke39lVrV1J+RQao0LZhh6rC8ht9orbs3krLTXJUCLFlnu4+tD9IT8c2p7QCiWGOr+5qmHWUFJMZmXQbpctlw== X-Received: by 10.129.31.87 with SMTP id f84mr15980348ywf.341.1489389613966; Mon, 13 Mar 2017 00:20:13 -0700 (PDT) MIME-Version: 1.0 Received: by 10.129.125.86 with HTTP; Mon, 13 Mar 2017 00:20:13 -0700 (PDT) In-Reply-To: References: From: Jason Heo Date: Mon, 13 Mar 2017 16:20:13 +0900 Message-ID: Subject: Re: Apache Kudu Table is 6.6 times larger than Parquet File. To: user@kudu.apache.org Content-Type: multipart/alternative; boundary=001a1141e540df7149054a978a14 archived-at: Mon, 13 Mar 2017 07:20:20 -0000 --001a1141e540df7149054a978a14 Content-Type: text/plain; charset=UTF-8 Hi Todd The schema I've posted was generate by 'CREATE kudu_table AS SELECT * FROM parquet_table`. Last weekend, I've tested on difference combinations of encodings and compressions. Currenlty, size is fallen by 70% but it is still bigger than parquet 200%. I'm still testing which encoding is the best for specific columns. I hope it gets closer to Parquet ;) Thanks Jason 2017-03-13 15:30 GMT+09:00 Todd Lipcon : > Hi Jason, > > The first thing that jumps out to me is that you aren't using dictionary > encoding on your string columns. I would recommend using DICT_ENCODING for > all string fields and BIT_SHUFFLE for all int/double/float fields. If you > have any string fields which are not repetitive (low cardinality) then I > would also recommend enabling LZ4 compression on them (Parquet uses lz4 by > default on all strings). > > That should get you close to Parquet sizes (and those are the new defaults > in the upcoming 1.3 release). If you still see a 6x blowup after making > these changes please report back. > > -Todd > > On Fri, Mar 10, 2017 at 7:16 PM, Jason Heo > wrote: > >> Hello, I'm new to Apache Kudu. I was really impressed by the concept of >> Kudu and benchmark results. I'm considering using (Impala + Kudu) on my >> team project. >> >> One of the issues I have is that Kudu Table is too big compared to >> Parquet File >> >> - Parquet File: 1.3TB >> - Kudu Table: 8.6TB >> >> (both tables configured 3 replica factor) >> >> I'm using Kudu with CDH 5.10 and most of the configurations is not >> changed (I've only changed `memory_limit_hard_bytes` and >> `block_cache_capacity_mb` to prevent bulk load error) >> >> When I changed `ENCODING` for some fields, only decreased by 5%. I'm >> thinking there are some optimization techniques to reduce Kudu table size. >> >> I would really appreciate it if someone gives advice to me. >> >> Thanks for advance answer. >> >> `parquet_table` has 38 STRING fields and 6B rows. >> >> The schema of `parquet_table` looks like belows >> >> ``` >> > SHOW CREATE TABLE parquet_table; >> +----------------------------------------------------------- >> ----------------------+ >> | result >> | >> +----------------------------------------------------------- >> ----------------------+ >> | CREATE EXTERNAL TABLE default.parquet_table ( >> | >> | a STRING, >> | >> | b STRING, >> | >> | c STRING, >> | >> | d STRING, >> | >> ... >> ... >> | ) >> | >> | PARTITIONED BY ( >> | >> | ymd STRING >> | >> | ) >> | >> | WITH SERDEPROPERTIES ('serialization.format'='1') >> | >> | STORED AS PARQUET >> | >> | LOCATION 'hdfs://hostname/path/to/parquet' | >> | >> | >> +----------------------------------------------------------- >> ----------------------+ >> ``` >> >> I've created `kudu_table` and bulk loaded using `INSERT INTO kudu SELECT >> * FROM parquet_table` >> >> ``` >> > SHOW CREATE TABLE kudu_table; >> +----------------------------------------------------------- >> -----------------------+ >> | result >> | >> +----------------------------------------------------------- >> -----------------------+ >> | CREATE TABLE default.kudu_table ( >> | >> | a STRING NOT NULL ENCODING AUTO_ENCODING COMPRESSION >> DEFAULT_COMPRESSION, | >> | b STRING NOT NULL ENCODING AUTO_ENCODING COMPRESSION >> DEFAULT_COMPRESSION, | >> | c STRING NULL ENCODING AUTO_ENCODING COMPRESSION >> DEFAULT_COMPRESSION, | >> | d STRING NULL ENCODING AUTO_ENCODING COMPRESSION >> DEFAULT_COMPRESSION, | >> ... >> | PRIMARY KEY (a, b) >> | >> | ) >> | >> | PARTITION BY HASH (a) PARTITIONS 40 >> | >> | STORED AS KUDU >> | >> | TBLPROPERTIES ('kudu.master_addresses'='host1,host2', >> 'kudu.table_name'='impala::kudu_table') | >> +----------------------------------------------------------- >> -----------------------+ >> ``` >> >> > > > -- > Todd Lipcon > Software Engineer, Cloudera > --001a1141e540df7149054a978a14 Content-Type: text/html; charset=UTF-8 Content-Transfer-Encoding: quoted-printable
Hi Todd

The schema I've = posted was generate by 'CREATE kudu_table AS SELECT * FROM parquet_tabl= e`.

Last weekend, I've tested on difference co= mbinations of encodings and compressions. Currenlty, size is fallen by 70% = but it is still bigger than parquet 200%. I'm still testing which encod= ing is the best for specific columns. I hope it gets closer to Parquet ;)

Thanks

Jason

2017-03-13 15:30 GM= T+09:00 Todd Lipcon <todd@cloudera.com>:
Hi Jason,

The first thin= g that jumps out to me is that you aren't using dictionary encoding on = your string columns. I would recommend using DICT_ENCODING for all string f= ields and BIT_SHUFFLE for all int/double/float fields. If you have any stri= ng fields which are not repetitive (low cardinality) then I would also reco= mmend enabling LZ4 compression on them (Parquet uses lz4 by default on all = strings).

That should get you close to Parquet siz= es (and those are the new defaults in the upcoming 1.3 release). If you sti= ll see a 6x blowup after making these changes please report back.

-Todd

On Fri, Mar 10, 2017 at 7:16 PM, Jas= on Heo <jason.heo.sde@gmail.com> wrote:
Hello, I'm new to Apache Kudu= . I was really impressed by the concept of Kudu and benchmark results. I= 9;m considering using (Impala + Kudu) on my team project.

One of the issues I have is that Kudu Table is too big compared to = Parquet File

- Parquet File: 1.3TB
- Kud= u Table: 8.6TB

(both tables configured 3 replica f= actor)

I'm using Kudu with CDH 5.10 and most o= f the configurations is not changed (I've only changed `memory_limit_ha= rd_bytes` and `block_cache_capacity_mb` to prevent bulk load error)

When I changed `ENCODING` for some fields, only decreased= by 5%. I'm thinking there are some optimization techniques to reduce K= udu table size.

I would really appreciate it if so= meone gives advice to me.

Thanks for advance answe= r.

`parquet_table` has 38 STRING fields and 6B row= s.

The schema of `parquet_table` looks like belows=

=C2=A0 =C2=A0= ```
=C2=A0 =C2=A0 >= ; SHOW CREATE TABLE parquet_table;
=C2=A0 =C2=A0 +------------------------------------------= ---------------------------------------+
=C2=A0 =C2=A0 | result =C2=A0 =C2=A0 =C2=A0 =C2= =A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 = =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2= =A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 = =C2=A0 =C2=A0|
=C2=A0 = =C2=A0 +---------------------------------------------------------------------------------+
=C2=A0 =C2=A0 | CREATE EXTERNAL TABLE default.parquet_table ( =C2=A0 = =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2= =A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 |
=C2=A0 =C2=A0 | =C2=A0 a STRING, =C2=A0 =C2=A0 =C2=A0 = =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2= =A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 = =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 |
=C2=A0 =C2=A0 | =C2=A0 b = STRING, =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2= =A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 = =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2= =A0 =C2=A0 =C2=A0 =C2=A0 |
=C2=A0 =C2=A0 | =C2=A0 c STRING, =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 = =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2= =A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 = =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 |
= =C2=A0 =C2=A0 | =C2=A0 d STRING, =C2=A0= =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2= =A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 = =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2= =A0 =C2=A0 |
=C2=A0 = =C2=A0 =C2=A0 =C2=A0 ...
=C2=A0 =C2=A0 =C2=A0 =C2=A0 ...
=C2=A0 =C2=A0 | ) =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 = =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2= =A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 = =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2= =A0 =C2=A0 |
=C2=A0 = =C2=A0 | PARTITIONED BY ( =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 = =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2= =A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 = =C2=A0 =C2=A0 =C2=A0 =C2=A0|
=C2=A0 =C2=A0 | =C2=A0 ymd STRING =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0= =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2= =A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 = =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0|
<= font face=3D"monospace, monospace">=C2=A0 =C2=A0 | ) =C2=A0 =C2=A0 =C2=A0 = =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2= =A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 = =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2= =A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 |
=C2=A0 =C2=A0 | WITH SERDEPROPERTIES ('serialization.format= '=3D'1') =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2= =A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 |
=C2=A0 =C2=A0 | STORED AS PARQUET =C2=A0 = =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2= =A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 = =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 |
=C2=A0 =C2=A0 | LOCATION 'hd= fs://hostname/path/to/parquet' |
=C2=A0 =C2=A0 | =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2= =A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 = =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2= =A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 = =C2=A0 =C2=A0 =C2=A0 |
=C2=A0 =C2=A0 +------------------------------------------------------= ---------------------------+
=C2=A0 =C2=A0 ```

I've crea= ted `kudu_table` and bulk loaded using `INSERT INTO kudu SELECT * FROM parq= uet_table`

=C2= =A0 =C2=A0 ```
=C2=A0 = =C2=A0 > SHOW CREATE TABLE kudu_table;
=C2=A0 =C2=A0 +-----------------------------------= -----------------------------------------------+
=C2=A0 =C2=A0 | result =C2=A0 =C2=A0 =C2=A0= =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2= =A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 = =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2= =A0 =C2=A0 =C2=A0 |
= =C2=A0 =C2=A0 +-------------------------------------------------------= ---------------------------+
=C2=A0 =C2=A0 | CREATE TABLE default.kudu_table ( =C2=A0 =C2=A0= =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2= =A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 = =C2=A0|
=C2=A0 =C2=A0 = | =C2=A0 a STRING NOT NULL ENCODING AUTO_ENCODING COMPRESSION DEFAULT_COMPR= ESSION, =C2=A0 =C2=A0 =C2=A0|
=C2=A0 =C2=A0 | =C2=A0 b STRING NOT NULL ENCODING AUTO_ENCODING COM= PRESSION DEFAULT_COMPRESSION, =C2=A0 =C2=A0 =C2=A0|
=C2=A0 =C2=A0 | =C2=A0 c STRING NULL ENCODING= AUTO_ENCODING COMPRESSION DEFAULT_COMPRESSION, =C2=A0 =C2=A0 =C2=A0 =C2=A0= =C2=A0|
=C2=A0 =C2=A0= | =C2=A0 d STRING NULL ENCODING AUTO_ENCODING COMPRESSION DEFAULT_COMPRESS= ION, =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0|
=C2=A0 =C2=A0 =C2=A0 =C2=A0 ...
=C2=A0 =C2=A0 | =C2=A0 PRIMARY KEY (a, b) =C2= =A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 = =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2= =A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 |
<= div>=C2=A0 =C2=A0 | ) =C2=A0 =C2=A0 =C2= =A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 = =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2= =A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 = =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0|
=C2=A0 =C2=A0 | PARTITION BY HASH (a) PARTITIONS 40 = =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2= =A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 = =C2=A0 =C2=A0|
=C2=A0 = =C2=A0 | STORED AS KUDU =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 = =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2= =A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 = =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 |
=C2=A0 =C2=A0 | TBLPROPERTIES ('kudu.master_addresses= 9;=3D'host1,host2',
=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 = =C2=A0 'kudu.table_name'=3D'impala::kudu_table') |
=C2=A0 =C2=A0 +----------= -----------------------------------------------------------------= -------+
=C2=A0 =C2=A0= ```




--
Todd Lipcon
S= oftware Engineer, Cloudera

--001a1141e540df7149054a978a14--