1.数据统计及报表导出 技术:Hadoop、Hive、Kylin、Mysql、SpringCloud等
基于hadoop、hive的大数据平台进行数据统计及数仓建设,通过Kylin进行 多维查询;通过多线程实现大数据量报表导出。
由于传统的mysql数据库难以支持大数据量、多维度的复杂实时统计查询, 我们基于业务场景划分了多个微服务处理对应的问题。主要包括一个统计微服 务、一个导出微服务、一个报表微服务。统计微服务中接入集团搜索、数仓能 力,用到了多线程和反射等技术,以及调用kylin的sql查询;导出微服务专⻔提 供报表导出,用到大量的多线程、队列以及生产消费模型等技术,能够实现百 万数据的快速导出,利用反射技术实现表单的动态导出。
2.政府后台 技术:SpringBoot、SpringCloud、Mysql、Redis、RoketMQ等
一个面向全国各个省、市、县、区机构(如各级卫健委)提供统计数据展 示的应用。该应用汇集微医集团公卫系统的全部数据,涉及到大量的复杂维度 数据统计。
前期主要做代码重构,利用常用设计模式实现代码复用,遵循面向接口编 程思想,让重构的代码简洁、易读、易维护;后期主要解决了利用注解实现根 据不同区域控制相关权限、展示对应维度数据;利用注解方式在序列化中进行 数据脱敏。
3.数据接入及数仓建设 技术:Hadoop、Hive、Mysql、Cannal、Otter等
对接第三方机构的数据,涉及到异构数据源(Oracle)的同步,通过 Cannal、Otter等中间件,将数据同步到公司内网数据库,并基于大数据平台进 行数据清洗。
良好的数据库表结构对软件开发至关重要。在数据对接过程中,我根据数 据库的范式条件,结合业务场景需要,重新梳理了表结构,制定了数据标准, 并编写了大量的文档,绘制了er图。该业务自运行以来,整体数据基本保持最 初我制定的模型结构,并且能够正常运行。截止上次统计,平均一年接入1.11 亿+数据,为公司提供了高质量的数据资产。