一种在SAAS系统上应用流式计算的方法和装置制造方法及图纸

技术编号:22261039 阅读:20 留言:0更新日期:2019-10-10 14:08
本发明专利技术公开了在SAAS系统上应用流式计算的方法和装置,涉及计算机技术领域。该方法的一具体实施方式包括:监听数据库的从库,以解析所述从库的日志,获得数据库的变更信息,为所述变更信息添加对应的租户ID标签;将包括有租户ID标签的变更信息以预设的消息格式保存至消息服务器中;接收消费请求,对所述消费请求进行鉴权,以获得授权的租户ID条件列表;下发所述租户ID条件列表,以使用户根据所述租户ID条件列表从消息服务器中获得相应的消息信息。该实施方式能够应用在SAAS系统应用上的流式计算,且实现接入简单、使用方便、后期运营维护可靠安全的目的。

A Method and Device for Applying Flow Computing to SAAS System

【技术实现步骤摘要】
一种在SAAS系统上应用流式计算的方法和装置
本专利技术涉及计算机
,尤其涉及一种在SAAS系统上应用流式计算的方法和装置。
技术介绍
在电子商务领域,SAAS化的web应用发展得日新月异,应用都采用多租户的方式来进行开发上线部署。流式计算是大数据量下实时分析、实时监控数据必不可少的手段。为了能实时查看到SAAS应用下各项数据报表、实时监控到各业务系统的运行情况,SAAS化的应用对接到流式计算平台的也迫在眉睫了。流式计算,为了不和业务系统紧密耦合在一起,计算的任务都会单独设计、单独开发、单独部署。常见的业务模式为:业务系统操作业务数据库,采集程序实时监控业务数据库的binlog,将数据库的binlog按一定的格式上传到消息队列,流式计算框架批量读取并处理消息队列的内容,实时分析处理业务数据。目前一般的SAAS方案中落地到数据库中的数据的隔离方式一般为:数据库库隔离、数据库表隔离、数据库表不隔离而按租户字段来隔离这3种。在流式计算的框架下,为了使得同一个应用的不同租户的监控数据能够隔离开,目前一般采用的策略有两种:1)方案1:同一种表业务的所有消息都往一个固定topic上去发,消费者按其业务规则从所有的消息中筛选出关心的业务数据来消费。2)方案2:将同一个表业务下不同租户产生的业务数据按不同的消息主体从业务上区分开,也就是同一种表业务,对应到不同租户端,发送的消息主体(消息topic)是完全分开的。在实现本专利技术过程中,专利技术人发现现有技术中至少存在如下问题:1)方案1的缺点在于数据的私密性太差,业务上不能接受。方案存在部分租户的业务数据在未授权、未允许却被消费端获得。此方案一般只应用在内部私有系统,对隐私性没有太多考虑的业务可以采用。2)方案2,采用多个消息主体(消息topic)的实现方案虽然业务上是可行的,但是真正执行起来太重,实际落地的时候业务操作会比较麻烦。因为如果所有消息都采用统一配置,后续部分消息主体要扩容的话,要针对部分消息单独运营维护,因为消息topic的数量比较多,操作起来会相对比较麻烦;如果将消息配置按租户分开处理、特别对待,考虑到部分租户的业务会相对较多,但是在消息创建的时候,又很难做到精确预估不同租户的消息的量,此处就需要按租户的预估业务量做特殊逻辑,等于在流式计算发送消息的逻辑中,需要耦合上述的这些创建消息主体的流程,业务复杂度会比较高。3)方案2的另外一个缺点是,消费端如果想要消费的数据条件不完全固定的时候,如用户想要消费租户id中包含有“中国”关键字的所有的租户的数据,程序实现上相当困难,基本不能实现。
技术实现思路
有鉴于此,本专利技术实施例提供一种在SAAS系统上应用流式计算的方法和装置,能够应用在SAAS系统应用上的流式计算,且实现接入简单、使用方便、后期运营维护可靠安全的目的。为实现上述目的,根据本专利技术实施例的一个方面,提供了一种在SAAS系统上应用流式计算的方法,包括监听数据库的从库,以解析所述从库的日志,获得数据库的变更信息,为所述变更信息添加对应的租户ID标签;将包括有租户ID标签的变更信息以预设的消息格式保存至消息服务器中;接收消费请求,对所述消费请求进行鉴权,以获得授权的租户ID条件列表;下发所述租户ID条件列表,以使用户根据所述租户ID条件列表从消息服务器中获得相应的消息信息。可选地,所述租户ID标签为根据业务类型定义的字段或者勾选数据库中的任一字段作为所述租户ID标签。可选地,对所述消费请求进行鉴权,以获得授权的租户ID条件列表,包括:根据所述消费请求,获取请求消费的租户ID;确定访问所述租户的权限,获得授权的租户ID条件列表;其中,所述租户ID条件列表中存储有租户ID与访问权限的映射关系。可选地,使用户根据所述租户ID条件列表从消息服务器中获得相应的消息信息,包括:消息服务器接收用户的消费请求,获得消费的消息主体;消息服务器根据接收的租户ID条件列表,匹配符合所述消息主体的消费信息,以返回所述消费信息至所述用户。可选地,所述的消息格式包括两段:第一段是消息头,包括:消息类型和消息的租户ID,其中消息类型定义为带租户ID的消息或不带租户ID的消息;第二段是消息体。另外,根据本专利技术实施例的一个方面,提供了一种在SAAS系统上应用流式计算的装置,包括:贴标签模块,用于监听数据库的从库,以解析所述从库的日志,获得数据库的变更信息;为所述变更信息添加对应的租户ID标签;将包括有租户ID标签的变更信息以预设的消息格式保存至消息服务器中;接收模块,用于接收消费请求;获取模块,用于对所述消费请求进行鉴权,以获得授权的租户ID条件列表;发送模块,用于下发所述租户ID条件列表,以使用户根据所述租户ID条件列表从消息服务器中获得相应的消息信息。可选地,所述租户ID标签为根据业务类型定义的字段或者勾选数据库中的任一字段作为所述租户ID标签。可选地,所述获取模块对所述消费请求进行鉴权,以获得授权的租户ID条件列表,包括:根据所述消费请求,获取请求消费的租户ID;确定访问所述租户的权限,获得授权的租户ID条件列表;其中,所述租户ID条件列表中存储有租户ID与访问权限的映射关系。可选地,所述发送模块以使用户根据所述租户ID条件列表从消息服务器中获得相应的消息信息,包括:消息服务器接收用户的消费请求,获得消费的消息主体;消息服务器根据接收的租户ID条件列表,匹配符合所述消息主体的消费信息,以返回所述消费信息至所述用户。可选地,所述的消息格式包括两段:第一段是消息头,包括:消息类型和消息的租户ID,其中消息类型定义为带租户ID的消息或不带租户ID的消息;第二段是消息体。根据本专利技术实施例的另一个方面,还提供了一种电子设备,包括:一个或多个处理器;存储装置,用于存储一个或多个程序,当所述一个或多个程序被所述一个或多个处理器执行,使得所述一个或多个处理器实现上述任一在SAAS系统上应用流式计算的实施例所述的方法。根据本专利技术实施例的另一个方面,还提供了一种计算机可读介质,其上存储有计算机程序,所述程序被处理器执行时实现上述任一在SAAS系统上应用流式计算的实施例所述的方法。上述专利技术中的一个实施例具有如下优点或有益效果:在SAAS化的应用下,提出一种数据库层的标准设计,定义了一种SAAS化流式计算框架下消息保存的格式,提供了一种按租户标签发送消息、消费鉴权按租户信息和一定的业务规则精确或者模糊匹配消费数据的操作规范,此规范可以应用在流式计算领域,在满足流式计算监控业务的前提下,达到接入简单、使用方便、后期运营维护可靠安全的目的。上述的非惯用的可选方式所具有的进一步效果将在下文中结合具体实施方式加以说明。附图说明附图用于更好地理解本专利技术,不构成对本专利技术的不当限定。其中:图1是根据本专利技术实施例的在SAAS系统上应用流式计算的方法的主要流程的示意图;图2是根据本专利技术实施例的在SAAS系统上应用流式计算的装置的主要模块的示意图;图3是根据本专利技术可参考实施例的在SAAS系统上应用流式计算的装置的主要模块的示意图;图4是本专利技术实施例可以应用于其中的示例性系统架构图;图5是适于用来实现本专利技术实施例的终端设备或服务器的计算机系统的结构示意图。具体实施方式以下结合附图对本专利技术的示范性实施例做出说明,其中包括本文档来自技高网
...

