Erstellen von Tabellen für Flow-Protokolle im Apache-Parquet-Format
Das folgende Verfahren erstellt eine Amazon-VPC-Tabelle für Amazon-VPC-Flow-Protokolle im Apache-Parquet-Format.
So erstellen Sie eine Athena-Tabelle für Amazon-VPC-Flow-Protokolle im Parquet-Format
-
Geben Sie eine DDL-Anweisung wie die folgende in den Abfrageeditor der Athena-Konsole ein und befolgen Sie die Richtlinien in diesem Überlegungen und Einschränkungen-Abschnitt. Die Beispielanweisung erstellt eine Tabelle mit den Spalten für Amazon-VPC-Flow-Protokolle Version 2 bis 5, wie in Flow-Protokoll-Datensätze im Parquet-Format dokumentiert, Hive stündlich partitioniert. Wenn Sie keine stündlichen Partitionen haben, entfernen Sie
houraus derPARTITIONED BY-Klausel.CREATE EXTERNAL TABLE IF NOT EXISTS vpc_flow_logs_parquet ( version int, account_id string, interface_id string, srcaddr string, dstaddr string, srcport int, dstport int, protocol bigint, packets bigint, bytes bigint, start bigint, `end` bigint, action string, log_status string, vpc_id string, subnet_id string, instance_id string, tcp_flags int, type string, pkt_srcaddr string, pkt_dstaddr string, region string, az_id string, sublocation_type string, sublocation_id string, pkt_src_aws_service string, pkt_dst_aws_service string, flow_direction string, traffic_path int ) PARTITIONED BY ( `aws-account-id` string, `aws-service` string, `aws-region` string, `year` string, `month` string, `day` string, `hour` string ) ROW FORMAT SERDE 'org.apache.hadoop.hive.ql.io.parquet.serde.ParquetHiveSerDe' STORED AS INPUTFORMAT 'org.apache.hadoop.hive.ql.io.parquet.MapredParquetInputFormat' OUTPUTFORMAT 'org.apache.hadoop.hive.ql.io.parquet.MapredParquetOutputFormat' LOCATION 's3://amzn-s3-demo-bucket/prefix/AWSLogs/' TBLPROPERTIES ( 'EXTERNAL'='true', 'skip.header.line.count'='1' ) -
Ändern Sie Beispiel-
LOCATION 's3://amzn-s3-demo-bucket/so, dass auf den Amazon-S3-Pfad gezeigt wird, der Ihre Protokolldaten enthält.prefix/AWSLogs/' -
Führen Sie die Abfrage in der Athena-Konsole aus.
-
Wenn Ihre Daten im HIVE-kompatiblen Format vorliegen, führen Sie den folgenden Befehl in der Athena-Konsole aus, um die Hive-Partitionen im Metastore zu aktualisieren und zu laden. Nachdem die Abfrage abgeschlossen ist, können Sie die Daten in der
vpc_flow_logs_parquet-Tabelle abfragen.MSCK REPAIR TABLE vpc_flow_logs_parquetWenn Sie keine Hive-kompatiblen Daten verwenden, führen Sie ALTER TABLE ADD PARTITION aus, um die Partitionen zu laden.
Weitere Informationen zur Verwendung von Athena zum Abfragen von Amazon-VPC-Flow-Protokollen im Parquet-Format finden Sie im Beitrag Optimieren der Leistung und Reduzieren der Kosten für Netzwerkanalysen mit VPC-Flow-Protokollen im Apache-Parquet-Format