加入收藏 | 设为首页 | 会员中心 | 我要投稿 西安站长网 (https://www.029zz.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 教程 > 正文

大数据知识图谱实战经验总结

发布时间:2019-11-14 12:20:23 所属栏目:教程 来源:阿福班主任
导读:副标题#e# 【线上直播】11月21日晚8点贝壳技术总监侯圣文《数据安全之数据库安全黄金法则》 作为数据科学家,我想把行业新的知识图谱总结并分享给技术专家们,让大数据知识真正转化为互联网生产力!大数据与人工智能、云计算、物联网、区块链等技术日益融合

灵活转发能力的总体设计中要考虑接口和消息中间件两种方式,其中消息中间件可支撑千万级用户规模的消息并发,适用于物联网、车联网、移动 Apps、互动直播等领域。它的应用场景包括:

  • 一是在传统的系统架构,用户从注册到跳转成功页面,中间需要等待系统接口返回数据。这不仅影响系统响应时间,降低了CPU吞吐量,同时还影响了用户的体验。
  • 二是通过消息中间件实现业务逻辑异步处理,用户注册成功后发送数据到消息中间件,再跳转成功页面,消息发送的逻辑再由订阅该消息中间件的其他系统负责处理。
  • 三是消息中间件的读写速度非常的快,其中的耗时可以忽略不计。通过消息中间件可以处理更多的请求。

主流的消息中间件有Kafka、RabbitMQ、RocketMQ,我们来对比一下它们性能,Kafka是开源的分布式发布-订阅消息系统,归属于Apache顶级项目,主要特点是基于Pull模式来处理消息消费,追求高吞吐量,主要用于日志收集和传输。自从0.8版本开始支持复制,不支持事务,对消息的重复、丢失、错误没有严格要求,适合产生大量数据的互联网服务的数据收集业务;RabbitMQ是Erlang语言开发的开源消息队列系统,基于AMQP协议来实现。AMQP的主要特征是面向消息、队列、路由(包括点对点和发布/订阅)、可靠性、安全。AMQP协议用在企业系统内,对数据一致性、稳定性和可靠性要求很高的场景,对性能和吞吐量的要求还在其次。RocketMQ是阿里开源的消息中间件,由Java语言开发,具有高吞吐量、高可用性、适合大规模分布式系统应用的特点。RocketMQ设计思想源于Kafka,但并不是Kafka的一个Copy,它对消息的可靠传输及事务性做了优化,目前在阿里集团被广泛应用于交易、充值、流计算、消息推送、日志流式处理、binglog分发等场景。结合上述服务优势对比,在第三章我们会使用最主流的ActiveMQ消息中间件来处理数据转发,在第六章我们采用分布式的Kafka实现数据转发。

03 高可扩展海量存储服务

高可扩展是大数据处理的核心需求之一。实际工作中,当用户量在100万以内,而且数据量在TB级别以内,常常可以选择用Mysql数据库,灵活、成熟和开源的Mysql数据库是初创公司的首选。我们考虑使用纵表实现系统灵活可扩展,让经常使用的数据放在一个数据表中,让灵活变化的字段实现字典表模式,让内容常发生变化的数据对象尽量采用JSON格式。著名的OpenMRS系统在Mysql数据库中实现了自定义表格,让医生可以实现灵活自定义表格,收集自己的临床试验数据,让用户自己每天可以记录自己的饮食信息。这样的设计就能实现了应用场景的普适性。我们借鉴OpenMRS的核心思想来构建一个基于Mysql的小规模的物联网大数据模型。应用场景就是:一个患者到多个医院,进行体检并记录了各个生理指标。我们根据应用场景来建立数据模型。患者表构建为Patient表,医院表构建为Location表,体检构建为Encounter表,测量构建为Observation表,体检类型描述构建为Concept表,采用五张表的多表关联实现了普适的可扩展数据模型,在第三章节会详细阐述。

(编辑:西安站长网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

推荐文章
    热点阅读