You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
table is aggregate model. when pre-aggregation mode is OFF, storage layer will merge tuples of same key into one tuple before return data for execution layer.
when pre-aggregation mode is ON, storage will do nothing.
for example, we have a aggreagate model table t1 with
c1 key,
c2 int sum
and then insert data into t1 with
insert into t1 values(1, 1), (1, 2)
when pre-aggregation mode is OFF, execution layer get
1, 3
but when pre-aggregation mode is ON, execution layer get
1, 2
1, 1
So, we set pre-aggregation to ON only when we can ensure not merging data will not leading to wrong result. Currently, we could only support the aggregation function exactly same with aggregation function in table. We will support more pattern in future.
you can upgrade your doris to 2.1 latest version. we have fixed this in 2.1 version. for 2.0 version, there is too much change, so we didn't merge this. #34738
Search before asking
Version
2.0.8
What's Wrong?
create table sql:
CREATE TABLE dws_mediago_bidder_dsp_multi_measures_hourly ( campaign_id int(11) NULL, asset_id int(11) NULL, ssp int(11) NULL, ad_id int(11) NULL, crid varchar(50) NULL, domain varchar(2000) NULL, ip_country varchar(200) NULL, account_id varchar(32) NULL, account_name varchar(500) NULL, company_id varchar(32) NULL, company_name varchar(500) NULL, am_name varchar(50) NULL, platform_type varchar(10) NULL, account_category varchar(100) NULL, company_region varchar(20) NULL, charge_type varchar(20) NULL, target_cpa DECIMAL(15, 9) NULL, d_s date NULL, h_s int(11) NULL, ad_count bigint(20) SUM NULL, all_req_num bigint(20) SUM NULL, account_gross_click_cost double SUM NULL, click bigint(20) SUM NULL, click_cost double SUM NULL, conversion bigint(20) SUM NULL, cv bigint(20) SUM NULL, imp bigint(20) SUM NULL, imp_cost double SUM NULL, vimp bigint(20) SUM NULL, mcv bigint(20) SUM NULL, flr_sum_fix double SUM NULL, bid_price_sum double SUM NULL, req_num double SUM NULL, prctr double SUM NULL, pclick double SUM NULL, req_ad_num bigint(20) SUM NULL ) ENGINE=OLAP AGGREGATE KEY( campaign_id , asset_id , ssp , ad_id , crid , domain , ip_country , account_id , account_name , company_id , company_name , am_name , platform_type , account_category , company_region , charge_type , target_cpa , d_s , h_s ) COMMENT 'OLAP' PARTITION BY RANGE( d_s , h_s )() DISTRIBUTED BY HASH( campaign_id ) BUCKETS 36 PROPERTIES ( "replication_allocation" = "tag.location.default: 3", "bloom_filter_columns" = "ssp, domain", "is_being_synced" = "false", "storage_format" = "V2", "light_schema_change" = "true", "disable_auto_compaction" = "false", "enable_single_replica_compaction" = "false" );
first sql:
![image](https://private-user-images.githubusercontent.com/24452979/388070743-fae74342-a3f5-4a60-abbe-d56494c7faff.png?jwt=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJnaXRodWIuY29tIiwiYXVkIjoicmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbSIsImtleSI6ImtleTUiLCJleHAiOjE3Mzk3NzgwMDYsIm5iZiI6MTczOTc3NzcwNiwicGF0aCI6Ii8yNDQ1Mjk3OS8zODgwNzA3NDMtZmFlNzQzNDItYTNmNS00YTYwLWFiYmUtZDU2NDk0YzdmYWZmLnBuZz9YLUFtei1BbGdvcml0aG09QVdTNC1ITUFDLVNIQTI1NiZYLUFtei1DcmVkZW50aWFsPUFLSUFWQ09EWUxTQTUzUFFLNFpBJTJGMjAyNTAyMTclMkZ1cy1lYXN0LTElMkZzMyUyRmF3czRfcmVxdWVzdCZYLUFtei1EYXRlPTIwMjUwMjE3VDA3MzUwNlomWC1BbXotRXhwaXJlcz0zMDAmWC1BbXotU2lnbmF0dXJlPTBmMmYzNTZlZjkzNGEyM2Y3ZjFiZTI4OWZlNzJlYTU5MjcwOTllZDU0ODhlZjg1YThiNGQ1ZjQwNmQ2ZWVlZWEmWC1BbXotU2lnbmVkSGVhZGVycz1ob3N0In0.-ZY4p55Isoy1yNabvqOW7EteYKWssEL_jw4IEd5KFHU)
second sql:
![image](https://private-user-images.githubusercontent.com/24452979/388070869-0a1ca7a7-f942-400d-a671-8fef6b7ecb7d.png?jwt=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJnaXRodWIuY29tIiwiYXVkIjoicmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbSIsImtleSI6ImtleTUiLCJleHAiOjE3Mzk3NzgwMDYsIm5iZiI6MTczOTc3NzcwNiwicGF0aCI6Ii8yNDQ1Mjk3OS8zODgwNzA4NjktMGExY2E3YTctZjk0Mi00MDBkLWE2NzEtOGZlZjZiN2VjYjdkLnBuZz9YLUFtei1BbGdvcml0aG09QVdTNC1ITUFDLVNIQTI1NiZYLUFtei1DcmVkZW50aWFsPUFLSUFWQ09EWUxTQTUzUFFLNFpBJTJGMjAyNTAyMTclMkZ1cy1lYXN0LTElMkZzMyUyRmF3czRfcmVxdWVzdCZYLUFtei1EYXRlPTIwMjUwMjE3VDA3MzUwNlomWC1BbXotRXhwaXJlcz0zMDAmWC1BbXotU2lnbmF0dXJlPTQyZDNiNzY5YTdhM2Y1Yzk1NmRlYzc4ZDAwODQ5MDVjM2M3ZTg4MjY5MDcxZjU3ZDZmMjU2OWVmOWY2MDIzMGYmWC1BbXotU2lnbmVkSGVhZGVycz1ob3N0In0.BT-NHKqezNYWVklqH2HOljfqfsGfSbBoGmPGwpPOBuI)
you can see different select express leading to dozens of times performance difference
first sql explain:
![image](https://private-user-images.githubusercontent.com/24452979/388071822-ea0f20d4-99fd-4895-9705-7c149d1265f1.png?jwt=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJnaXRodWIuY29tIiwiYXVkIjoicmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbSIsImtleSI6ImtleTUiLCJleHAiOjE3Mzk3NzgwMDYsIm5iZiI6MTczOTc3NzcwNiwicGF0aCI6Ii8yNDQ1Mjk3OS8zODgwNzE4MjItZWEwZjIwZDQtOTlmZC00ODk1LTk3MDUtN2MxNDlkMTI2NWYxLnBuZz9YLUFtei1BbGdvcml0aG09QVdTNC1ITUFDLVNIQTI1NiZYLUFtei1DcmVkZW50aWFsPUFLSUFWQ09EWUxTQTUzUFFLNFpBJTJGMjAyNTAyMTclMkZ1cy1lYXN0LTElMkZzMyUyRmF3czRfcmVxdWVzdCZYLUFtei1EYXRlPTIwMjUwMjE3VDA3MzUwNlomWC1BbXotRXhwaXJlcz0zMDAmWC1BbXotU2lnbmF0dXJlPWRlYjQ0ZDVmNDMyNmQwNWY5NzIxMTczNWUxN2RhN2JlYzg0Mzc0ZDM1ZjBhMTBhNGRiNzRkOTg4ZDYxMTdiZmEmWC1BbXotU2lnbmVkSGVhZGVycz1ob3N0In0.2vv-NxbCnONTCyRrouTDKQWPkfOBgpp7vWcuPIRLG4c)
![image](https://private-user-images.githubusercontent.com/24452979/388071879-78e59053-644e-40f8-bece-4136de4158ea.png?jwt=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJnaXRodWIuY29tIiwiYXVkIjoicmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbSIsImtleSI6ImtleTUiLCJleHAiOjE3Mzk3NzgwMDYsIm5iZiI6MTczOTc3NzcwNiwicGF0aCI6Ii8yNDQ1Mjk3OS8zODgwNzE4NzktNzhlNTkwNTMtNjQ0ZS00MGY4LWJlY2UtNDEzNmRlNDE1OGVhLnBuZz9YLUFtei1BbGdvcml0aG09QVdTNC1ITUFDLVNIQTI1NiZYLUFtei1DcmVkZW50aWFsPUFLSUFWQ09EWUxTQTUzUFFLNFpBJTJGMjAyNTAyMTclMkZ1cy1lYXN0LTElMkZzMyUyRmF3czRfcmVxdWVzdCZYLUFtei1EYXRlPTIwMjUwMjE3VDA3MzUwNlomWC1BbXotRXhwaXJlcz0zMDAmWC1BbXotU2lnbmF0dXJlPTJjYzc0NGRiZTM3YzI2ZDYxNWE2YWZjMzkxMzdiNjExNDQ3MGE0ODQ0NzcwOGY4NzIwNWZkMzk1NmI2MTE1NjgmWC1BbXotU2lnbmVkSGVhZGVycz1ob3N0In0.dnN_OYGCTvJxsBRUJSCcxQwnWRMWXYhkXvhv8lKzBLc)
second sql explain:
![image](https://private-user-images.githubusercontent.com/24452979/388071999-a8a85fdd-d413-48d0-b5d0-a95242edf885.png?jwt=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJnaXRodWIuY29tIiwiYXVkIjoicmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbSIsImtleSI6ImtleTUiLCJleHAiOjE3Mzk3NzgwMDYsIm5iZiI6MTczOTc3NzcwNiwicGF0aCI6Ii8yNDQ1Mjk3OS8zODgwNzE5OTktYThhODVmZGQtZDQxMy00OGQwLWI1ZDAtYTk1MjQyZWRmODg1LnBuZz9YLUFtei1BbGdvcml0aG09QVdTNC1ITUFDLVNIQTI1NiZYLUFtei1DcmVkZW50aWFsPUFLSUFWQ09EWUxTQTUzUFFLNFpBJTJGMjAyNTAyMTclMkZ1cy1lYXN0LTElMkZzMyUyRmF3czRfcmVxdWVzdCZYLUFtei1EYXRlPTIwMjUwMjE3VDA3MzUwNlomWC1BbXotRXhwaXJlcz0zMDAmWC1BbXotU2lnbmF0dXJlPWNkYjMxOTg4NGQzZDA4OTdmNmYwOThiYzMyM2ZjNjYxNjNhMDM3NmY1Y2M4NmZhZDE1NGEyOGZlZWUwY2I0YzkmWC1BbXotU2lnbmVkSGVhZGVycz1ob3N0In0.DTyGjm5woUuIXaaAl_XeOeceCnpk7mzx50vyLPABqJY)
![image](https://private-user-images.githubusercontent.com/24452979/388072247-bd4f8974-f1e6-434e-8e07-3c71ce3c3013.png?jwt=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJnaXRodWIuY29tIiwiYXVkIjoicmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbSIsImtleSI6ImtleTUiLCJleHAiOjE3Mzk3NzgwMDYsIm5iZiI6MTczOTc3NzcwNiwicGF0aCI6Ii8yNDQ1Mjk3OS8zODgwNzIyNDctYmQ0Zjg5NzQtZjFlNi00MzRlLThlMDctM2M3MWNlM2MzMDEzLnBuZz9YLUFtei1BbGdvcml0aG09QVdTNC1ITUFDLVNIQTI1NiZYLUFtei1DcmVkZW50aWFsPUFLSUFWQ09EWUxTQTUzUFFLNFpBJTJGMjAyNTAyMTclMkZ1cy1lYXN0LTElMkZzMyUyRmF3czRfcmVxdWVzdCZYLUFtei1EYXRlPTIwMjUwMjE3VDA3MzUwNlomWC1BbXotRXhwaXJlcz0zMDAmWC1BbXotU2lnbmF0dXJlPTBmNWVkZWVkN2I1ZDlkZDU2ZDQ1NWU0ZmE4MzFiMjU5ZTIyYzFkNGU5NTY3YTNmMTZiZTgzZTlkZDM0Yjg0NTImWC1BbXotU2lnbmVkSGVhZGVycz1ob3N0In0.ARwzl3L37VKbk0Pr5m6mRV4JniF3pWo2qnFo_jZ4YLQ)
difference:
VOlapScanNode PREAGGREGATION of first sql is off, second sql is on
What You Expected?
1.why VOlapScanNode PREAGGREGATION of first sql is off?
2.is VOlapScanNode PREAGGREGATION the key of performance diff?
3.is there any way to solve it?
How to Reproduce?
create table sql:
CREATE TABLE
test2(
k1date NULL,
v2int(11) SUM NULL DEFAULT "1" ) ENGINE=OLAP AGGREGATE KEY(
k1) COMMENT 'OLAP' DISTRIBUTED BY HASH(
k1) BUCKETS 32 PROPERTIES ( "replication_allocation" = "tag.location.default: 3", "is_being_synced" = "false", "storage_format" = "V2", "light_schema_change" = "true", "disable_auto_compaction" = "false", "enable_single_replica_compaction" = "false" );
explain select sum(if(k1='12',v2,0)) from test2;
Anything Else?
No response
Are you willing to submit PR?
Code of Conduct
The text was updated successfully, but these errors were encountered: