News center

大批量数据文件解析的处理方案

发布日期:2019-09-26 05:01           浏览次数:

  体例A中记实了客户的账户余额,体例B每天会按时将客户的营业流水放入文献任事器。然后体例A通过Job解析营业文献,更新账户余额。

  场景很容易,但当数据量比力大的期间,譬喻客户数目到达5000万至1亿操纵,何如优化营业逻辑,保障数据的无误性?

  关于上述场景,我的第一个念法即是采用“出产者-消费者”的形式,保障轨范也许横向扩展。最常用的即是采用MQ。

  采用多线程是肯定的,但为什么还会有云云的题目呢?由于我另有此表一个比力好的念法,可能采用直接初始化几(30)个线程待命的办法来庖代线程池,片面感觉云云会比古板的线程池出力高一点。若是有人感觉云云的念法不是很好,可能纰漏这一点,直接用线.何如保障数据的类似性?

  从做事表中捞出需求解析的文献,需求酌量多做事并发的景象。这时,需求对每一个正正在处置的文献加散布式锁,保障眼前文献唯有一个线.当一个文献处置中碰到了过失,✔该当采用什么机造举行容错?

  若是是全面文献都无法解析,那么直接反应到做事履行申报中去。同时天生一个新的调动,等下一个日切时代。

  若是是文献中某一条记实无法解析,那么需求对该行记实标帜一下,反应到做事履行申报。同时不断履行下一条。

  统一个账户的流水,不妨离别于多个分歧的文献中,为了提升出力,咱们酌量需求设立一张且则表,对账户流水记实举行轧差,末了再更新账户余额。

  发轫念法是,将解析记实都插入且则表中,当解析做事通盘已毕后,联合触发轧差更新的调动(依照账户举行轧差)。

  合于轧差算计,因为记实比力多(2切切用户,每人5条流水,就有1亿条记实了),云云盘问出力会比力低,若是有须要,可能酌量分表。

  统一个账户的余额不妨存正在于多个文献,若是没有依照时代排序,会导致更新余额时的数据过失。云云的处置不需求酌量轧差的题目,只需求将一齐的记实举行排序,更新末了一个余额就可能了。

龙8国际手机pt官网,龙8国际pt官方网站首页
上一篇:生物医学数据大爆炸 大数据“挖掘机”哪家强 下一篇:泸州运用大数据监督干部24人受处罚