2

I a trying to run Hudi deltastreamer on AWS EMR. Followed the steps in this blog. https://cwiki.apache.org/confluence/pages/viewrecentblogposts.action?key=HUDI

But when I run the below spark submit, error comes:

 Exception in thread "main" org.apache.hudi.com.beust.jcommander.ParameterException: Was passed main parameter '--table-type' but no main parameter was defined in your arg class
            at org.apache.hudi.com.beust.jcommander.JCommander.initMainParameterValue(JCommander.java:936)
            at org.apache.hudi.com.beust.jcommander.JCommander.parseValues(JCommander.java:752)
            at org.apache.hudi.com.beust.jcommander.JCommander.parse(JCommander.java:340)
            at org.apache.hudi.com.beust.jcommander.JCommander.parse(JCommander.java:319)

Command I run is below:

spark-submit --class org.apache.hudi.utilities.deltastreamer.HoodieDeltaStreamer \
--packages org.apache.spark:spark-avro_2.11:2.4.4 \
 --master yarn --deploy-mode client /usr/lib/hudi/hudi-utilities-bundle.jar \
--table-type COPY_ON_WRITE --source-ordering-field payment_date --source-class org.apache.hudi.utilities.sources.ParquetDFSSource \
--target-base-path s3://sakila-db/hudi-payment \
--target-table hudi-payment \
--transformer-class org.apache.hudi.utilities.transform.AWSDmsTransformer \
--payload-class org.apache.hudi.payload.AWSDmsAvroPayload \
--hoodie-conf hoodie.datasource.write.recordkey.field=order_id,hoodie.datasource.write.partitionpath.field=staff_id,hoodie.deltastreamer.source.dfs.root=s3://sakila-db/sakila/payment

Please help.

byte_array
  • 2,767
  • 1
  • 16
  • 10
raghuvd
  • 665
  • 1
  • 5
  • 6

1 Answers1

2

Based on the EMR releases the hudi version that is currently supported is 0.5.0-incubating. The steps you are following are for 0.5.1 where the --table-type parameter is the new name for the old --storage-type in 0.5.0.

Try rerunning using --storage-type instead of --table-type if you are using 0.5.0

reymargera
  • 21
  • 1