Hola yo intente crear una tabla con una simple consulta de la siguiente manera:
select distinct
b.week_start_date,
count(distinct visitor_id) as uu,
count(distinct visit_id) as session,
sum(1) FILTER (WHERE event_name = 'pageview') AS pageview
from
table a
join
table b on a.date = b.cy_date_num_yyyymmdd
where
a.date between '20211107' and '20211113'
group by
1
Sin embargo, me da un error
GENERIC_INTERNAL_ERROR: final del índice (-2147483642) no debe ser negativo
Y tengo que limpiar manualmente los datos de las ubicaciones especificadas en el manifiesto. Athena no borrará los datos en su cuenta.
Así que traté de crear una super tabla en blanco (consulta más abajo) con formato definido para cada métrica y, a continuación, inserte la consulta anterior en esta super tabla. Pero todavía se devuelve el mismo error. Alguien puede ayudarme a solucionar este problema?
CREATE EXTERNAL TABLE IF NOT EXISTS database.super_table
(
week_start_date date,
uu bigint,
session bigint,
pageview bigint
)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://abc-dataeng-temp-prod/xyz/product/'
TBLPROPERTIES (
'has_encrypted_data'='false',
'parquet.compression'='GZIP');