[ https://issues.apache.org/jira/browse/CARBONDATA-4187?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17343908#comment-17343908 ] Sushant Sammanwar commented on CARBONDATA-4187: ----------------------------------------------- [^Testing-Results-loading-stats_Carbon.xlsx] Adding test results, details > Performance Issue with Materialized views - increased loading time due to full refresh > -------------------------------------------------------------------------------------- > > Key: CARBONDATA-4187 > URL: https://issues.apache.org/jira/browse/CARBONDATA-4187 > Project: CarbonData > Issue Type: Bug > Components: core > Affects Versions: 2.1.0 > Reporter: Sushant Sammanwar > Priority: Major > Labels: materializedviews, performance > > Hi Team , > We have been doing a POC by using Carbon 2.1.0 and created a wrapper code around carbon and deployed it as docker container. > Concurrent data loading is happening in many tables. > Our objective if get optimal performance for aggregated queries and using materialized views . > Our observation is after creating MVs data loading is slow and not able to keep-up the pace of incoming data . > Process is also consuming a lot of memory when MVs are created . > Data is received in continuous manner and MVs are refreshed which is resulting in increased load time. > Ideally MVs should only perform incremental refresh as it doesnot require to calculate old data again. > But it seems the full refresh is causing high memory usages and increased loading time. > Testing involved loading data without MVs for 6 hrs , then creating MVs and load data again for 4 hours. > Loading time with MVs increased there creating backlog of data ( loaded only 1/5 th no. of rows than expected). > Below are major bottlenecks observed : > 1. High Memory consumption after creating MVs > 2. MVs doing a full refresh > Please find attached details of testing with list of tables. > Below is definition of table : > create table if not exists fact_365_1_eutrancell_1 (ts timestamp, metric STRING, tags_id STRING, value DOUBLE, epoch bigint) partitioned by (ts2 timestamp) STORED AS carbondata TBLPROPERTIES ('SORT_COLUMNS'='metric') > Below is definition of MV : > create materialized view if not exists fact_365_1_eutrancell_1_hour as select tags_id ,metric,timeseries(ts,'hour') as ts,sum(value),avg(value),min(value),max(value) from fact_365_1_eutrancell_1 group by metric, tags_id, timeseries(ts,'hour') > Can you suggest why MV creation is slowing down the ingestion so much and what can be done to improve ? > Is there any way to have incremental refresh of MV - refresh only that hour for which we are loading the data ? -- This message was sent by Atlassian Jira (v8.3.4#803005) |
Free forum by Nabble | Edit this page |