You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@impala.apache.org by Jin Chul Kim <ji...@gmail.com> on 2017/12/01 00:53:04 UTC

[IMPALA-3060] Supports IS [NOT] NULL feature for complex types

Hi,

I would like to get your advice before implementing the feature
https://issues.apache.org/jira/browse/IMPALA-3060

Let me start with struct type of complex types. Would you please answer the
questions? Thanks.

1. Does StructType have getSlotSize? If your answer is yes, do you think
the following code piece is fine to you? Here is a initial code for
StructType.

  @Override
  public int getSlotSize() {
    int slotSize = 0;
    for (StructField f: fields_) slotSize += f.getType().getSlotSize();
    slotSize += (slotSize % 8); // For 8 byte alignment
    return slotSize;
  }

2. I think we should consider materialized path for struct type, but it
seems struct type might not be described in
SlotDescriptor.getMaterialzedPath() due to the guidance of the function:
"Assembles the absolute materialized path to this slot starting from the
schema root.
The materialized path points to the first non-struct schema element along
the path starting
from the parent's tuple path to this slot's path."

Can we determine materialized path for complex types?

Best regards,
Jinchul

Re: [IMPALA-3060] Supports IS [NOT] NULL feature for complex types

Posted by Jim Apple <jb...@cloudera.com>.
This discussion is more active on the ticket:
https://issues.apache.org/jira/browse/IMPALA-3060

On Thu, Nov 30, 2017 at 9:35 PM, Jin Chul Kim <ji...@gmail.com> wrote:

> Hi,
>
> Here are additional questions.
>
> 3. It seems there is no container for complex type in backend. I think we
> need to introduce StructType container at be before handling IMPALA-3060.
> What do you think about this?
>
> 4. If we can support the container for StructType, we can support not
> implemented features such as specify a complex-typed column in a select
> list, join between struct type. Unsupported features will be enabled
> incrementally. Do you have a plan for this?
>
> Best regards,
> Jinchul
>
> 2017-12-01 9:53 GMT+09:00 Jin Chul Kim <ji...@gmail.com>:
>
> > Hi,
> >
> > I would like to get your advice before implementing the feature
> > https://issues.apache.org/jira/browse/IMPALA-3060
> >
> > Let me start with struct type of complex types. Would you please answer
> > the questions? Thanks.
> >
> > 1. Does StructType have getSlotSize? If your answer is yes, do you think
> > the following code piece is fine to you? Here is a initial code for
> > StructType.
> >
> >   @Override
> >   public int getSlotSize() {
> >     int slotSize = 0;
> >     for (StructField f: fields_) slotSize += f.getType().getSlotSize();
> >     slotSize += (slotSize % 8); // For 8 byte alignment
> >     return slotSize;
> >   }
> >
> > 2. I think we should consider materialized path for struct type, but it
> > seems struct type might not be described in SlotDescriptor.
> getMaterialzedPath()
> > due to the guidance of the function:
> > "Assembles the absolute materialized path to this slot starting from the
> > schema root.
> > The materialized path points to the first non-struct schema element along
> > the path starting
> > from the parent's tuple path to this slot's path."
> >
> > Can we determine materialized path for complex types?
> >
> > Best regards,
> > Jinchul
> >
>

Re: [IMPALA-3060] Supports IS [NOT] NULL feature for complex types

Posted by Jin Chul Kim <ji...@gmail.com>.
Hi,

Here are additional questions.

3. It seems there is no container for complex type in backend. I think we
need to introduce StructType container at be before handling IMPALA-3060.
What do you think about this?

4. If we can support the container for StructType, we can support not
implemented features such as specify a complex-typed column in a select
list, join between struct type. Unsupported features will be enabled
incrementally. Do you have a plan for this?

Best regards,
Jinchul

2017-12-01 9:53 GMT+09:00 Jin Chul Kim <ji...@gmail.com>:

> Hi,
>
> I would like to get your advice before implementing the feature
> https://issues.apache.org/jira/browse/IMPALA-3060
>
> Let me start with struct type of complex types. Would you please answer
> the questions? Thanks.
>
> 1. Does StructType have getSlotSize? If your answer is yes, do you think
> the following code piece is fine to you? Here is a initial code for
> StructType.
>
>   @Override
>   public int getSlotSize() {
>     int slotSize = 0;
>     for (StructField f: fields_) slotSize += f.getType().getSlotSize();
>     slotSize += (slotSize % 8); // For 8 byte alignment
>     return slotSize;
>   }
>
> 2. I think we should consider materialized path for struct type, but it
> seems struct type might not be described in SlotDescriptor.getMaterialzedPath()
> due to the guidance of the function:
> "Assembles the absolute materialized path to this slot starting from the
> schema root.
> The materialized path points to the first non-struct schema element along
> the path starting
> from the parent's tuple path to this slot's path."
>
> Can we determine materialized path for complex types?
>
> Best regards,
> Jinchul
>