Creating s3 external table in amazon EMR with remote metastore

447 Views Asked by At

We started using Amazon EMR recently for one new project (Version emr-5.11.0).We made some architecture changes in the EMR cluster

1) We moved metastore to another Postgres instance instead of default mysql/derby

2) Running metastore service in a different instance (which is not part of amazon EMR cluster) and made the necessary changes in hive-site.xml.

In EMR

stop hive-hcatalog-server

In new instance

hive --service metastore

Everything is working as expected except 's3 external tables' .When I try to create an external s3 table it is giving us an error like below

message:java.lang.RuntimeException: java.lang.ClassNotFoundException: Class org.apache.hadoop.fs.s3a.S3AFileSystem not found

We tried with s3/s3n/s3a with credentials also for creating the external table .If we are running the metastore service inside the EMR master node and ran the same query .It is working without issues . Do we need to do any configuration / adding additional libraries in metastore instance this to work ?

Note: The metastore instance has both Apache hadoop and hive latest binaries .We are going with HDFS filesystem .Able to perform all operations other than external s3 tables .Tried everything from beeline and hive CLI

0

There are 0 best solutions below