【技术保护点】
1.一种在SAAS系统上应用流式计算的方法,其特征在于,包括:监听数据库的从库,以解析所述从库的日志,获得数据库的变更信息,为所述变更信息添加对应的租户ID标签;将包括有租户ID标签的变更信息以预设的消息格式保存至消息服务器中;接收消费请求,对所述消费请求进行鉴权,以获得授权的租户ID条件列表;下发所述租户ID条件列表,以使用户根据所述租户ID条件列表从消息服务器中获得相应的消息信息。

【技术特征摘要】
1.一种在SAAS系统上应用流式计算的方法,其特征在于,包括:监听数据库的从库,以解析所述从库的日志,获得数据库的变更信息,为所述变更信息添加对应的租户ID标签;将包括有租户ID标签的变更信息以预设的消息格式保存至消息服务器中;接收消费请求,对所述消费请求进行鉴权,以获得授权的租户ID条件列表;下发所述租户ID条件列表,以使用户根据所述租户ID条件列表从消息服务器中获得相应的消息信息。2.根据权利要求1所述的方法,其特征在于,所述租户ID标签为根据业务类型定义的字段或者勾选数据库中的任一字段作为所述租户ID标签。3.根据权利要求1所述的方法,其特征在于,对所述消费请求进行鉴权,以获得授权的租户ID条件列表,包括:根据所述消费请求,获取请求消费的租户ID;确定访问所述租户的权限,获得授权的租户ID条件列表;其中,所述租户ID条件列表中存储有租户ID与访问权限的映射关系。4.根据权利要求1所述的方法,其特征在于,使用户根据所述租户ID条件列表从消息服务器中获得相应的消息信息,包括:消息服务器接收用户的消费请求,获得消费的消息主体;消息服务器根据接收的租户ID条件列表,匹配符合所述消息主体的消费信息,以返回所述消费信息至所述用户。5.根据权利要求1-4任一所述的方法,其特征在于,所述的消息格式包括两段:第一段是消息头,包括:消息类型和消息的租户ID,其中消息类型定义为带租户ID的消息或不带租户ID的消息;第二段是消息体。6.一种在SAAS系统上应用流式计算的装置,其特征在于,包括:贴标签模块,用于监听数据库的从库,以解析所述从库的日志,获得数据库的变更信息;为所述变更信息添加对应的租户ID标签;将包括有租户ID标签的变...

【专利技术属性】
技术研发人员:徐开廷林世洪孙海波刘文杰
申请(专利权)人:北京京东尚科信息技术有限公司北京京东世纪贸易有限公司
类型:发明
国别省市:北京,11

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1