Как я могу запросить файлы gz без расширения .gz в aws athena? - PullRequest
0 голосов
/ 08 ноября 2018

Мы сохраняем множество файлов журнала GZ на s3.

Мы хотим запросить их, используя aws Athena.

я использую regex cerde для запроса этих файлов

эта проблема:

файлы с расширением .gz правильно загружены в запрос но файлы, которые не заканчиваются на .gz (но они являются файлами gzip), загружаются неправильно имя файла, например:

s3: //athena-examples/11/04/server016.log.gz.20181104_230001

поэтому мой вопрос:

Как запросить файлы gz без расширения .gz ??

(я не могу переименовать все файлы ..)

создать схему tbl, как:

    CREATE EXTERNAL TABLE IF NOT EXISTS elb_logs_raw_native_part (
  request_timestamp string, 
  elb_name string, 
  request_ip string, 
  request_port int, 
  backend_ip string, 
  backend_port int, 
  request_processing_time double, 
  backend_processing_time double, 
  client_response_time double, 
  elb_response_code string, 
  backend_response_code string, 
  received_bytes bigint, 
  sent_bytes bigint, 
  request_verb string, 
  url string, 
  protocol string, 
  user_agent string, 
  ssl_cipher string, 
  ssl_protocol string ) 
PARTITIONED BY(year string, month string, day string)
ROW FORMAT SERDE 'org.apache.hadoop.hive.serde2.RegexSerDe'
WITH SERDEPROPERTIES (
         'serialization.format' = '1','input.regex' = '([^ ]*) ([^ ]*) ([^ ]*):([0-9]*) ([^ ]*)[:\-]([0-9]*) ([-.0-9]*) ([-.0-9]*) ([-.0-9]*) (|[-0-9]*) (-|[-0-9]*) ([-0-9]*) ([-0-9]*) \\\"([^ ]*) ([^ ]*) (- |[^ ]*)\\\" (\"[^\"]*\") ([A-Z0-9-]+) ([A-Za-z0-9.-]*)$' )
LOCATION 's3://athena-examples';
...