hudi-commits mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From GitBox <>
Subject [GitHub] [incubator-hudi] n3nash commented on a change in pull request #1191: [HUDI-503] Add hudi test suite documentation into the README file of the test suite module
Date Fri, 10 Jan 2020 02:17:13 GMT
n3nash commented on a change in pull request #1191: [HUDI-503] Add hudi test suite documentation
into the README file of the test suite module

 File path: hudi-test-suite/
 @@ -0,0 +1,300 @@
+  Licensed to the Apache Software Foundation (ASF) under one or more
+  contributor license agreements.  See the NOTICE file distributed with
+  this work for additional information regarding copyright ownership.
+  The ASF licenses this file to You under the Apache License, Version 2.0
+  (the "License"); you may not use this file except in compliance with
+  the License.  You may obtain a copy of the License at
+  Unless required by applicable law or agreed to in writing, software
+  distributed under the License is distributed on an "AS IS" BASIS,
+  See the License for the specific language governing permissions and
+  limitations under the License.
+This page describes in detail how to run end to end tests on a hudi dataset that helps in
improving our confidence 
+in a release as well as perform large scale performance benchmarks.  
+# Objectives
+1. Test with different versions of core libraries and components such as `hdfs`, `parquet`,
+`hive` and `avro`.
+2. Generate different types of workloads across different dimensions such as `payload size`,
`number of updates`, 
+`number of inserts`, `number of partitions`
+3. Perform multiple types of operations such as `insert`, `bulk_insert`, `upsert`, `compact`,
+4. Support custom post process actions and validations
+# High Level Design
+The Hudi test suite runs as a long running spark job. The suite is divided into the following
high level components : 
+## Workload Generation
+This component does the work of generating the workload; `inserts`, `upserts` etc.
+## Workload Scheduling
+Depending on the type of workload generated, data is either ingested into the target hudi

+dataset or the corresponding workload operation is executed. For example compaction does
not necessarily need a workload
+to be generated/ingested but can require an execution.
+## Other actions/operatons
+The test suite supports different types of operations besides ingestion such as Hive Query
execution, Clean action etc.
+# Usage instructions
+## Entry class to the test suite
+``` - Entry Point of the hudi test suite job.
+class wraps all the functionalities required to run a configurable integration suite.
+## Configurations required to run the job
+org.apache.hudi.bench.job.HudiTestSuiteConfig - Config class that drives the behavior of
 Review comment:

This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
For queries about this service, please contact Infrastructure at:

With regards,
Apache Git Services

View raw message