У меня есть вложенный файл JSON, который выглядит следующим образом:
\n \"total\" : 510,\n \"start\" : 0,\n \"count\" : 500,\n \"data\" : [ {\n \"id\" : 294,\n \"candidate\" : {\n \"id\" : 5275,\n \"firstName\" : \"bob\",\n \"lastName\" : \"bob\"\n },\n \"sendingUser\" : {\n \"id\" : 5,\n \"firstName\" : \"tom\",\n \"lastName\" : \"tom\"\n },\n \"dateAdded\" : 1487865908960,\n \"jobOrder\" : {\n \"id\" : 71,\n \"title\" : \"Job\"\n },\n \"status\" : \"1st Interview\",\n \"_score\" : 1.0\n }
У меня это хранится в S3, и я пытаюсь создать таблицу в AWS Athena, редактор, который я сделал, находится ниже:
CREATE EXTERNAL TABLE IF NOT EXISTS cvtest (
data struct < candidate struct <id string, firstName string, lastName string>,
sendingUser struct <id string, firstName string, lastName string>,
dateAdded string,
jobOrder string,
score string
>
)
ROW FORMAT SERDE 'org.openx.data.jsonserde.JsonSerDe'
LOCATION 's3://es-cvsent';
Но запрос выдает ошибку ниже;
FAILED: ParseException line 2:26 missing : at 'struct' near '<EOF>' line 2:37 missing : at 'string' near '<EOF>' line 2:55 missing : at 'string' near '<EOF>' line 2:72 missing : at 'string' near '<EOF>' line 3:28 missing : at 'struct' near '<EOF>' line 3:39 missing : at 'string' near '<EOF>' line 3:57 missing : at 'string' near '<EOF>' line 3:74 missing : at 'string' near '<EOF>' line 4:26 missing : at 'string' near '<EOF>' line 5:25 missing : at 'string' near '<EOF>' line 6:22 missing : at 'string' near '<EOF>'
This query ran against the "test" database, unless qualified by the query. Please post the error message on our forum or contact customer support with Query Id: 84e876e8-b947-490e-b2b6-7bf9c376266e.
Кто-нибудь может увидеть, что я делаю не так?
"{
и завершающий}"
отсутствуют, что сделало бы его действительной строкой JSON, содержащей объект JSON, но все же не действительным объектом JSON в целом, поэтому решение, вероятно, будет более сложным, чем просто это. - person Michael - sqlbot   schedule 12.08.2017