Ahoj, snažím se vytvořit tabulku s jednoduchým dotazem, jak je uvedeno níže:
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
Nicméně, dostanu chybu
GENERIC_INTERNAL_ERROR: end index (-2147483642), musí být negativní
A musím ručně čistit data z míst uvedených v seznamu. Athena nebude mazat data na vašem účtu.
Takže jsem se snažil vytvořit super prázdnou tabulku (dotaz níže) s definovanými formátu pro každou metriku, a pak vložte výše uvedený dotaz do této super tabulka. Ale to stále vrací stejnou chybu. Může mi někdo pomoci vyřešit tento problém?
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');