CN105574022A - 一种基于关系数据库的业务对象的处理方法和装置 - Google Patents

一种基于关系数据库的业务对象的处理方法和装置 Download PDF

Info

Publication number
CN105574022A
CN105574022A CN201410542460.7A CN201410542460A CN105574022A CN 105574022 A CN105574022 A CN 105574022A CN 201410542460 A CN201410542460 A CN 201410542460A CN 105574022 A CN105574022 A CN 105574022A
Authority
CN
China
Prior art keywords
business object
timestamp
object data
time service
node
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
CN201410542460.7A
Other languages
English (en)
Other versions
CN105574022B (zh
Inventor
许寄
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Advanced Nova Technology Singapore Holdings Ltd
Original Assignee
Alibaba Group Holding Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Alibaba Group Holding Ltd filed Critical Alibaba Group Holding Ltd
Priority to CN201410542460.7A priority Critical patent/CN105574022B/zh
Publication of CN105574022A publication Critical patent/CN105574022A/zh
Application granted granted Critical
Publication of CN105574022B publication Critical patent/CN105574022B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Landscapes

  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

本申请实施例提供了一种基于关系数据库的业务对象的处理方法和装置,所述的方法包括:在关系数据库中接收业务对象的第一处理请求;所述第一处理请求中包括数据处理信息;根据所述数据处理信息生成一条或多条业务对象数据;从预置的时间服务节点中提取时间戳;在所生成的一条或多条业务对象数据中添加所述时间戳。本申请实施例避免了因为使用本地操作系统时间而造成业务对象数据之间时间存在细微的差异的问题,提高了业务对象数据之间时间信息的一致性,同时减少对数据库本地操作系统日期函数的调用,加快了处理的效率。

Description

一种基于关系数据库的业务对象的处理方法和装置
技术领域
本申请涉及关系数据库的技术领域,特别是涉及一种基于关系数据库的业务对象的处理方法和一种基于关系数据库的业务对象的处理装置。
背景技术
关系数据库(Relationaldatabase),是创建在关系模型基础上的数据库,借助于集合代数等数学概念和方法来处理数据库中的数据。其中,关系数据库包括OracleDatabase、MySQL等等。
各类关系数据库均有提供当前时间点的系统函数,例如,OracleDatabase提供系统函数sysdate、current_timestamp;MySQL提供系统函数now()、curdate()、curtime()等。
为了登记业务数据产生的时间,应用系统在向关系数据库写入业务对象数据时,往往会使用关系数据库自带的日期类系统函数,以关系数据库这一刻所认定的系统时间作为业务对象数据的登记时间。如:
insertintotest_table1values(‘value1’,current_timestamp)
insertintotest_table2values(‘value2’,current_timestamp)
这种做法在高一致性数据要求的应用系统设计中存在明显的问题:
1、处理一次业务请求,应用系统可能产生一到多笔SQL(StructuredQueryLanguage,结构化查询语言语句)语句执行命令,则上述的示例中所新增的数据内容,由于同一物理机器的操作系统时间是持续计时的,因此其时间点存在明显差异,精度越大的日期类型差异越明显;
2、在跨日临界点时,如23:59:59:989,此时可能产生的两条数据记录会出现跨日现象,甚至跨月、跨季、跨年;这对基于海量数据的分析、用户报表统计均造成了极大影响,如常见的日报、月报、年报等。
因此,目前需要本领域技术人员迫切解决的一个技术问题就是:如何提供一种基于关系数据库的业务对象的处理机制,以提高业务对象数据之间时间信息的一致性。
发明内容
本申请实施例所要解决的技术问题是提供一种基于关系数据库的业务对象的处理方法,以提高业务对象数据之间时间信息的一致性。
相应的,本申请实施例还提供了一种基于关系数据库的业务对象的处理装置,以提高业务对象数据之间时间信息的一致性。
为了解决上述问题,本申请实施例公开了一种基于关系数据库的业务对象的处理方法,包括:
在关系数据库中接收业务对象的第一处理请求;所述第一处理请求中包括数据处理信息;
根据所述数据处理信息生成一条或多条业务对象数据;
从预置的时间服务节点中提取时间戳;
在所生成的一条或多条业务对象数据中添加所述时间戳。
优选地,所述时间服务节点为独立节点。
优选地,所述时间服务节点包括集成于业务对象处理节点中,用于提供时间戳的时间服务模块。
优选地,所述时间服务节点包括时间服务主节点及时间服务备份节点;所述从预置的时间服务节点中提取时间戳的步骤包括:
从所述时间服务主节点中提取时间戳;
当从所述时间服务主节点中提取时间戳失败时,从所述时间服务备份节点中提取时间戳。
优选地,从时间服务主节点或时间服务备份节点中提取时间戳的方式为GET方式。
优选地,所述关系数据库包括一个或多个本地线程变量,每个本地线程变量具有独立的变量副本;
所述根据所述数据处理信息生成一条或多条业务对象数据的步骤包括:
在所述一个或多个本地线程变量中,采用所述独立的变量副本按照所述业务对象处理信息生成业务对象数据。
优选地,所述时间戳存储在内存中;所述在所生成的业务对象数据中添加所述时间戳的步骤包括:
从内存中提取所述时间戳;
在所生成的业务对象数据中添加在内存提取的时间戳。
优选地,所述业务对象数据具有业务对象数据标识,所述的方法还包括:
将所述时间戳和所述业务对象数据标识进行数据映射。
本申请实施例还公开了一种基于关系数据库的业务对象的处理方法,包括:
在第一关系数据库中接收第二关系数据库发送的业务对象的第二处理请求;所述第二处理请求中包括数据处理信息和时间戳;
根据所述数据处理信息生成一条或多条业务对象数据;
在所生成的一条或多条业务对象数据中添加所述时间戳;
其中,所述时间戳为所述第二关系数据库在接收到业务对象的第三处理请求时,从预置的时间服务节点中提取的时间戳。
本申请实施例还公开了一种基于关系数据库的业务对象的处理装置,包括:
第一请求接收模块,用于在关系数据库中接收业务对象的第一处理请求;所述第一处理请求中包括数据处理信息;
业务对象数据生成模块,用于根据所述数据处理信息生成一条或多条业务对象数据;
时间戳提取模块,用于从预置的时间服务节点中提取时间戳;
时间戳添加模块,用于在所生成的一条或多条业务对象数据中添加所述时间戳。
优选地,所述时间服务节点包括时间服务主节点及时间服务备份节点;所述时间戳提取模块包括:
主节点提取子模块,用于从所述时间服务主节点中提取时间戳;
备份节点提取子模块,用于在从所述时间服务主节点中提取时间戳失败时,从所述时间服务备份节点中提取时间戳。
优选地,所述关系数据库包括一个或多个本地线程变量,每个本地线程变量具有独立的变量副本;
所述业务对象数据生成模块包括:
并发生成子模块,用于在所述一个或多个本地线程变量中,采用所述独立的变量副本按照所述业务对象处理信息生成业务对象数据。
优选地,所述时间戳存储在内存中;所述时间戳添加模块包括:
提取子模块,用于从内存中提取所述时间戳;
添加子模块,用于在所生成的业务对象数据中添加在内存提取的时间戳。
优选地,所述业务对象数据具有业务对象数据标识,所述的装置还包括:
映射模块,用于将所述时间戳和所述业务对象数据标识进行数据映射。
本申请实施例还公开了一种基于关系数据库的业务对象的处理装置,包括:
第二请求接收模块,用于在第一关系数据库中接收第二关系数据库发送的业务对象的第二处理请求;所述第二处理请求中包括数据处理信息和时间戳;
业务对象数据生成模块,用于根据所述数据处理信息生成一条或多条业务对象数据;
时间戳添加模块,用于在所生成的一条或多条业务对象数据中添加所述时间戳;
其中,所述时间戳为所述第二关系数据库在接收到业务对象的第三处理请求时,从预置的时间服务节点中提取的时间戳。
本申请实施例在关系数据库按照业务对象的处理请求中数据处理信息生成业务对象数据,根据处理请求中的时间获取信息时间服务节点中提取时间戳,以及在所生成一条或多条的业务对象数据中添加所述时间戳,而对于单个时间服务节点,无论其本身的时间是否绝对精准,如与格林威治时间是否绝对一致,但是其时间戳具有强一致性的特征,关系数据库遵从该时间服务节点的授时,避免了因为使用本地操作系统时间而造成业务对象数据之间时间存在细微的差异的问题,提高了业务对象数据之间时间信息的一致性,同时减少对数据库本地操作系统日期函数的调用,加快了处理的效率。
此外,业务操作通常是伴随着数据库写入的,有查询、新增、修改等操作,一次业务操作会有多次数据库写入,所以多一次时间戳获取并不会有明显开销导致降低性能,保证了获取当前时间戳的性能开销的可控性。
本申请实施例在关系数据库按照业务对象的处理请求中数据处理信息生成业务对象数据,根据处理请求中的时间获取信息时间服务节点中提取时间戳,以及在所生成一条或多条的业务对象数据中添加所述时间戳,而对于单个时间服务节点,无论其本身的时间是否绝对精准,如与格林威治时间是否绝对一致,但是其时间戳具有强一致性的特征,关系数据库遵从该时间服务节点的授时,避免了因为使用本地操作系统时间而造成业务对象数据之间时间存在细微的差异的问题,提高了业务对象数据之间时间信息的一致性,同时减少对数据库本地操作系统日期函数的调用,加快了处理的效率。
此外,业务操作通常是伴随着数据库写入的,有查询、新增、修改等操作,一次业务操作会有多次数据库写入,所以多一次时间戳获取并不会有明显开销导致降低性能,保证了获取当前时间戳的性能开销的可控性。
本申请实施例将时间戳和业务对象数据标识进行数据映射,在业务对象数据核对时,基于时间戳的一致性,保证了业务对象数据时间的一致性,保证了在业务对象数据核对的时候,根据时间(如自然日)硬性切分的安全性。
附图说明
图1是本申请的一种基于关系数据库的业务对象的处理方法实施例1的步骤流程图;
图2是本申请的一种基于关系数据库的业务对象的处理方法实施例2的步骤流程图;
图3是本申请的一种基于关系数据库的业务对象的处理装置实施例1的结构框图;
图4是本申请的一种基于关系数据库的业务对象的处理装置实施例2的结构框图。
具体实施方式
为使本申请的上述目的、特征和优点能够更加明显易懂,下面结合附图和具体实施方式对本申请作进一步详细的说明。
在一个有海量数据的网站中,例如电子商务(ElectronicCommerce,EC)网站需要处理海量的商品买卖数据,每秒都可能需要处理上万数量的商品买卖数据,每几十分钟可能累积上百万数量的商品买卖数据,每几十分钟可能就需要进行一次数据核对。
当分布式系统的处理节点对时间准确性要求极高时,分布式系统间本地时间所存在的细微差异瑕疵将被放大。
例如,在电子商务中设计一个海量、高并发的分布式在线支付服务系统,要求支付服务系统所产生的每笔业务数据,其所登记的业务发生时间点能够清晰表明业务发生的顺序,要求精确到毫秒甚至纳秒级;一笔稍早的业务请求,由于被路由分配到本地时间稍晚的处理节点进行处理,其登记的处理时间可能会晚于另外一笔业务请求,会造成业务数据核对出错,如某段时间内数据核对的其中一方可能会有较多的业务数据,另一方可能会有较少的业务数据,只能人工逐笔逐笔去关联,这对大数据量分析核对工作来说是无法承受成本的。因此,在苛刻的需求背景下无法接受此种时间存在差异的处理结果。
关系数据库的应用程序是运行在实际的操作系统之上的,如linux、windows等,而同一物理机器的操作系统时间是持续计时的,使得在某个绝对时点下,即一个具体的时间点,比如在2014年7月1日14点22分14秒301毫秒356纳秒,时基于本地操作系统时间处理业务对象,多个业务对象数据的处理时间或多或少会存在差异,使得各个业务对象数据的本地系统时间并不能保持绝对一致。
因此,提出了本申请实施例的核心构思之一,为保证在一个关系数据库环境下实现一个或多个业务对象数据的时间一致性,需要一个单点的时钟服务,由其统一公布时间信息,每个业务对象数据应用该时间信息。
参照图1,示出了本申请的一种基于关系数据库的业务对象的处理方法实施例1的步骤流程图,具体可以包括如下步骤:
步骤101,在关系数据库中接收业务对象的第一处理请求;
关系数据库,可以是建立在关系数据库模型基础上的数据库,借助于集合代数等概念和方法来处理数据库中的数据,同时也是一个被组织成一组拥有正式描述性的表格,该形式的表格作用的实质是装载着数据项的特殊收集体,这些表格中的数据能以许多不同的方式被存取或重新召集而不需要重新组织数据库表格。关系数据库的定义造成元数据的一张表格或造成表格、列、范围和约束的正式描述。
每个表格(有时被称为一个关系)可以包含用列表示的一个或更多的数据种类。每行包含一个唯一的数据实体,这些数据是被列定义的种类。当创造一个关系数据库的时候,能定义数据列的可能值的范围和可能应用于那个数据值的进一步约束。
在本申请实施例中,关系数据库可以包括Oracle、DB2、SQLServer、Sybase、MySQL等等,本申请实施例对比不加以限制。
对于不同业务领域而言,可以具有不同的业务对象,即具有业务领域特征的对象。
例如,对于半导体领域而言,业务对象可以包括物料(如硅片);对于新闻媒体领域而言,业务对象可以包括新闻数据;对于移动通讯领域而言,业务对象可以包括移动通讯数据;对于电子商务领域而言,业务对象可以包括商品。
为使本领域技术人员更好地理解本申请实施例,在本说明书中,将电子商务领域的商品作为业务对象的一种示例进行说明。
一个典型的商品交易事件中,可以包括买家、卖家和支付服务系统等对象。
对于买家,可以在客户端上通过商品下单、付款、接收商品、退还商品(即退货)、更换商品、退款等操作,触发业务对象的处理请求。
对于支付服务系统,可以通过接收买家付款、将付款转付卖家等操作,触发业务对象的处理请求。
对于卖家,可以在另一客户端上通过接收订单、发送商品(即发货)、接收付款、接收退还商品、退还付款等操作,触发业务对象的处理请求。
当然,上述处理请求只是作为示例,在实施本申请实施例时,可以根据实际情况设置其他处理请求,本申请实施例对此不加以限制。另外,除了上述处理请求外,本领域技术人员还可以根据实际需要采用其它处理请求,本申请实施例对此也不加以限制。
在具体实现中,所述第一处理请求中可以包括数据处理信息和时间获取信息。
其中,数据处理信息可以记录处理业务对象所需的数据,例如,对于商品下单操作,该数据处理信息可以包括买家的信息(如ID)、卖家的信息(如ID)、商品的信息(如ID、数量、价格)等等。
步骤102,根据所述数据处理信息生成一条或多条业务对象数据;
在具体实现中,处理节点可以根据处理业务对象所需的数据生成一条或多条业务对象数据。
例如,对于买家的商品下单操作,可以生成交易订单数据;对于付款操作,可以生成付款数据;对于接收商品的操作,可以生成确认收货的数据;
对于支付服务系统接收买家付款的操作,可以生成买家付款的数据;对于将付款转付卖家等操作,可以生成确认收货转款到卖家的数据;
对于卖家的接收订单的操作,可以生成接收买家订单的数据;对于接收付款的操作,可以生成接收付款的数据;对于发货的操作,可以生成发货的数据;
当然,上述业务对象数据只是作为示例,在实施本申请实施例时,可以根据实际情况设置其他业务对象数据,本申请实施例对此不加以限制。另外,除了上述业务对象数据外,本领域技术人员还可以根据实际需要采用其它业务对象数据,本申请实施例对此也不加以限制。
在本申请的一种优选实施例中,所述关系数据库可以包括一个或多个本地线程变量,每个本地线程变量可以具有独立的变量副本;
则在本申请实施例中,步骤102可以包括如下子步骤:
子步骤S11,在所述一个或多个本地线程变量中,采用所述独立的变量副本按照所述业务对象处理信息生成业务对象数据。
在处理节点高并发处理业务对象时,可以采用本地线程变量(ThreadLocal)解决多线程的并发访问。
ThreadLocal为线程的局部变量,在多线程并发访问同一个数据的时候,可以为每一个线程提供一个独立的变量副本,每个线程各自操作自己的变量副本,不会影响其它线程的变量副本,从而隔离了多个线程对数据的访问冲突。
步骤103,从预置的时间服务节点中提取时间戳;
本申请实施例中,为保证在一个关系数据库环境下实现业务对象数据的时间一致性,由时间服务节点提供时钟服务,统一公布时间信息,每个业务对象数据应用该时间信息。
在具体实现中,第一处理请求中可以包括时间获取信息,该时间获取信息可以用于指示需要获取时间戳。在业务处理节点检测到该时间获取信息时,可以从分布式系统中的时间服务节点中提取时间戳。
在本申请实施例的一种优选示例中,所述时间服务节点可以为独立节点。例如,该时间服务节点可以为独立的服务器。
在本申请实施例的另一种优选示例中,所述时间服务节点可以包括集成于业务对象处理节点中,用于提供时间戳的时间服务模块。例如,该时间服务节点可以为数据库。
其中,业务对象处理节点可以为处理业务对象的节点,具体可以为分布式系统中的一个节点。
需要说明的是,该时间服务模块可以集成在当前的业务处理节点中,也可以集成在其他业务处理节点中,本申请实施例对此不加以限制。
在本申请的一种优选实施例中,所述时间服务节点可以包括时间服务主节点及时间服务备份节点;
则在本申请实施例中,步骤103可以包括如下子步骤:
子步骤S21,从所述时间服务主节点中提取时间戳;
子步骤S22,当从所述时间服务主节点中提取时间戳失败时,从所述时间服务备份节点中提取时间戳。
本申请实施例中,在时间服务主节点正常运行时,处理节点可以从时间服务主节点提取时间戳;在时间服务主节点出现宕机等异常运行状态时,处理节点可以时间服务备份节点中提取时间戳,以保障时间戳的正常获取。
在具体实现中,从时间服务主节点或时间服务备份节点中提取时间戳的方式为Get方式。
Get方式是向时间服务主节点或时间服务备份节点索取数据的一种请求,例如,可以执行代码selectcurrent_timestampfromdual(orale数据库的语法)向时间服务主节点或时间服务备份节点提取时间戳。
步骤104,在所生成的一条或多条业务对象数据中添加所述时间戳。
在具体实现中,对业务对象的处理请求进行处理,通常会进行数据库的写操作。
伴随本次业务请求的处理过程,涉及到本次业务处理过程中需要执行的数据库操作,例如,执行SQL(StructuredQueryLanguage,结构化查询语言语句)语句,其所影响的数据库记录中用于登记时间属性的字段,可以使用该时间戳赋值。
例如,可以通过以下方式使用时间戳赋值:
insertintotest_table1values(‘value1’,to_timestamp('2014-06-2013:55:33:272659','yyyy-mm-ddhh24:mi:ss:ff'))
insertintotest_table2values(‘value2’,to_timestamp('2014-06-2013:55:33:272659','yyyy-mm-ddhh24:mi:ss:ff'))
其中,to_timestamp函数为oracle数据库的时间转换函数,'2014-06-2013:55:33:272659'为时间戳,'yyyy-mm-ddhh24:mi:ss:ff'为时间戳的格式。
在本申请的一种优选实施例中,所述时间戳可以存储在内存中,则在本申请实施例中,步骤104可以包括如下子步骤:
子步骤S31,从内存中提取所述时间戳;
子步骤S32,在所生成的业务对象数据中添加在内存提取的时间戳。
内存(Memory)也被称为内存储器,其作用是用于暂时存放CPU(CentralProcessingUnit,中央处理器)中的运算数据,以及与硬盘等外部存储器交换的数据。关系数据库在运行中,其所在的电子设备的CPU可以会把需要运算的数据调到内存中进行运算,当运算完成后CPU再将结果传送出来。
本申请实施例中基于内存的特性提高了时间戳的读取和写入速度,提升关系数据库的处理效率。
本申请实施例在关系数据库按照业务对象的处理请求中数据处理信息生成业务对象数据,根据处理请求中的时间获取信息时间服务节点中提取时间戳,以及在所生成一条或多条的业务对象数据中添加所述时间戳,而对于单个时间服务节点,无论其本身的时间是否绝对精准,如与格林威治时间是否绝对一致,但是其时间戳具有强一致性的特征,关系数据库遵从该时间服务节点的授时,避免了因为使用本地操作系统时间而造成业务对象数据之间时间存在细微的差异的问题,提高了业务对象数据之间时间信息的一致性,同时减少对数据库本地操作系统日期函数的调用,加快了处理的效率。
此外,业务操作通常是伴随着数据库写入的,有查询、新增、修改等操作,一次业务操作会有多次数据库写入,所以多一次时间戳获取并不会有明显开销导致降低性能,保证了获取当前时间戳的性能开销的可控性。
在本申请的一种优选实施例中,所述业务对象数据可以具有业务对象数据标识,所述方法还可以包括如下步骤:
步骤105,将所述时间戳和所述业务对象数据标识进行数据映射。
业务对象数据标识可以为识别该业务对象数据的信息,可以包括用户信息(如用户ID)、业务对象信息(如业务对象ID)、处理信息(如交易流水号)等等。
例如,建立映射关系可以为2014.08.08.12:00:000000(时间)-123456(某次业务处理的流水号,即业务对象数据标识)。
常见的业务对象数据核对机制,一般是定期(核对周期)的,如一周、一天、一个小时等,核对周期可以根据业务对象所产生的数据量规模,以及核对周期在业务设计上是否允许,比如,核对双方可以按照一天一次的核对周期进行。
在业务对象数据核对开始时可以先选定一个时间范围,比如核对双方选取2014.08.08.11:30:000000-2014.08.08.12:30:000000这个时间段内的业务对象数据进行核对,则核对双方从数据库按这个时间段提取业务对象数据,将提取的业务对象数据逐笔核对,该核对可以根据双方的业务对象标识进行关联核对,例如,核对业务对象状态(如出货、退货等)、单据号、金额、买家信息、卖家信息等信息。
本申请实施例将时间戳和业务对象数据标识进行数据映射,在业务对象数据核对时,基于时间戳的一致性,保证了业务对象数据时间的一致性,保证了在业务对象数据核对的时候,根据时间(如自然日)硬性切分的安全性。
参照图2,示出了本申请的一种基于关系数据库的业务对象的处理方法实施例2的步骤流程图,具体可以包括如下步骤:
步骤201,在第一关系数据库中接收第二关系数据库发送的业务对象的第二处理请求;所述第二处理请求中包括数据处理信息和时间戳;
步骤202,根据所述数据处理信息生成一条或多条业务对象数据;
步骤203,在所生成的一条或多条业务对象数据中添加所述时间戳;
其中,所述时间戳为所述第二关系数据库在接收到业务对象的第三处理请求时,从预置的时间服务节点中提取的时间戳。
本申请实施例中,对于同一个业务请求,可以生成多个业务对象数据。例如,对于同一次商品交易操作,可以生成trade(交易数据),以及与trade(交易数据)关联的trade_goods(商品数据)、trade_shipping(物流数据)等多条业务对象数据。
第三业务处理请求可以为第二关系数据库接收到的,首次进行业务处理的请求。
通常,该第三业务请求可以包括数据处理信息、时间获取信息。
其中一些业务对象数据可以在第二关系数据库中根据部分的数据处理信息生成,而另外一些业务对象数据,由于时效性要求不高等原因,可以在第一第二关系数据库中根据部分的数据处理信息生成。
第二关系数据库在检测到时间获取信息时,可以从预置的时间服务节点中提取时间戳。
第二业务处理请求可以为第一关系数据库接收到的,非首次进行业务处理的请求,具体可以由第二关系数据库发出。
第二关系数据库发送至第一第二关系数据库的时间戳可以与第二处理请求是绑定的,第一第二关系数据库不再去时间服务节点提取时间戳,而是以该第二关系数据库发送时间戳生成业务对象数据。
在本申请实施例的一种优选示例中,所述时间服务节点可以为独立节点。
在本申请实施例的另一种优选示例中,所述时间服务节点可以为集成于指定的电子设备中,用于提供时间戳的时间服务模块。
在本申请的一种优选实施例中,所述时间服务节点可以包括时间服务主节点及时间服务备份节点;
所述第二关系数据库通过以下方式从时间服务节点中提取时间戳:
子步骤S41,从所述时间服务主节点中提取时间戳;
子步骤S42,当从所述时间服务主节点中提取时间戳失败时,从所述时间服务备份节点中提取时间戳。
在具体实现中,从时间服务主节点或时间服务备份节点中提取时间戳的方式可以为GET方式。
在本申请的一种优选实施例中,所述关系数据库可以包括一个或多个本地线程变量,每个本地线程变量可以具有独立的变量副本;
则在本申请实施例中,步骤202可以包括如下子步骤:
子步骤S51,在所述一个或多个本地线程变量中,采用所述独立的变量副本按照所述业务对象处理信息生成业务对象数据。
在本申请的一种优选实施例中,所述时间戳可以存储在内存中;则在本申请实施例中,步骤203可以包括如下子步骤:
子步骤S61,从内存中提取所述时间戳;
子步骤S62,在所生成的业务对象数据中添加在内存提取的时间戳。
在本申请的一种优选实施例中,所述业务对象数据可以具有业务对象数据标识,所述方法还可以包括如下步骤:
步骤204,将所述时间戳和所述业务对象数据标识进行数据映射。
需要说明的是,对于方法实施例,为了简单描述,故将其都表述为一系列的动作组合,但是本领域技术人员应该知悉,本申请实施例并不受所描述的动作顺序的限制,因为依据本申请实施例,某些步骤可以采用其他顺序或者同时进行。其次,本领域技术人员也应该知悉,说明书中所描述的实施例均属于优选实施例,所涉及的动作并不一定是本申请实施例所必须的。
参照图3,示出了本申请一种基于关系数据库的业务对象的处理装置实施例1的结构框图,具体可以包括如下模块:
第一请求接收模块301,用于在关系数据库中接收业务对象的第一处理请求;所述第一处理请求中包括数据处理信息和时间获取信息;
业务对象数据生成模块302,用于根据所述数据处理信息生成一条或多条业务对象数据;
时间戳提取模块303,从预置的时间服务节点中提取时间戳;
时间戳添加模块304,用于在所生成的一条或多条业务对象数据中添加所述时间戳。
在本申请实施例的一种优选示例中,所述时间服务节点可以为独立节点。
在本申请实施例的另一种优选示例中,所述时间服务节点可以包括集成于业务对象处理节点中,用于提供时间戳的时间服务模块。
在本申请的一种优选实施例中,所述时间服务节点可以包括时间服务主节点及时间服务备份节点;所述时间戳提取模块303可以包括如下子模块:
主节点提取子模块,用于从所述时间服务主节点中提取时间戳;
备份节点提取子模块,用于在从所述时间服务主节点中提取时间戳失败时,从所述时间服务备份节点中提取时间戳。
在具体实现中,从时间服务主节点或时间服务备份节点中提取时间戳的方式可以为GET方式。
在本申请的一种优选实施例中,所述关系数据库可以包括一个或多个本地线程变量,每个本地线程变量可以具有独立的变量副本;
所述业务对象数据生成模块302可以包括如下子模块:
并发生成子模块,用于在所述一个或多个本地线程变量中,采用所述独立的变量副本按照所述业务对象处理信息生成业务对象数据。
在本申请的一种优选实施例中,所述时间戳可以存储在内存中;所述时间戳添加模块304可以包括如下子模块:
提取子模块,用于从内存中提取所述时间戳;
添加子模块,用于在所生成的业务对象数据中添加在内存提取的时间戳。
在本申请的一种优选实施例中,所述业务对象数据可以具有业务对象数据标识,所述的装置还可以包括如下模块:
映射模块,用于将所述时间戳和所述业务对象数据标识进行数据映射。
参照图4,示出了本申请一种基于关系数据库的业务对象的处理装置实施例2的结构框图,具体可以包括如下模块:
第二请求接收模块401,用于在第一关系数据库中接收第二关系数据库发送的业务对象的第二处理请求;所述第二处理请求中包括数据处理信息和时间戳;
业务对象数据生成模块402,用于根据所述数据处理信息生成一条或多条业务对象数据;
时间戳添加模块403,用于在所生成的一条或多条业务对象数据中添加所述时间戳;
其中,所述时间戳为所述第二关系数据库在接收到业务对象的第三处理请求时,从预置的时间服务节点中提取的时间戳。
在本申请实施例的一种优选示例中,所述时间服务节点可以为独立节点。
在本申请实施例的另一种优选示例中,所述时间服务节点可以为集成于指定的电子设备中,用于提供时间戳的时间服务模块。
在本申请的一种优选实施例中,所述时间服务节点可以包括时间服务主节点及时间服务备份节点;
所述第二关系数据库通过以下方式从时间服务节点中提取时间戳:
从所述时间服务主节点中提取时间戳;
当从所述时间服务主节点中提取时间戳失败时,从所述时间服务备份节点中提取时间戳。
在具体实现中,从时间服务主节点或时间服务备份节点中提取时间戳的方式可以为GET方式。
在本申请的一种优选实施例中,所述关系数据库可以包括一个或多个本地线程变量,每个本地线程变量可以具有独立的变量副本;
所述业务对象数据生成模块402可以包括如下子模块:
并发生成子模块,用于在所述一个或多个本地线程变量中,采用所述独立的变量副本按照所述业务对象处理信息生成业务对象数据。
在本申请的一种优选实施例中,所述时间戳可以存储在内存中;所述时间戳添加模块403可以包括如下子模块:
提取子模块,用于从内存中提取所述时间戳;
添加子模块,用于在所生成的业务对象数据中添加在内存提取的时间戳。
在本申请的一种优选实施例中,所述业务对象数据可以具有业务对象数据标识,所述的装置还可以包括如下模块:
映射模块,用于将所述时间戳和所述业务对象数据标识进行数据映射。
对于装置实施例而言,由于其与方法实施例基本相似,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
本申请中的各个实施例均采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似的部分互相参见即可。
本领域内的技术人员应明白,本申请实施例的实施例可提供为方法、装置、或计算机程序产品。因此,本申请实施例可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本申请实施例可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
在一个典型的配置中,所述计算机设备包括一个或多个处理器(CPU)、输入/输出接口、网络接口和内存。内存可能包括计算机可读介质中的非永久性存储器,随机存取存储器(RAM)和/或非易失性内存等形式,如只读存储器(ROM)或闪存(flashRAM)。内存是计算机可读介质的示例。计算机可读介质包括永久性和非永久性、可移动和非可移动媒体可以由任何方法或技术来实现信息存储。信息可以是计算机可读指令、数据结构、程序的模块或其他数据。计算机的存储介质的例子包括,但不限于相变内存(PRAM)、静态随机存取存储器(SRAM)、动态随机存取存储器(DRAM)、其他类型的随机存取存储器(RAM)、只读存储器(ROM)、电可擦除可编程只读存储器(EEPROM)、快闪记忆体或其他内存技术、只读光盘只读存储器(CD-ROM)、数字多功能光盘(DVD)或其他光学存储、磁盒式磁带,磁带磁磁盘存储或其他磁性存储设备或任何其他非传输介质,可用于存储可以被计算设备访问的信息。按照本文中的界定,计算机可读介质不包括非持续性的电脑可读媒体(transitorymedia),如调制的数据信号和载波。
本申请实施例是参照根据本申请实施例的方法、终端设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理终端设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理终端设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理终端设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理终端设备上,使得在计算机或其他可编程终端设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程终端设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
尽管已描述了本申请实施例的优选实施例,但本领域内的技术人员一旦得知了基本创造性概念,则可对这些实施例做出另外的变更和修改。所以,所附权利要求意欲解释为包括优选实施例以及落入本申请实施例范围的所有变更和修改。
最后,还需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者终端设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者终端设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者终端设备中还存在另外的相同要素。
以上对本申请所提供的一种基于关系数据库的业务对象的处理方法和一种基于关系数据库的业务对象的处理装置,进行了详细介绍,本文中应用了具体个例对本申请的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本申请的方法及其核心思想;同时,对于本领域的一般技术人员,依据本申请的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本申请的限制。

Claims (15)

1.一种基于关系数据库的业务对象的处理方法,其特征在于,包括:
在关系数据库中接收业务对象的第一处理请求;所述第一处理请求中包括数据处理信息;
根据所述数据处理信息生成一条或多条业务对象数据;
从预置的时间服务节点中提取时间戳;
在所生成的一条或多条业务对象数据中添加所述时间戳。
2.根据权利要求1所述的方法,其特征在于,所述时间服务节点为独立节点。
3.根据权利要求1所述的方法,其特征在于,所述时间服务节点包括集成于业务对象处理节点中,用于提供时间戳的时间服务模块。
4.根据权利要求1或2或3所述的方法,其特征在于,所述时间服务节点包括时间服务主节点及时间服务备份节点;所述从预置的时间服务节点中提取时间戳的步骤包括:
从所述时间服务主节点中提取时间戳;
当从所述时间服务主节点中提取时间戳失败时,从所述时间服务备份节点中提取时间戳。
5.根据权利要求4所述的方法,其特征在于,从时间服务主节点或时间服务备份节点中提取时间戳的方式为GET方式。
6.根据权利要求1所述的方法,其特征在于,所述关系数据库包括一个或多个本地线程变量,每个本地线程变量具有独立的变量副本;
所述根据所述数据处理信息生成一条或多条业务对象数据的步骤包括:
在所述一个或多个本地线程变量中,采用所述独立的变量副本按照所述业务对象处理信息生成业务对象数据。
7.根据权利要求1所述的方法,其特征在于,所述时间戳存储在内存中;所述在所生成的业务对象数据中添加所述时间戳的步骤包括:
从内存中提取所述时间戳;
在所生成的业务对象数据中添加在内存提取的时间戳。
8.根据权利要求1或2或3或5或6或7所述的方法,其特征在于,所述业务对象数据具有业务对象数据标识,所述的方法还包括:
将所述时间戳和所述业务对象数据标识进行数据映射。
9.一种基于关系数据库的业务对象的处理方法,其特征在于,包括:
在第一关系数据库中接收第二关系数据库发送的业务对象的第二处理请求;所述第二处理请求中包括数据处理信息和时间戳;
根据所述数据处理信息生成一条或多条业务对象数据;
在所生成的一条或多条业务对象数据中添加所述时间戳;
其中,所述时间戳为所述第二关系数据库在接收到业务对象的第三处理请求时,从预置的时间服务节点中提取的时间戳。
10.一种基于关系数据库的业务对象的处理装置,其特征在于,包括:
第一请求接收模块,用于在关系数据库中接收业务对象的第一处理请求;所述第一处理请求中包括数据处理信息;
业务对象数据生成模块,用于根据所述数据处理信息生成一条或多条业务对象数据;
时间戳提取模块,用于从预置的时间服务节点中提取时间戳;
时间戳添加模块,用于在所生成的一条或多条业务对象数据中添加所述时间戳。
11.根据权利要求10所述的装置,其特征在于,所述时间服务节点包括时间服务主节点及时间服务备份节点;所述时间戳提取模块包括:
主节点提取子模块,用于从所述时间服务主节点中提取时间戳;
备份节点提取子模块,用于在从所述时间服务主节点中提取时间戳失败时,从所述时间服务备份节点中提取时间戳。
12.根据权利要求10所述的装置,其特征在于,所述关系数据库包括一个或多个本地线程变量,每个本地线程变量具有独立的变量副本;
所述业务对象数据生成模块包括:
并发生成子模块,用于在所述一个或多个本地线程变量中,采用所述独立的变量副本按照所述业务对象处理信息生成业务对象数据。
13.根据权利要求10所述的装置,其特征在于,所述时间戳存储在内存中;所述时间戳添加模块包括:
提取子模块,用于从内存中提取所述时间戳;
添加子模块,用于在所生成的业务对象数据中添加在内存提取的时间戳。
14.根据权利要求10或11或12或13所述的装置,其特征在于,所述业务对象数据具有业务对象数据标识,所述的装置还包括:
映射模块,用于将所述时间戳和所述业务对象数据标识进行数据映射。
15.一种基于关系数据库的业务对象的处理装置,其特征在于,包括:
第二请求接收模块,用于在第一关系数据库中接收第二关系数据库发送的业务对象的第二处理请求;所述第二处理请求中包括数据处理信息和时间戳;
业务对象数据生成模块,用于根据所述数据处理信息生成一条或多条业务对象数据;
时间戳添加模块,用于在所生成的一条或多条业务对象数据中添加所述时间戳;
其中,所述时间戳为所述第二关系数据库在接收到业务对象的第三处理请求时,从预置的时间服务节点中提取的时间戳。
CN201410542460.7A 2014-10-14 2014-10-14 一种基于关系数据库的业务对象的处理方法和装置 Active CN105574022B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201410542460.7A CN105574022B (zh) 2014-10-14 2014-10-14 一种基于关系数据库的业务对象的处理方法和装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201410542460.7A CN105574022B (zh) 2014-10-14 2014-10-14 一种基于关系数据库的业务对象的处理方法和装置

Publications (2)

Publication Number Publication Date
CN105574022A true CN105574022A (zh) 2016-05-11
CN105574022B CN105574022B (zh) 2020-04-17

Family

ID=55884168

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201410542460.7A Active CN105574022B (zh) 2014-10-14 2014-10-14 一种基于关系数据库的业务对象的处理方法和装置

Country Status (1)

Country Link
CN (1) CN105574022B (zh)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108573030A (zh) * 2018-03-21 2018-09-25 中国银行股份有限公司 数据库选择方法及系统
CN109254880A (zh) * 2017-07-12 2019-01-22 苏宁云商集团股份有限公司 一种处理数据库宕机的方法及装置
CN116431742A (zh) * 2023-06-09 2023-07-14 合肥青谷信息科技有限公司 一种大数据量的业务数据加工方法、装置及电子设备

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102193989A (zh) * 2011-03-25 2011-09-21 北京世纪互联工程技术服务有限公司 基于图形数据库的联机事务处理系统及数据插入方法
CN102932198A (zh) * 2012-07-09 2013-02-13 北京中创信测科技股份有限公司 一种实现ps域分布式架构的信令监测装置
US20130173854A1 (en) * 2012-01-02 2013-07-04 Samsung Electronics Co., Ltd. Method for managing data in storage device and memory system employing such a method
CN103678696A (zh) * 2013-12-27 2014-03-26 金蝶软件(中国)有限公司 控制数据读取分离的方法及装置
CN103744936A (zh) * 2013-12-31 2014-04-23 华为技术有限公司 一种数据库中的多版本并发控制方法及数据库系统

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102193989A (zh) * 2011-03-25 2011-09-21 北京世纪互联工程技术服务有限公司 基于图形数据库的联机事务处理系统及数据插入方法
US20130173854A1 (en) * 2012-01-02 2013-07-04 Samsung Electronics Co., Ltd. Method for managing data in storage device and memory system employing such a method
CN102932198A (zh) * 2012-07-09 2013-02-13 北京中创信测科技股份有限公司 一种实现ps域分布式架构的信令监测装置
CN103678696A (zh) * 2013-12-27 2014-03-26 金蝶软件(中国)有限公司 控制数据读取分离的方法及装置
CN103744936A (zh) * 2013-12-31 2014-04-23 华为技术有限公司 一种数据库中的多版本并发控制方法及数据库系统

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109254880A (zh) * 2017-07-12 2019-01-22 苏宁云商集团股份有限公司 一种处理数据库宕机的方法及装置
CN108573030A (zh) * 2018-03-21 2018-09-25 中国银行股份有限公司 数据库选择方法及系统
CN116431742A (zh) * 2023-06-09 2023-07-14 合肥青谷信息科技有限公司 一种大数据量的业务数据加工方法、装置及电子设备

Also Published As

Publication number Publication date
CN105574022B (zh) 2020-04-17

Similar Documents

Publication Publication Date Title
US10346394B2 (en) Importation, presentation, and persistent storage of data
US10747762B2 (en) Automatic generation of sub-queries
CN105573732A (zh) 一种基于分布式系统的业务对象的处理方法和装置
US20200051043A1 (en) Splittable security token
US10838982B2 (en) System and method for aggregating values through risk dimension hierarchies in a multidimensional database environment
US20180268479A1 (en) International trade finance blockchain system
CN110333951B (zh) 一种商品抢购请求分配方法
AU2017224831A1 (en) A data source system agnostic fact category partitioned information repository and methods for the insertion and retrieval of data using the information repository
CN105574022A (zh) 一种基于关系数据库的业务对象的处理方法和装置
KR102025222B1 (ko) 글로벌하게 분산된 환경에서 상호의존적인 기업 데이터 일관성을 보존하기 위한 시스템 및 방법
EP3532922A1 (en) Processing application programming interface (api) queries based on variable schemas
CN109933759B (zh) 一种统计类数据表的生成方法和装置
US20130262378A1 (en) Aggregation point for enterprise business application binding
US20230073883A1 (en) Multi-blockchain token rebalancer
US20180165337A1 (en) System for Extracting Data from a Database in a User Selected Format and Related Methods and Computer Program Products
CN113094414A (zh) 流转图谱生成方法及装置
CN105574056A (zh) 一种异常问题定位方法和装置
US10810662B1 (en) Utilizing time-series tables for tracking accumulating values
CN115018657B (zh) 车险报价量化方法、装置、计算机设备和存储介质
US8706619B1 (en) Employing spillover tables for data updates
Shen A performance comparison of NoSQL and SQL databases for different scales of ecommerce systems
US20230297550A1 (en) Dynamic data views
US20230168939A1 (en) Definition and implementation of process sequences
Van Der Lans Data replication for enabling operational bi
CN114240674A (zh) 一种定期拆分方法和装置

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant
TR01 Transfer of patent right

Effective date of registration: 20201010

Address after: Cayman Enterprise Centre, 27 Hospital Road, George Town, Grand Cayman Islands

Patentee after: Innovative advanced technology Co.,Ltd.

Address before: Cayman Enterprise Centre, 27 Hospital Road, George Town, Grand Cayman Islands

Patentee before: Advanced innovation technology Co.,Ltd.

Effective date of registration: 20201010

Address after: Cayman Enterprise Centre, 27 Hospital Road, George Town, Grand Cayman Islands

Patentee after: Advanced innovation technology Co.,Ltd.

Address before: A four-storey 847 mailbox in Grand Cayman Capital Building, British Cayman Islands

Patentee before: Alibaba Group Holding Ltd.

TR01 Transfer of patent right
TR01 Transfer of patent right

Effective date of registration: 20240223

Address after: Guohao Times City # 20-01, 128 Meizhi Road, Singapore

Patentee after: Advanced Nova Technology (Singapore) Holdings Ltd.

Country or region after: Singapore

Address before: Cayman Enterprise Centre, 27 Hospital Road, George Town, Grand Cayman Islands

Patentee before: Innovative advanced technology Co.,Ltd.

Country or region before: Cayman Islands

TR01 Transfer of patent right