From 2b52a569819a1a21becdb95e6183655b582671d4 Mon Sep 17 00:00:00 2001 From: Sagar Sumit Date: Fri, 28 Jan 2022 19:13:11 +0530 Subject: [PATCH] [HUDI-2688][RFC-40] A new Hudi connector for Trino (#3957) Add implementation details of a new hudi-trino connector --- rfc/README.md | 2 +- rfc/rfc-40/Hudi_Connector.png | Bin 0 -> 223858 bytes rfc/rfc-40/rfc-40.md | 282 ++++++++++++++++++++++++++++++++++ 3 files changed, 283 insertions(+), 1 deletion(-) create mode 100644 rfc/rfc-40/Hudi_Connector.png create mode 100644 rfc/rfc-40/rfc-40.md diff --git a/rfc/README.md b/rfc/README.md index 3fc3779ab..0b4d10f27 100644 --- a/rfc/README.md +++ b/rfc/README.md @@ -63,7 +63,7 @@ The list of all RFCs can be found here. | 37 | [Hudi metadata based bloom index] | `UNDER REVIEW` | | 38 | [Spark Datasource V2 Integration] | `UNDER REVIEW` | | 39 | [Incremental source for Debezium](./rfc-39/rfc-39.md) | `IN PROGRESS` | -| 40 | [Hudi Connector for Trino] | `UNDER REVIEW` | +| 40 | [Hudi Connector for Trino](./rfc-40/rfc-40.md) | `IN PROGRESS` | | 41 | [Hudi Snowflake Integration] | `UNDER REVIEW` | | 42 | [Consistent Hashing Index](./rfc-42/rfc-42.md) | `UNDER REVIEW` | | 43 | [Compaction / Clustering Service](./rfc-43/rfc-43.md) | `UNDER REVIEW` | diff --git a/rfc/rfc-40/Hudi_Connector.png b/rfc/rfc-40/Hudi_Connector.png new file mode 100644 index 0000000000000000000000000000000000000000..ddb388da4548d99607087c890376323a0795ac9a GIT binary patch literal 223858 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

Hhlu@}RhnEsnq_=7Xcg-P`_-J0Wq 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

#tXCE6?lV$b%AntCJr1TOp!1{tlu%>*hof-)+ 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 literal 0 HcmV?d00001 diff --git a/rfc/rfc-40/rfc-40.md b/rfc/rfc-40/rfc-40.md new file mode 100644 index 000000000..252507155 --- /dev/null +++ b/rfc/rfc-40/rfc-40.md @@ -0,0 +1,282 @@ + + +# RFC-40: Hudi Connector for Trino + +## Proposers + +- @codope +- @yihua + +## Approvers + +- @bvaradar +- @vinothchandar + +## Status + +JIRA: https://issues.apache.org/jira/browse/HUDI-2687 + +> Please keep the status updated in `rfc/README.md`. + +## Abstract + +Today, Hudi supports snapshot queries on Copy-On-Write (COW) tables and read-optimized queries on Merge-On-Read (MOR) +tables with Trino, through the input format based integration in the Hive connector. This approach has known performance +limitations with very large tables. Moreover, as Hudi keeps getting better, a new plugin to provide access to Hudi data +and metadata will help in unlocking capabilities such as metadata-based listing, full schema evolution, etc. for the +Trino users. A separate Hudi connector would also allow its independent evolution without having to worry about +hacking/breaking the Hive connector. A separate connector also falls in line with our vision when we think of a +standalone timeline server or a lake cache to balance the tradeoff between writing and querying. + +## Background + +The current Trino integration relies on a custom annotation `@UseFileSplitsFromInputFormat`. Any input format that has +this annotation would fetch splits by invoking the corresponding input format’s `getSplits()` method instead of Trino's +Hive connector native split loading logic. For instance, realtime queries on Hudi tables queried via Trino, this would +be a simple call to `HoodieParquetRealtimeInputFormat.getSplits()`. This approach has known performance limitations +due to the way Trino's split loading is designed, causing redundant Hudi table metadata listing while loading splits. +This issue has been fixed in Presto and the work to upstream those changes to Trino is [in progress](https://github.com/trinodb/trino/pull/9641). + +A connector enables Trino to communicate with external data sources. The connector interface is composed of four parts: +the Metadata API, Data Location API, Data Source API, and Data Sink API. These APIs are designed to allow performant +implementations of connectors within the environment of Trino's distributed execution engine. For an overview of the +Trino architecture please see [Trino concepts](https://trino.io/docs/current/overview/concepts.html). + +### Trino query execution model + +When Trino executes a query, it does so by breaking up the execution into a hierarchy of **stages**. A single stage is +implemented as a series of **tasks** distributed over a network of Trino workers. Tasks operate on **splits**, which are +partitions of a larger data set. Tasks at the source stage produce data in the form of **pages**, which are a collection +of rows in columnar format. These pages flow to other intermediate downstream stages. + +## Implementation + +Trino provides a service provider interface (SPI), which is a type of API used to implement a connector. By implementing +the SPI in a connector, Trino can use standard operations internally to connect to any data source and perform +operations on any data source. The connector takes care of the details relevant to the specific data source. + +Hudi connector will implement three parts of the API: + +- Operations to fetch table/view/schema metadata. +- Operations to produce logical units of data partitioning, so that Trino can parallelize reads and writes. +- Data sources and sinks that convert the source data to/from the in-memory format expected by the query engine. + +Hudi connector will be registered as a plugin, which will be loaded by Trino server at startup. The entry point will +be `HudiPlugin`, an implementation of the `Plugin` interface. Instances of Hudi connector are created by a +ConnectorFactory instance which is created when Trino calls `getConnectorFactory()` on the plugin. +A class-diagrammatic view of the different components is shown below. +![](Hudi_Connector.png) + +### Operations to fetch table/view/schema metadata + +The `ConnectorMetadata` interface provides important methods that are responsible for allowing Trino to look at lists of +schemas, lists of tables, lists of columns, and other metadata about a particular data source. The implementation of +this interface will create the `HoodieTableMetaClient` and pass it to the connector table handle through which Trino +can access metadata of a Hudi table. + + +### Operations to produce logical units of data partitioning + +We will need to implement the `ConnectorSplit` and `ConnectorSplitManager` interfaces. Hudi splits will be similar to +how Hive connector describes splits in the form of a path to a file with offset and length that indicate which part of +the file needs to be processed. + +```java +public class HudiSplit + implements ConnectorSplit { + private final String path; + private final long start; + private final long length; + private final long fileSize; + private final List addresses; + private final TupleDomain predicate; + private final List partitionKeys; + private final SplitWeight splitWeight; +} +``` + +The split manager will partition the data for a table into the individual chunks that Trino will distribute to workers +for processing. This is where the partition loader logic will reside. While listing the files for each Hudi partition, +the split manager will create one or more splits per file. Additionally, split generation is dynamic based on size to +futher improve the performance (see [query planning optimization](#query-planning-optimization) for more details). + +During query execution, the Trino coordinator tracks all splits available for processing and the locations where tasks +are running on workers and processing splits. As tasks finish processing and are producing more splits for downstream +processing, the coordinator continues to schedule tasks until no splits remain for processing. Once all splits are +processed on the workers, all data is available, and the coordinator can make the result available to the client. + +To support file listing for different query modes in Hudi, i.e., Read Optimized, Snapshot, and Incremental, Hudi +connector provides the abstraction of `HudiFileListing` which can be extended to contain custom logic of generating the +particular partitions to scan for a query and file listing for a partition. `HudiFileListing` abstraction relies on +`HudiPartitionInfo` to get the information of a partition, including relative partition path, partition name base on +Hive Metastore, key-value pairs of this partition, and predicates for the partition columns. We plan to support +Read Optimized query for COW table first. In the future, we'd like to merge the file listing abstraction into Hudi repo +so that such common file listing functionality can be reused across different query engines. + +```java +public abstract class HudiFileListing { + public abstract List getPartitionsToScan(); + public abstract List listStatus(HudiPartitionInfo partitionInfo); +} + +public abstract class HudiPartitionInfo { + protected final Table table; + protected final List partitionColumnHandles; + protected final TupleDomain constraintSummary; + // Relative partition path + protected String relativePartitionPath; + // Hive partition name containing partition column key-value pairs + protected String hivePartitionName; + // List of partition keys containing column key-value pairs + protected List hivePartitionKeys; +} +``` + +### Data source + +As mentioned in the query execution model, tasks in the source stage produce data in the form of pages. The Connector +Data Source API returns pages when it is passed a split, and operators typically consume input pages, perform +computation, and produce output pages. This is where we will implement `ConnectorPageSourceProvider` interface to create +page source. + +```java +public class HudiPageSourceProvider + implements ConnectorPageSourceProvider { + private final HdfsEnvironment hdfsEnvironment; + private final FileFormatDataSourceStats fileFormatDataSourceStats; + private final ParquetReaderOptions parquetReaderOptions; + private final DateTimeZone timeZone; +} +``` + +We could have different page sources for different base file formats like parquet, orc and avro. To adapt to these +different formats, We add an abstraction named `HudiPageSourceCreator` so that different base file format has its +corresponding logic to create `ConnectorPageSource` instance. For the parquet format, we plan to implement +`HudiParquetPageSourceCreator` by extending `HudiPageSourceCreator` and reuse the `ParquetPageSource` creation in the +Hive connector. This has the advantage of using Trino's custom `ParquetReader` that can efficiently skip data sections +by using statistics in file headers/footers. This is also where we will handle the column projections and build +predicates for the parquet reader. + +```java +public abstract class HudiPageSourceCreator { + public abstract ConnectorPageSource createPageSource( + Configuration configuration, + ConnectorIdentity identity, + List regularColumns, + HudiSplit hudiSplit); +} +``` + +### Snapshot queries on MOR table + +This requires merging base file and log files. +One way is to use the `HoodieRealtimeRecordReader` which can do compacted reading. +However, this means we will have to give up Trino's optimized parquet reader. +Another way is to enumerate the merged splits and use the native reader. +This can be done in `HoodieRealtimeInputFormatUtils#getRealtimeSplits()` which is invoked in `HoodieParquetRealtimeInputFormat`. +We can reuse this logic for reading MOR table via the connector. + +In summary, Trino coordinator uses the metadata and split manager APIs to gather information about the table and partitions to +generate a query plan and logical splits of the table contents. Each split is processed by a task in the Trino worker. +Here, workers invoke the page source APIs as tasks produce data in the form of pages. +Subsequently, native (parquet) reader read the block of pages while executing the query. + +## Query Planning Optimization + +We make several design decisions to optimize the query planning in the Hudi connector. + +### Background loading of Hudi splits + +Simply fetching all Hudi splits in a single thread synchronously in the `HudiSplitSource` significantly degrades the +query performances since the Trino coordinator cannot hand out the splits to the workers for execution until all the +splits are generated. To remove the bottleneck, we add a background split loader, `HudiSplitBackgroundLoader`, to +load the Hudi splits asynchronously. Once the query planning begins, the background split loader is initialized, and +starts to run immediately, regardless of whether the coordinator asks for the next batch of splits (i.e., +`HudiSplitSource::getNextBatch`). The background load keeps generating new splits to an internal connector split queue. +When the coordinator asks for the next batch of splits by calling `HudiSplitSource::getNextBatch`, the method fetches +the available splits from the internal connector split queue. + +The background split loader internally has a pipeline of processing: +- Fetching partition information: this step collects the information of all the partitions that need to be read for +file listing. +- Listing files in partitions: this step lists all the files per partition. Since each partition is independent of +another, we list each partition in a concurrent manner. To improve performance of file listing, there is a thread pool +so each thread takes a partition from a queue and does the file listing, until all the partitions are processed. +- Generating splits from each file: this step generates the splits from the files listed in the second step. Similarly, +there is a thread pool so each thread takes a file from a queue and does the split generation. + +The background loader keeps track of the progress of split generation and reports the status to `HudiSplitSource`. + +### Batching Hive metastore calls + +It is expensive to make RPC calls to Hive metastore to fetch information. For example, using `HiveMetastore::getPartition` +to get the information of a single partition takes around 100ms. Parallelizing the RPC calls to metastore is not enough +to meet the performance requirements, e.g., it takes 5-6 seconds for getting the information of 200 partitions using +`HiveMetastore::getPartition`, even with parallelism, due to the bottleneck at the Hive metastore serving the calls. + +To address this issue, we batch the partition information fetching using `HiveMetastore::getPartitionsByNames`. Instead +of fetching the information of one partition per call, such a method provides the ability to fetch the information of +multiple partitions per call. In this way, the number of calls to Hive metastore to fetch the information of all +partitions can be drastically reduced. We use exponential increased batch size, starting from 10, with the maximum of +100, i.e., with the batch size sequence of `"10, 20, 40, 80, 100, 100, ..."`. Using this optimization, it only takes +around 500ms to get the information of 200 partitions. + +### Dynamic size-based split weight + +Trino schedules a batch of splits for the page source provider to create pages. Trino decides the number +of splits in the batch using a quota of 100. By default, each split has a uniform weight of 1, thus each batch has +100 splits. If the splits are small in size, there may not be enough splits in the workers for processing, leading +to inefficient execution. Like Hive split, Hudi split incorporates the size-based split weight so that smaller splits +get lower weights. Trino then packs more splits in a batch if each has a smaller size, thus guaranteeing that each +batch has enough data to process. + +### Improving listing +In order to improve listing, we assume that the path exists, +and so we bypass the `FileSystem#exists` check in `AbstractHoodieTableFileSystemView` while fetching latest base files. +The connector will also support metadata-based listing which will retrieve partition listings from Hudi's internal metadata table. +This should further help improve the performance. + +## Rollout/Adoption Plan + +- What impact (if any) will there be on existing users? + +There will be no impact on existing users because this is a new connector. It does not change the behavior of current +integration through the existing Hive connector. It gives users more choice. + +- What do we lose if we move away from the Hive connector? + +Hive connector takes advantage of [caching](https://trino.io/docs/current/connector/hive-caching.html) to reduce load on +object storage. We will need to use or implement a cache file system like [Rubix](https://github.com/qubole/rubix) that +is optimized for columnar formats and object stores. This is being tracked by [HUDI-3339](https://issues.apache.org/jira/browse/HUDI-3339). + +- If we need special migration tools, describe them here. + +The implementation assumes that Hudi tables are synced to Hive. There is no Trino support for migrating Hive tables to +Hudi, so we need to either use the Hudi APIs or write custom Spark jobs to migrate the tables to Hudi. + +- When will we remove the existing behavior? + +We are not proposing to remove the existing behavior. We hope that we will have a critical mass of users who will like +to use the new Hudi connector. That said, we whould continue to support the current integration. + +## Test Plan + +- [x] POC for snapshot query on COW table +- [x] Unit tests for the connector +- [ ] Product integration tests +- [x] Benchmark snapshot query for large tables