Technically Type Class is just a parameterized
trait with number of abstract methods that can be implemented in classes that extends that trait. As far everything looks really like in well-known sub-typing model.
The only difference is that wit…
One note: after querying Athena we remove any key at the result path at S3 ending with “.csv.metadata”. This is an object that is created by Athena that might be required for the Athena web console to properly display the results. It also causes problems when loading to Redshift as it will match our S3 path in the Redshift “copy” command causing a failure to load. See this discussion at the AWS forums.