大数据量下的实时数据报表系统的设计与实现

来源 :北京交通大学 | 被引量 : 18次 | 上传用户:wzjjp
下载到本地 , 更方便阅读
声明 : 本文档内容版权归属内容提供方 , 如果您对本文有版权争议 , 可与客服联系进行内容授权或下架
论文部分内容阅读
在智能餐饮系统的报表查询业务中,商家用户对营业数据的总结具有强烈的需求。报表系统的出现可以轻松的满足商家用户的这个需求。在对现有数据进行查询并生成报表数据时,存在着大量的针对多张数据库表进行随机查询的情况,而且大多包含表连接查询操作。在数据总量小于千万级别时,传统处理方式(直接查询数据库)的数据库响应时间能够被优化到十秒以内,但是当被查询的数据总量到达了几千万、上亿甚至十亿条记录时,传统处理方式无论如何优化或更改索引机制,不仅无法满足快速响应的多并发查询要求,而且查询数据时对数据库造成较大的压力。本人实习的公司的当前的处理方式是离线计算方式,即将数据导入到数据仓库(hive)中,进行离线计算,再对计算结果集进行查询,缺点是无法即席查询。而本文中介绍了另一种处理方式,通过引入分布式索引层解决上述问题,该处理方式被应用于许多大数据即席查询的场景中。在数据同步模块中,通过将许多关系型数据库中(MySQL)的表合并成一张宽表保证数据的完整性,并且利用搜索引擎(Solr)的快速查询的特点来提高查询效率。可以在数据量到达5000万, 每秒20并发访问的宽表查询场景中,实现2秒以内返回结果,并且查询全部成功。这样的查询速度以及数据的实时性都是传统处理方式(直接查询数据库)和离线计算方式无法完成的。论文主要详细阐述了数据全量同步模块、数据增量同步模块、报表业务模块等的设计与实现。只有数据全量同步模块和数据增量同步模块的配合才能使得分布式索引中的数据同时保持准确性和实时性,再加上报表业务模块根据业务需求对数据进行查询操作,即可给用户返回实时的报表数据。在全量数据同步模块中,通过Java多线程技术并对同步线程进行智能调度,大大提升了数据的同步速度。数据实时同步模块是基于阿里巴巴的MySQL数据同步组件和消息中间件开发的,此模块可确保增量数据可以实时的同步到分布式索引中去。本人独立完成了数据全量同步模块中的子表导入子模块、Hive绑定子模块、Hive宽表合成子模块、索引文件生成子模块,数据增量同步模块中的增量消息发布者子模块、增量消息消费者子模块以及报表业务模块中的会员子模块。目前该项目已经通过测试,正式上线到生产环境中,整体工作正常,可以为用户提供实时而又准确的报表数据。
其他文献
怒族是我国的古老民族之一,近十年来国内对怒族文化的研究取得了一定成果,对2000年以来国内有关怒族源流、民族关系、宗教、婚丧、民间文艺、教育、民居、世界观、节俗、经济
近年来,电子商务行业快速发展,已成为重要的新兴产业,大力发展电子商务对拉动经济增长具有重要意义.皖江城市带是安徽重要的城市经济带,发展电子商务产业集群可以有效促进皖
公共图书馆是公共文化信息服务中的传播者。公共图书馆参与公共文化信息传播的机制包括公共文化信息传播动力机制、公共文化信息资源的整合机制、公共文化信息服务整合机制和
<正>西方发达国家的征信模式大体有以美国、英国为代表的市场化模式和以德国、法国、比利时等为代表的中央信贷登记模式。进入20世纪90年代以后,国际征信行业出现了一些新趋
文章简要介绍了不同国家警察体制的类型、影响警察体制的因素、警察机构的设置以及警察编制的情况。
社区警务要求警察以“服务于民”的姿态出现,深入社区,熟悉辖区情况,依靠群众,调动社区居民的积极性,共同参与治安管理。社区矫正则是让罪犯有条件地与社会保持接触,接受民间
黟县为古徽州六县之一,徽州木雕是我国明清时期民间木雕的重要代表之一,体现出深厚的文化意蕴。黟县木雕艺术根植于深厚的徽州文化,是我国民间艺术宝库中的一颗璀璨的明珠。
目的探讨主动脉内球囊反搏(IABP)在急性心肌梗死后室间隔破裂患者中的应用价值。方法选取上海同济大学附属东方医院心内科2008年1月至2016年12月共收治入院的急性心肌梗死合
报表是企业管理基本的措施与途径,是企业基本的业务要求,是提供给企业决策者的主要参考依据之一。报表可以帮助企业访问、格式化数据,并把数据信息以安全和可靠的方式呈现给