Hi,
    It is a fancy idea from my side. Since it is a major behavior change for 
Kylin core system and may have impact to all components, please provided us 
your detailed design documentation (better in English ^_^).
    I think you may implement your idea and verify if it is works as you 
expect, if your idea is proved works in your production env, maintainer will be 
happy to learn and view your code change. 
    Thank you very much and good luck to you.










--

Best wishes to you ! 
From :Xiaoxiang Yu





在 2020-07-22 05:39:49,"chuxiao" <crow...@163.com> 写道:
>1.读写锁改成分桶和自旋锁,允许瞬时的脏读。
>2.更新元数据时不再广播自己,即修改元数据的进程。需要靠广播刷新的缓存,在更新操作时同步刷新。
>3.缓存更新细粒度,按最小原子进行更新,考虑记录变更的版本号时间戳
>依次往下修改,直到满足设计目标。
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>在 2020-07-22 05:27:24,"chuxiao" <crow...@163.com> 写道:
>>kylin当前的缓存机制,比较适合cube数几十上百,不频繁更新的场景。
>>当有2千以上的cube,每天更新几百个,metadata上的读写锁,任何修改全更新的广播机制,导致一旦有持续的元数据更新,整个集群响应时间大幅拉长,建模和查询频繁出现超时。
>>KYLIN-4169缓解了这个问题,但还不够。
>>我想重新设计缓存功能,设计目标是在单个项目1万个cube,每天新建/删除一千个的场景下,建模和查询不会出现频繁超时,保持系统可用性。

Reply via email to