Hi Tim,

The guys from Hudi said that the Hudi partitioning is compatible with Hive 
partitioning.
I think I get some idea from the implementation of the Hive ACID support 
tickets. And I am trying to implement the Hudi support now.

Could I create a Jira ticket for this task and use your Jenkins server for 
build? It takes me soo much time waiting the build process.

Thanks so much!

Best regards

Yuanbin Cheng
CR/PJ-AI-S1  



-----Original Message-----
From: Tim Armstrong <tarmstr...@cloudera.com> 
Sent: Tuesday, July 16, 2019 3:24 PM
To: dev@impala <dev@impala.apache.org>
Subject: Re: Support Apache Hudi

Sorry I meant to refer to
./fe/src/main/java/org/apache/impala/catalog/local/LocalHbaseTable.java;
FeHdfsTable is an interface shared by those two classes.

There's a default catalog implementation that is based on all Impala daemons 
holding a cached snapshot of metadata, and a re-implementation where impala 
daemons fetch metadata on demand from a catalog service. The design doc for the 
reimplementation is here, although i suspect some details have changed:
https://docs.google.com/document/d/1WcUQ7nC3fzLFtZLofzO6kvWdGHFaaqh97fC_PvqVGCk/edit

It may be helpful to look at some recent commits that added Hive ACID support 
just to get an idea of how that was implemented:
https://gerrit.cloudera.org/#/q/acid

I guess one detail that may not work so well with HdfsTable is the partitioning 
- it's unclear to me how compatible the Hudi partitioning is with Hive's 
partitioning scheme.

- Tim



On Wed, Jul 17, 2019 at 6:54 AM FIXED-TERM Cheng Yuanbin (CR/PJ-AI-S1) < 
fixed-term.yuanbin.ch...@us.bosch.com> wrote:

> Hi Tim,
>
> Thanks so much for the suggestion.
> I also think that implement Hudi Table as a variant of HdfsTable 
> should be a cleaner way.
> I will focus on understand the hdfsTable now, it is really a big file.
>
> Currently, our team only use the Copy-on-Write mode now, so I will try 
> to implement the Copy-on-Write first.
>
> Can you explain more about the two catalog implementations?
> My understand is that one is more the metadata of the table and one is 
> for the frontend interface of the table, however, for the HdfsTable, I 
> only found HdfsTable, no FeHdfsTable.
>
> Thanks so much!
>
> Best regards
>
> Yuanbin Cheng
> CR/PJ-AI-S1
>
>
>
>
> -----Original Message-----
> From: Tim Armstrong <tarmstr...@cloudera.com>
> Sent: Tuesday, July 16, 2019 12:28 PM
> To: dev@impala <dev@impala.apache.org>
> Subject: Re: Support Apache Hudi
>
> Hi Cheng,
>   I think that is one way you could approach it. I'm not really 
> familiar enough with Hudi to know if that's the right way. I took a 
> quick look at https://hudi.incubator.apache.org/concepts.html and I'm 
> wondering if it would actually be cleaner to implement as a variant of 
> HdfsTable. HdfsTable is used for any Hive filesystem-based table, not 
> just HDFS - e.g. S3 or whatever. Hudi seems like it's similar Hive 
> ACID in a lot of ways, which we're currently adding support for in that way.
>
> Which Hudi features are you planning to implement? Copy-on-Write seems 
> like it would be simpler to implement - it might only require changes 
> in the frontend (i.e. java code). Merge-on-read probably requires 
> backend support for merging the delta files with the base files. Write 
> support also seems more complex than read support.
>
> Also another note - currently there are actually two catalog 
> implementations that require their own table implementation, e.g. see 
> fe/src/main/java/org/apache/impala/catalog/FeHBaseTable.java and 
> fe/src/main/java/org/apache/impala/catalog/HBaseTable.java
>
> On Tue, Jul 16, 2019 at 9:55 AM FIXED-TERM Cheng Yuanbin (CR/PJ-AI-S1) 
> < fixed-term.yuanbin.ch...@us.bosch.com> wrote:
>
> > Hi,
> >
> > Our team now is using Apache Hudi to migrate our data pipeline from 
> > batch to incremental processing.
> > However, we find that the Apache Impala cannot pull the Hudi 
> > metadata from the Hive.
> > Here is the issue: 
> > https://github.com/apache/incubator-hudi/issues/179
> > Now I am trying to fix this issue.
> >
> > After reading some code related to the table object of the Impala, 
> > currently, my thought is to implement a new HudiTable class and add 
> > it to the fromMetastoreTable method in Table class.
> > Maybe only add some support methods in the current Table type can 
> > also solve this issue? Not very familiar with the Impala source code.
> > Here is the Jira ticket for this issue:
> > https://issues.apache.org/jira/projects/HUDI/issues/HUDI-146
> >
> > Do you have any idea about how to solve this issue?
> >
> > I appreciate any help!
> >
> > Best regards
> >
> > Yuanbin Cheng
> > CR/PJ-AI-S1
> >
> >
> >
>

Reply via email to