วิธีการทีจะจัดการมันจบดัชนีจะต้องไม่เป็นลงในภาษา sql?

0

คำถาม

สวัสดีค่ะฉันพยายามจะสร้างโต๊ะด้วยของธรรมดาแบบสืบค้นที่ด้านล่างนี้:

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

อย่างไรก็ตามฉันเข้าใจข้อผิดพลาด

GENERIC_INTERNAL_ERROR:จบดัชนี(-2147483642)จะต้องไม่เป็นลบ

และฉันต้องการให้ด้วยตนเองทำความสะอาดข้อมูลจากตำแหน่งที่ระบุในรายการ Athena จะไม่ยอมลบข้อมูลในบัญชีของคุณ.

ดังนั้นฉันพยายามจะสร้างสุดยอดช่องว่างบนโต๊ะ(กับการค้นหาด้านล่างนี้)กับรูปแบบกำหนดไว้สำหรับแต่ละเมตริก the imperial system แล้วแทรกที่อยู่เหนือการขอข้อมูเข้ามาในนี้สุดยอดทั้งโต๊ะนะ แต่มันก็ยังกลับมาเหมือนข้อผิดพลาด ใครก็ได้ช่วยฉันแก้ปัญหานี้?

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');
1

คำตอบที่ดีที่สุด

0

ฉันไม่ค่อยแน่ใจเกี่ยวกับเรื่องที่เกิดข้อผิดพลาด(มีขนาดใหญ่คอลัมน์คุณค่าบางที?). ลองวิธี:

select
   b.week_start_date,
   count(distinct visitor_id) as uu,
   count(distinct session) as session,
   sum(1) as pageview
from table a
join table b on a.date = b.cy_date_num_yyyymmdd
where a.date between '20211107' and '20211113' 
and visitor_id is not null and session_id is not null and event_name = 'pageview'
group by 1
2021-12-06 00:50:41

ในภาษาอื่นๆ

หน้านี้อยู่ในภาษาอื่นๆ

Русский
..................................................................................................................
Italiano
..................................................................................................................
Polski
..................................................................................................................
Română
..................................................................................................................
한국어
..................................................................................................................
हिन्दी
..................................................................................................................
Français
..................................................................................................................
Türk
..................................................................................................................
Česk
..................................................................................................................
Português
..................................................................................................................
中文
..................................................................................................................
Español
..................................................................................................................
Slovenský
..................................................................................................................

ดังอยู่ในนี้หมวดหมู่

ดังคำถามอยู่ในนี้หมวดหมู่