2017-03-07 4 views
0

Dies ist mein erster Versuch, meinen eigenen Tisch in Athena zu machen, also sei bitte sanft :) Ich habe mehrere andere Tabellen basierend auf AWS Beispiele in diesem laufen Datenbank ohne Probleme, also bin ich zuversichtlich, dass die DB korrekt eingerichtet ist.Amazon Athena Tabellenerstellung schlägt fehl mit "keine praktikable Alternative am Eingang 'externe erstellen'"

Auch ich bin sicher, dass meine Regex ist grauenhaft, bitte versuchen Sie es für jetzt zu ignorieren!

ich einige VPC Flow-Protokolle auf S3 gespeichert haben, das Format der Protokolldateien ist:

2 123456654321 eni-ae343be4 100.75.233.178 172.31.26.162 49178 80 6 6 270 1488872163 1488872180 ACCEPT OK 
2 123456654321 eni-ae343be4 100.75.233.178 172.31.26.162 64013 80 6 2 84 1488872163 1488872180 ACCEPT OK 
2 123456654321 eni-ae343be4 206.97.36.202 172.31.26.162 33164 445 6 2 96 1488872163 1488872180 REJECT OK 

Ich habe meine Tabelle auf der Grundlage der AWS example published here. Die Abfrage, die ich erstellt habe, ist:

CREATE EXTERNAL TABLE IF NOT EXISTS flow_logs_raw_native (
     version int, 
     account-id bigint, 
     interface-id string, 
     srcaddr string, 
     dstaddr string, 
     srcport int, 
     dstport int, 
     protocol int, 
     packets int, 
     bytes int, 
     Tstart bigint, 
     Tend bigint, 
     action string, 
     log-status string 
) 
ROW FORMAT SERDE 'org.apache.hadoop.hive.serde2.RegexSerDe' 
WITH SERDEPROPERTIES (
     'serialization.format' = '1','input.regex' = '([^ ]*) ([^ ]*) ([^ ]*) ([^ ]*) ([^ ]*) ([^ ]*) ([^ ]*) ([^ ]*) ([^ ]*) ([^ ]*) ([^ ]*) ([^ ]*) ([^ ]*) ([^ ]*)') LOCATION 's3://vpcflowlogstos3-bucket-1ns5peqxgc31n/flowlogs/'; 

Jedes Mal, wenn ich die Abfrage ausführen erhalte ich eine Fehlermeldung:

line 1:8: no viable alternative at input 'create external' (service: amazonathena; status code: 400; error code: invalidrequestexception; request id: b0cfde99-031c-11e7-b4de-4139fae95147) 

Ich habe jetzt ein paar Stunden bei dieser gesucht und versucht, eine finden Rechtschreibfehler oder fehlendes Element, aber ich stecke fest! Kann jemand sehen, was hier falsch ist?

Vielen Dank,

Kelly.

Antwort

0

Oh, ich habe es, ich habe es!

Ich habe Bindestriche für einige der Feldnamen verwendet, dies wird von Athena NICHT unterstützt. Änderte sie zu unterstreichen und weg ging es!

Verwandte Themen