AWS Конвейер данных S3 CSV в DynamoDB JSON Ошибка - PullRequest
0 голосов
/ 20 апреля 2020

Я пытаюсь вставить несколько CSV, расположенных в каталоге S3 с AWS конвейером данных, но я принимаю эту ошибку.

в javax.security.auth.Subject.doAs (Тема . java: 422) в орг. apache .had oop .security.UserGroupInformation.doAs (UserGroupInformation. java: 1844) в орг. apache .had oop .mapred.YarnChild.main (YarnChild. java: 169) Причина: com.google.gson.stream.MalformedJsonException: Ожидается ':' в строке 1 столбца 10 в com.google.gson.stream.JsonReader.syntaxError (JsonReader. java: 1505) на com.google.gson.stream.JsonReader.doPeek (JsonReader. java: 519) на com.google.gson.stream.JsonReader.peek (JsonReader. java: 414) на com.google.gson. .internal.bind. .bind.MapTypeAdapterFactory $ Adapter.read (MapTypeAdapterFactory. java: 187) на странице com.google.gson.inte. rnal.bind.MapTypeAdapterFactory $ Adapter.read (MapTypeAdapterFactory. java: 145) на com.google.gson.Gson.from Json (Gson. java: 803) ... еще 15 Исключение в потоке "main "java .io. errorStackTrace amazon aws .datapipeline.taskrunner.TaskExecutionException: Не удалось завершить преобразование EMR. at amazon aws .datapipeline.activity.EmrActivity.runActivity (EmrActivity. java: 67) в amazon aws .datapipeline.objects.AbstractActivity.run (AbstractActivity. java: 16) в amazon aws. datapipeline.taskrunner.TaskPoller.executeRemoteRunner (TaskPoller. java: 136) в Amazon aws .datapipeline.taskrunner.TaskPoller.executeTask (TaskPoller. java: 105 .run (TaskPoller. java: 81) на private.com.amazon aws .services.datapipeline.poller.PollWorker.executeWork (PollWorker. java: 76) на private.com.amazon aws .services .datapipeline.poller.PollWorker.run (PollWorker. java: 53) в java .lang.Thread.run (Thread. java: 748) Причина: amazon aws .datapipeline.taskrunner.TaskExecutionException: в javax.security.auth.Subject.doAs (Subject. java: 422) в org. apache .had oop .security.UserGroupInformation.doAs (UserGroupInformation. java: 1844) в org. apache .had oop .mapred.YarnChild.main (YarnChild. java: 169) Причина: com.google.gson.stream.Malfor medJsonException: Ожидается ':' в строке 1 столбца 10 на com.google.gson.stream.JsonReader.syntaxError (JsonReader. java: 1505) на com.google.gson.stream.JsonReader.doPeek (JsonReader. java : 519) на com.google.gson.stream.JsonReader.peek (JsonReader. java: 414) на com.google.gson.internal.bind.ReflectiveTypeAdapterFactory $ Adapter.read (ReflectiveTypeAdapterFactory. java: 157) на com.google.gson.internal.bind.TypeAdapterRuntimeTypeWrapper.read (TypeAdapterRuntimeTypeWrapper. java: 40) в com.google.gson.internal.bind.MapTypeAdapterFactory $ Adapter.read (MapTypeAdapterFactory: 10: at. 1052) на 10. google.gson.internal.bind.MapTypeAdapterFactory $ Adapter.read (MapTypeAdapterFactory. java: 145) на com.google.gson.Gson.from Json (Gson. java: 803) ... еще 15 исключений в теме "main" java .io.IOException: задание не выполнено! в орг. apache .had oop .mapred.JobClient.runJob (JobClient. java: 873) в орг. apache .had oop .dynamodb.tools.DynamoDBImport.run (DynamoDBImport. * 1062) *: 81) в орг. apache .had oop .util.ToolRunner.run (ToolRunner. java: 76) в орг. apache .had oop .dynamodb.tools.DynamoDBImport.main ( DynamoDBImport. java: 43) в sun.reflect. Родной метод. *: 43) at java .lang.reflect.Mehod.invoke (Method. java: 498) в org. apache .had oop .util.RunJar.run (RunJar. java: 239 ) в организации. apache .had oop .util.RunJar.main (RunJar. java: 153) в amazon aws .datapipeline.cluster.EmrUtil.runSteps (EmrUtil. java: 286) в amazon aws .datapipeline.activity.EmrActivity.runActivity (EmrActivity. java: 63) ... Еще 7

1 Ответ

0 голосов
/ 23 апреля 2020

Это решило мою проблему.

формат, который использует AWS DATA Pipeline.

{"Name": {"S":"Amazon push"},"Category": {"S":"Amazon Web Services"}}
{"Name": {"S":"Amazon S3"},"Category": {"S":"Amazon Web Services"}}```

References:

https://calorious.wordpress.com/2016/03/18/episode-4-importing-json-into-dynamodb/

https://medium.com/@ashleywnj/appsync-s3-data-pipeline-dynamodb-854f99d70b41
...