Sounds great. I will look at both the union vector and type promotion stuff very soon. It would be nice if we could work on bringing up ListVector alive as well. I will file a JIRA for this.
On Mon, Oct 19, 2015 at 2:43 PM, Steven Phillips <[email protected]> wrote: > In the work I did for the Union types, (see PR > https://github.com/apache/drill/pull/207), I actually went down that exact > path. In that branch, if Union type is enable, any vectors created through > the ComplexWriter interface will not create any Repeated type vectors. > > On Mon, Oct 19, 2015 at 2:29 PM, Hanifi Gunes <[email protected]> wrote: > > > If I am not wrong currently we use > > i) RepeatedInt for single > > ii) RepeatedList of RepeatedInt for double > > iii) RepeatedList of RepeatedList of RepeatedInt for triple arrays. > > > > I think we should refactor vector design in such way that we will only > have > > a ListVector eliminating the need for all Repeated* vectors as well as > code > > generation for those so that we would represent all these above types via > > i) ListVector of IntVector > > ii) ListVector of ListVector of IntVector > > iii) ListVector of ListVector of ListVector of IntVector > > > > The idea here is to favor aggregation over inheritance, which is less > > redundant and more powerful. Thinking about it, we do not even need to > > maintain RepeatedMapVector as it will simply be ListVector of MapVector > in > > the new dialect. > > > > -Hanifi > > > > ps: As an fyi, even though it does not include a JIRA for abstracting > out a > > ListVector which I discussed over the past months with many devs, [1] > has a > > list of items in place for refactoring vectors (and possibly the type > > system). > > > > 1: https://issues.apache.org/jira/browse/DRILL-2147 > > > > > > On Mon, Oct 19, 2015 at 1:28 PM, Julien Le Dem <[email protected]> > wrote: > > > > > I'm looking at the type system in Drill and I have the following > > question: > > > Why is there a LIST type and a REPEATED field? > > > It sounds like there should only one of those 2 concepts. > > > Could someone describe how the following are represented? > > > - one dimensional list of int > > > - 2 dimensional list of ints > > > - 3 dimensional list of ints > > > Thank you > > > > > > -- > > > Julien > > > > > >
