您现在的位置:主页 > 教育新闻 >

58 集团 x DorisDB:全面升级数据分析能力满足多场景业务分析需

发布日期:2021-06-20 16:56   来源:未知   阅读:

  58集团是中国互联网生活服务领域的领导者,旗下有国内最大的生活服务平台,覆盖各类业务场景,例如车业务、房产业务、本地服务、招聘业务、金融业务等等。

  随着业务的高速发展,越来越多的分析需求涌现,例如:安全分析、商业智能分析、数仓报表等。这些场景的数据体量都较大,对数据分析平台提出了很高的要求。为了满足这些分析型业务的需求,DBA团队从2021年初就开始调研各类分析型数据库,其中包括DorisDB、TiFlash、ClickHouse等,评测他们的性能及功能。

  总体评测下来,DorisDB表现全面,在单表/多表查询性能、物化视图及SQL支持等方面能力都契合集团业务需求。目前,我们已经落地了两套DorisDB集群,还有1-2套正在测试阶段,后续会进行进一步推广和落地更多应用。

  我们从两个方面来评测以上这些分析型数据库:一个是功能,一个是性能。每种数据库都有各自的特点。

  测试使用业界流行的Star Schema Benchmark星型模型测试集。结论如下:

  TiDB执行计划多数走TiKV,导致执行时间长,且数据量越多,执行时间越长。

  TiDB强制走TiFlash,单表多数提速多,多表多数变慢,但4.0.10版本的执行计划多数不走。

  ClickHouse多表查询需要更改SQL,使类型一致才可以,且字段名、www.155kk.com,表名区分大小写。

  ClickHouse大单表查询方式效率好,多表关联效率降低明显。

  每天,内部服务器上的各类操作和运行情况,是内部安全人员比较关心的。但是服务器上每天有大量的信息,如何能快速收集落地、统一实时分析,是这个数据分析场景面临的挑战。具体来说,安全分析业务需要应对以下情况:

  实时快速的分析支持,例如:最近15分钟,机器信息的情况是怎样的;

  综合评估后,我们选择了DorisDB来支持安全分析相关业务。在使用初期,我们使用了DorisDB的明细模型(即保留所有历史数据),20天左右,数据行数总量就800亿+了,磁盘空间占用8T左右,由于明细数据量庞大导致查询性能也受到影响。

  后与内部研发人员讨论,业务分析并不需要详细的历史明细,数据按照指定时间粒度进行聚合汇总即可。便将数据模型改成聚合模型,设置日期、小时和15分钟三个时间维度,指标数据按照这个级别的时间维度进行聚合,聚合后每天新增的数据在10亿左右,数据量降低了75%,查询性能也得到大幅提升。且采用kafka+routine

  load的方式在DorisDB中进行导入聚合,避免了引入冗余的组件,统一了技术栈。

  MySQL中间件,我们使用的ProxySQL,ProxySQL支持展示SQL情况。但是操作较为繁琐,每次需要重置,才重新开始统计。如何分析指定时间的SQL情况,是困扰我们的另一问题。

  另一个问题,因为线上的ProxySQL的日志量特别大,不能所有集群都开,我们设置了可以选择开启,这样有需要的集群才进行分析。降低存储的压力。

  除了上述两个场景之外,DorisDB还被用在了销售使用的报表系统等场景中,包含实时数据分析等业务场景,共50+张表,占用约100T存储空间,查询并发量100-500+。

  DorisDB支持的数据导入方式很丰富,例如本地文件、HDFS、Kafka(支持csv、json格式)、外表、批量SQL等。数据接入时有以下需要注意的问题:

  HDFS导入需要提供Namenode的信息,有些不方便提供就支持不了。

  日常最常用的是Kafka的Json格式的数据,需要开发提供:

  表字段、字段类型及模型(明细模型,聚合模型和更新模型)。

  Kafka的方式,DBA创建表及导入任务就可以导入数据了;日常需要注意的是:最好写个小工具,查看下Kafka的数据信息,然后指明字段,这样来保证成功率。

  相关运维报表,例如表大小、集群磁盘使用情况、流量情况、SQL情况等。

  目前我们自己已经实现了部分运维规范的制定,例如集群端口、目录、拓扑架构等,并开发了拓扑工具:qdorisdb,可以查看所有集群、指定集群、登录、展示监控节点信息等。

  后期我们会开发相关自动化管理工具,并整合至我们内部的CDB平台,开发相关报表、工单等,方便开发人员使用。

  如果想混合部署,需要提前计划好端口,集群间需要有一定间隔;

  DorisDB升级比较快,如果遇到bug可以咨询官方,及时升级避开;

  Json格式数据导入,字段没法复用,推荐官方添加上,例如:求最大最小时间,需要开发写入Kafka两个时间字段,无法复用一个;

  导入数据需要一定的调试经验,例如Kafka,可以自己写个工具,查看下Kafka里面的数据,再进行测试;

  DorisDB是优秀的分析型数据库,可以满足多种数据分析场景的需求。澳门三合彩票图版图库,但还有不少业务场景需要用其他数据库来服务,目前58DBA提供了多种数据库,方便业务方根据自身的场景进行选择。

  目前,我们已经落地了两套DorisDB集群,还有1-2套正在测试阶段,后续会进行进一步推广和落地更多应用。最后,十分感谢DorisDB鼎石科技团队专业的支持服务,希望我们能一起把DorisDB建设得更好。(作者:刘春雷 负责58同城MySQL、TiDB数据库、DorisDB的运维工作,主要从事数据库自动化、平台化的建设)

  每日头条、业界资讯、www.82340.com,热点资讯、八卦爆料,全天跟踪微博播报。各种爆料、内幕、花边、资讯一网打尽。百万互联网粉丝互动参与,TechWeb官方微博期待您的关注。

  字节跳动公开“护眼控制方法”相关专利,利于培养青少年养成良好的用眼习惯

  外媒:随着2021年第二季度临近结束 特斯拉Model S交付速度加快

  马斯克力挺Model S Plaid矩形方向盘 称线控转向系统还要几年

  蚂蚁自研数据库OceanBase宣布开源 300万行核心代码向社区开放

  高通推出全球首个10Gbps 5G M.2参考设计,加速推进5G在新兴细分市场中的普及

Power by DedeCms