Estoy ejecutando un rastreador sobre una carpeta que contiene varios archivos con diferentes esquemas. Espero encontrar una tabla para cada archivo.
Lo que pasa es que en el Glue Catalog puedo ver una tabla para cada archivo, con su propio esquema. Pero cuando trato de consultarlo a través de Redshift Spectrum (después de crear el esquema externo, etc.) obtengo esta excepción:
[XX000][500310] [Amazon](500310) Invalid operation: Parsed manifest is not a valid JSON object.¿Como arreglarlo?
Como se informó en este foro https://forums.aws.amazon.com/thread.jspa?threadID=266510
cada archivo debe estar en su propia carpeta/subdepósito
Entonces, para mí, poner cada archivo en su propia carpeta y configurar Glue Crawler para que se ejecute sobre la carpeta de nivel superior resolvió la excepción.
Ahora puedo consultarlo sin ningún problema.
Para Googlers:
El rastreador establece la Location de una tabla de Glue en un archivo si no puede crear una tabla a partir de la carpeta que lo contiene.
Es decir, el archivo:
Redshift Spectrum o Athena no admiten una Location que apunte directamente a un archivo, por lo que se produce este error.
Para resolver este problema, cree una carpeta contenedora, también asegúrese de que todos los hermanos tengan el mismo formato. Vuelva a ejecutar el rastreador.
A continuación, debería ver la Location que apunta a un prefijo en un cubo.