CN103064964A - 一种支持分布式事务的数据库的连接方法 - Google Patents

一种支持分布式事务的数据库的连接方法 Download PDF

Info

Publication number
CN103064964A
CN103064964A CN201210591754XA CN201210591754A CN103064964A CN 103064964 A CN103064964 A CN 103064964A CN 201210591754X A CN201210591754X A CN 201210591754XA CN 201210591754 A CN201210591754 A CN 201210591754A CN 103064964 A CN103064964 A CN 103064964A
Authority
CN
China
Prior art keywords
distributed
actuator
multinode
application system
data base
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
CN201210591754XA
Other languages
English (en)
Other versions
CN103064964B (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.)
Jiangsu Huaku Data Technology Co. Ltd.
Original Assignee
TIANJIN NANDA GENERAL DATA TECHNOLOGY Co 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 TIANJIN NANDA GENERAL DATA TECHNOLOGY Co Ltd filed Critical TIANJIN NANDA GENERAL DATA TECHNOLOGY Co Ltd
Priority to CN201210591754.XA priority Critical patent/CN103064964B/zh
Publication of CN103064964A publication Critical patent/CN103064964A/zh
Application granted granted Critical
Publication of CN103064964B publication Critical patent/CN103064964B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

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

Abstract

本发明提供了一种支持分布式事务的数据库的连接方法,包括:将分布式事务所涉及的分布式数据库连接对象作为一个整体进行封装,形成多节点执行器,并将多节点执行器对象作为分布式数据库连接池的缓存对象进行缓存,并建立与应用系统的对应关联关系;分布式数据库连接池接收到应用系统请求后,确定与该请求对应的有逻辑关系的缓存的多节点执行器对象;将上一步骤所确定的多节点执行器对象分配给应用系统用于对数据库的分布式事务操作。本发明的有益效果是能够使应用系统从繁杂的分布式事务处理逻辑中解脱出来,专心于业务逻辑;同时,也能够保障对多个数据库的分布式访问读写操作的正确性,有效提高对多数据库进行分布式事务操作的利用率。

Description

一种支持分布式事务的数据库的连接方法
技术领域
本发明属于分布式数据存储领域,尤其是涉及一种支持分布式事务的数据库的连接方法。
背景技术
随着信息化技术的快速发展,一个企业的应用系统也越来越多,应用所涉及的业务也越来越复杂,一个业务经常需要访问企业内多个不同的数据库来完成,也有可能访问外部的数据库,并且要保障事务的ACID属性以及高并发性。
为了适应应用业务的发展需要,目前主流关系数据库系统都支持分布式事务操作,并遵循国际XA/OPEN标准。为了保障访问数据库的并发性能,减少建立到数据库连接的时间,各厂商提供的中间件产品都提供了支持分布式事务的分布式数据库连接池。
所述分布式数据库连接池,在系统初始化时,读取配置文件确定所连接的数据库,并建立到指定数据库的连接,缓存供使用。对于多个数据库,需要建立多个相应的连接池,并进行配置。当应用系统需要访问多个数据库时,需要一一向各个连接池发出请求,获取支持分布式事务的数据库连接,然后应用系统生成全局分布式事务ID,并一一启动分布式事务,进行SQL执行操作,发送SQL结束操作,最后进行提交。对于每个事务都要进行上述过程。对于应用的每次请求,连接池都随机分配空闲的连接供应用使用,避免了频繁地向数据库建立实际的连接,有效地提高了数据库连接的利用率,减少了建立连接所需的时间,极大地提高了系统的并发性能。但也存在着两个问题需要解决,问题一:应用系统开发极为不便,面对多个数据库,需要自己完成分布式事务所需的各项细致操作;问题二:同一线程的不同事务操作或者同一事务的不同操作无法使用相同的数据库连接,造成性能降低和数据操作错误。
如图1,假设应用系统有五个事务,需要访问三个不同的数据库A、B、C,则需要配置三个连接池,分别缓存到三个数据库的连接。从图中可以看出应用需要向三个连接池共发出11次获取分布式连接对象的请求。配置不方便,逻辑也较复杂。同时为了执行真正的事务,应用系统还必须执行图2所示的以下过程:
步骤201,从连接池中获取所需的分布式连接;需要从连接池一中获取分布式连接对象A1,从连接池2中获取分布式连接对象B1;
步骤202,生成全局分布式事务标识XID;应用系统自已生成分布式事务的全局标识XID,要求全局唯一;
步骤203,通知所有分布式连接执行分布式事务启动操作;应用系统需要逐个调用所获得的分布式连接对象的Xa_start方法,通知数据库启动分布式事务;
步骤204,在分布式连接对象上执行SQL操作;应用系统据事务需要,在分布式连接对象上执行SQL操作;这些分布式SQL操作组成整个分布式事务;
步骤205,在各个分布式连接上执行结束操作;应用系统逐个调用分布式对象,执行Xa_end操作,通知各数据库准备提交;
步骤206,提交整个分布式事务;应用系统提交整个分布式事务,最终完成跨数据库的整个事务操作。
由以上操作可以看出,所述分布式数据库连接池,只是缓存了一个分布式事务所需的到多个数据库连接中的一个连接,而非实际意义上的对分布式事务所需的所有连接的缓存,也就必然要执行步骤202、203、205这样的细节操作,给应用开发带来很多不便,使得应用逻辑更加复杂。
在另一个场景中,如图1和图3所示,参考图1,假设只考虑应用事务一和应用事务四。事务一和事务四属于同一个线程,事务都只涉及数据库A和数据库B。此时,由于到数据库A和数据库B的连接池各自维护到各自数据库的连接,并随机分配连接给请求者,所以事务一执行完后,事务四所获得的实际连接则有可能与事务一曾使用的连接不同。这样如果事务四与事务一有关联的话,则可能造成数据操作错误。应用系统执行事务一和事务四的过程参见图2所示,详细说明如下:
步骤301,从连接池中获取所需的分布式连接;应用系统从连接池一中获得分布式连接对象A1,从连接池2中获取分布式连接对象B1;
步骤302,使用分布式连接执行事务一;应用系统按图1步骤202到步骤206完成事务一的执行;
步骤303,从连接池中获取所需的分布式连接;应用系统从连接池一中获得分布式连接对象A2,从连接池2中获取分布式连接对象B1;注意此处,由于连接池随机分配分布式连接,所以从连接池一中获得是分布式连接对象A2,与事务一请求获得的不同;连接池二中获得连接对象与事务一时相同,也不代表一定相同,此处只是示意,有可能相同,也有可能不同。如果缓存的连接很多,则不相同的概率将大大增加。
步骤304,使用分布式连接执行事务四;应用系统按图1步骤202到步骤206完成事务四的执行;
综上所述,现有分布式数据库连接池无法有效地降低应用系统使用分布式事务的复杂性,也无法解决同一线程多次使用分布式数据库连接时可能出现的数据操作错误和失败的问题。
发明内容
本发明要解决的问题是提供一种支持分布式事务的数据库的连接方法,尤其适合于面对多个不同的数据库。
为解决上述技术问题,本发明采用的设计思想是:对全局分布式事务所涉及的多个数据库连接上的各个分布式事务操作进行封装,抽象出新的对象,多节点执行器,并进行缓存,方便应用系统使用,同时为应用系统的同一请求线程分配相同的多节点执行器对象。
本发明采用的技术方案是:一种支持分布式事务的数据库的连接方法,包括:
1)将分布式事务所涉及的分布式数据库连接对象作为一个整体进行封装,形成多节点执行器,并将多节点执行器对象作为分布式数据库连接池的缓存对象进行缓存,并建立与应用系统的对应关联关系;
2)分布式数据库连接池接收到应用系统请求后,确定与该请求对应的有逻辑关系的缓存的封装的对象;
3)将上一步骤所确定的多节点执行器对象分配给应用系统用于对数据库的分布式事务操作。
进一步的,所述的第一步骤包括:
将对所有分布式数据库连接上的分布式全局XID生成、分布式事务启动、分布式事务结束以及其它分布式事务提交进行封装,为应用提供方便的接口。
进一步的,所述的第二步骤中的逻辑关系是指向连接池请求的线程的标识,包括由线程标识衍生出的标识;封装对象属性指其与应用系统属性相对应的标识与封装对象属性之间的关系。
进一步的,所述的第一步骤中建立与应用系统的对应关联关系为构造HASH算法。
进一步的,所述的第二步骤还包括:在应用系统第一次请求时,连接池生成多节点执行器对象并进行缓存,同时建立与应用系统属性对应的关联关系;再次请求时,根据请求中的应用系统属性,通过所构造的HASH算法获得缓存的多节点执行器对象。
进一步的,所述的连接方法还包括:
建立并维护应用系统所使用的多节点执行器对象的闲表和忙表;所述的闲表记录了连接池中缓存的未被应用程序使用的多节点执行器,闲表中的多节点执行器可以分配给应用程序使用;所述的忙表记录了连接池中缓存的正在被应用程序使用的多节点执行器,忙表中的多节点执行器只有使用该执行器的应用程序将其归还给连接池后,才能分配使用
更进一步的,所述的连接方法还包括:
1)根据请求中的应用系统的标识,查询闲表,如果有空闲多节点执行器可用,将所确定的多节点执行器对象分配给应用系统用于对数据库的分布式事务操作;否则执行下一步骤;
2)根据请求中的应用系统的标识,查询忙表,如果有对应多节点执行器,将所确定的多节点执行器对象分配给应用系统用于对数据库的分布式事务操作;否则,建立新的多节点执行器对象,将分布式事务所涉及的分布式数据库连接对象作为一个整体封装和缓存。
本发明具有的优点和积极效果是:能够使应用系统从繁杂的分布式事务处理逻辑中解脱出来,专心于业务逻辑;同时,也能够保障对多个数据库的分布式访问读写操作的正确性,有效提高对多数据库进行分布式事务操作的利用率。
附图说明
图1为现有技术分布式数据库连接资源分配情况示意图;
图2为现有技术应用系统单事务使用分布式数据库连接池流程示意图;
图3为现有技术应用系统同线程两事务使用分布式数据库连接池流程示意图;
图4为本发明一实施例分布式数据库连接资源分配情况示意图;
图5为本发明一实施例中应用系统单事务使用分布式数据库连接池流程示意图;
图6为本发明一实施例中应用系统同线程两事务使用分布式数据库连接池流程示意图;
图7为本发明分布式数据库连接资源确定流程示意图。
具体实施方式
对于多节点执行器的封装,一个多节点执行器对象将包含多个分布式数据库连接,并将所包含的分布式数据库连接的职能进行封装,对应用系统提供方便易用的接口。如:封装后只提供简单的启动事务操作、执行SQL操作、提交操作、回滚操作等。多节点执行器对象将进行缓存,以提高性能,以及为同一线程提供复用,以方便应用系统可以决定在多次调用后统一提交。
下面结合附图和本发明的一个实例对本发明做详细的说明,仍以图4中应用事务一为例说明应用系统如何使用本发明的支持分布式事务的数据库连接资源管理方法来应用系统单一事务,如图5所示:
步骤501,从连接池中获取所需的多节点执行器;向连接池请求对数据库A、数据库B的多节点执行器;连接池建立到数据库A和数据库B的分布式连接对象A1和B1,并建立多节点执行器对象多节点执行器一;返回给应用系统;
步骤502,使用多节点执行器启动分布式事务;应用系统调用多节点执行器启动分布式事务;
步骤503,使用多节点执行器在分布式节点上执行SQL;应用系统调用多节点执行器执行SQL操作;
步骤504,使用多节点执行器提交分布式事务;应用系统调用多节点执行器提交事务,完成操作。
对于确定应用系统属性与多节点执行器之间的关联关系时,可以使用应用系统请求线程的ID来建立与缓存的多节点执行器对象的关联关系。
以图4中应用事务一、应用事务四为例,来说明应用系统同一线程如何获得同一多节点执行器对象的操作过程,如图6所示:
步骤601,从连接池中获取所需的多节点执行器;向连接池请求对数据库A、数据库B的多节点执行器;获得多节点执行器对象多节点执行器一;
步骤602,使用多节点执行器执行事务一;此处可以提交事务,也可以不提交事务,可由应用系统据业务自行决定;
步骤603,从连接池中获取所需的多节点执行器;此时连接池将据应用系统请求线程的标识,返回多节点执行器对象一,也就是刚才事务一所用的多节点执行器对象;
步骤604,使用多节点执行器执行事务四;此时由于获得的多节点执行器对象与事务一相同,所以当事务一未提交时,此处仍然可以进行SQL操作,最终与事务一中执行的SQL操作一同提交或者回滚,保障分布式事务的正确性。
从以上步骤可以看出,本发明对于应用系统同一线程完全可以分配相同的多节点执行器,以保障对多个数据库操作的正确性。并可以由应用程序决定提交的频度,最大程度地利用数据库的性能。
下面结合图7说明在本发明中,连接池如何为请求分配缓存的多节点执行器。连接池在接收到应用系统的请求时的流程如下:
步骤701,接收应用线程对多节点执行器的申请;
步骤702,该线程是否已有缓存的多节点执行器?接收到请求后,连接池将到维护的闲表、忙表中寻找是否已有缓存的多节点执行器,此处使用本发明提到的构造的HASH算法,据线程标识获得对应的多节点执行器;如果没有执行步骤703,否则执行步骤704;
步骤703,创建多节点执行器并进行缓存;据请求中的信息建立到各数据库的分布式连接,并创建多节点执行器对象,进行初始化;建立与请求线程标识的关联,并缓存该对象,同时放入忙对列;执行步骤705;
步骤704,把已缓存的多节点执行器分配给该线程;执行步骤705;
步骤705,返回多节点执行器给应用执行事务;连接池将确定的多节点执行器对象返回给应用系统使用,用以完成分布式事务操作。
以上对本发明的一个实施例进行了详细说明,但所述内容仅为本发明的较佳实施例,不能被认为用于限定本发明的实施范围。凡依本发明申请范围所作的均等变化与改进等,均应仍归属于本发明的专利涵盖范围之内。

Claims (7)

1.一种支持分布式事务的数据库的连接方法,包括: 
1)将分布式事务所涉及的分布式数据库连接对象作为一个整体进行封装,形成多节点执行器,并将多节点执行器对象作为分布式数据库连接池的缓存对象进行缓存,并建立与应用系统的对应关联关系; 
2)分布式数据库连接池接收到应用系统请求后,确定与该请求对应的有逻辑关系的缓存的封装的对象; 
3)将上一步骤所确定的多节点执行器对象分配给应用系统用于对数据库的分布式事务操作。 
2.根据权利要求1所述的连接方法,其特征在于:所述的第一步骤包括: 
将对所有分布式数据库连接上的分布式全局XID生成、分布式事务启动、分布式事务结束以及其它分布式事务提交进行封装,为应用提供方便的接口。 
3.根据权利要求1所述的连接方法,其特征在于:所述的第二步骤中的逻辑关系是指向连接池请求的线程的标识,包括由线程标识衍生出的标识;封装对象属性指其与应用系统属性相对应的标识与封装对象属性之间的关系。 
4.根据权利要求1所述的连接方法,其特征在于:所述的第一步骤中建立与应用系统的对应关联关系为构造HASH算法。 
5.根据权利要求4所述的连接方法,其特征在于:所述的第二步骤还包括:在应用系统第一次请求时,连接池生成多节点执行器对象并进行缓存,同时建立与应用系统属性对应的关联关系;再次请求时,根据请求中的应用系统属性,通过所构造的HASH算法获得缓存的多节点执行器对象。 
6.根据权利要求1所述的连接方法,其特征在于:所述的连接方法还包括: 
建立并维护应用系统所使用的多节点执行器对象的闲表和忙表;所述的闲表记录了连接池中缓存的未被应用程序使用的多节点执行器,闲表中的多节点执行器可以分配给应用程序使用;所述的忙表记录了连接池中缓存的正在被应用程序使用的多节点执行器,忙表中的多节点执行器只有使用该执行器的应用程序将其归还给连接池后,才能分配使用 。
7.根据权利要求6所述的连接方法,所述的连接方法还包括: 
1)根据请求中的应用系统的标识,查询闲表,如果有空闲多节点执行器可用,将所确定的多节点执行器对象分配给应用系统用于对数据库的分布式事务操作;否则执行下一步骤; 
2)根据请求中的应用系统的标识,查询忙表,如果有对应多节点执行器,将所确定的多节点执行器对象分配给应用系统用于对数据库的分布式事务操作;否则,建立新的多节点执行器对象,将分布式事务所涉及的分布式数据库连接对象作为一个整体进行封装和缓存。 
CN201210591754.XA 2012-12-29 2012-12-29 一种支持分布式事务的数据库的连接方法 Active CN103064964B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201210591754.XA CN103064964B (zh) 2012-12-29 2012-12-29 一种支持分布式事务的数据库的连接方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201210591754.XA CN103064964B (zh) 2012-12-29 2012-12-29 一种支持分布式事务的数据库的连接方法

Publications (2)

Publication Number Publication Date
CN103064964A true CN103064964A (zh) 2013-04-24
CN103064964B CN103064964B (zh) 2016-04-20

Family

ID=48107594

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201210591754.XA Active CN103064964B (zh) 2012-12-29 2012-12-29 一种支持分布式事务的数据库的连接方法

Country Status (1)

Country Link
CN (1) CN103064964B (zh)

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104572077A (zh) * 2014-12-12 2015-04-29 百度在线网络技术(北京)有限公司 数据库事务的处理方法及业务系统
CN107710203A (zh) * 2015-06-29 2018-02-16 微软技术许可有限责任公司 分布式键/值存储库之上的事务数据库层
CN109388502A (zh) * 2018-09-10 2019-02-26 珠海天燕科技有限公司 一种业务标识分配方法及装置
CN104809247B (zh) * 2015-05-18 2019-03-26 北京京东尚科信息技术有限公司 数据库连接的分配和回收方法
CN111930830A (zh) * 2020-06-22 2020-11-13 心有灵犀科技股份有限公司 一种基于共享数据库的分布式事务数据处理方法及系统
CN114138829A (zh) * 2020-09-03 2022-03-04 金篆信科有限责任公司 共享Prepare Statement的方法、系统和网络设备

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1510575A (zh) * 2002-12-25 2004-07-07 ����ͨѶ�ɷ����޹�˾ 一种数据库连接的高效管理方法
CN1869991A (zh) * 2006-06-30 2006-11-29 南京联创科技股份有限公司 基于动态代理的数据访问对象模式的实现方法
CN101551745A (zh) * 2009-05-13 2009-10-07 山东中创软件工程股份有限公司 大幅度提高工作流引擎性能的方法
CN102306200A (zh) * 2011-09-22 2012-01-04 用友软件股份有限公司 增量数据操作语句的并发应用装置和方法

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1510575A (zh) * 2002-12-25 2004-07-07 ����ͨѶ�ɷ����޹�˾ 一种数据库连接的高效管理方法
CN1869991A (zh) * 2006-06-30 2006-11-29 南京联创科技股份有限公司 基于动态代理的数据访问对象模式的实现方法
CN101551745A (zh) * 2009-05-13 2009-10-07 山东中创软件工程股份有限公司 大幅度提高工作流引擎性能的方法
CN102306200A (zh) * 2011-09-22 2012-01-04 用友软件股份有限公司 增量数据操作语句的并发应用装置和方法

Cited By (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104572077A (zh) * 2014-12-12 2015-04-29 百度在线网络技术(北京)有限公司 数据库事务的处理方法及业务系统
CN104572077B (zh) * 2014-12-12 2018-03-06 百度在线网络技术(北京)有限公司 数据库事务的处理方法及业务系统
CN104809247B (zh) * 2015-05-18 2019-03-26 北京京东尚科信息技术有限公司 数据库连接的分配和回收方法
CN107710203A (zh) * 2015-06-29 2018-02-16 微软技术许可有限责任公司 分布式键/值存储库之上的事务数据库层
US11301457B2 (en) 2015-06-29 2022-04-12 Microsoft Technology Licensing, Llc Transactional database layer above a distributed key/value store
CN109388502A (zh) * 2018-09-10 2019-02-26 珠海天燕科技有限公司 一种业务标识分配方法及装置
CN111930830A (zh) * 2020-06-22 2020-11-13 心有灵犀科技股份有限公司 一种基于共享数据库的分布式事务数据处理方法及系统
CN114138829A (zh) * 2020-09-03 2022-03-04 金篆信科有限责任公司 共享Prepare Statement的方法、系统和网络设备

Also Published As

Publication number Publication date
CN103064964B (zh) 2016-04-20

Similar Documents

Publication Publication Date Title
AU2017218964B2 (en) Cloud-based distributed persistence and cache data model
CN103064964A (zh) 一种支持分布式事务的数据库的连接方法
US9348641B2 (en) System and method for performing a transaction in a massively parallel processing database
US9996427B2 (en) Parallel backup for distributed database system environments
EP3564835A1 (en) Data redistribution method and apparatus, and database cluster
US11928089B2 (en) Data processing method and device for distributed database, storage medium, and electronic device
US9836516B2 (en) Parallel scanners for log based replication
US11068499B2 (en) Method, device, and system for peer-to-peer data replication and method, device, and system for master node switching
US9342572B2 (en) Workflow processing system and method with database system support
JP7549137B2 (ja) トランザクション処理方法、システム、装置、機器、及びプログラム
CN102937964B (zh) 基于分布式系统的智能数据服务方法
CN105808776A (zh) 一种分布式数据库的数据管理系统及方法
US9654582B2 (en) Enhanced shared memory based communication driver for improved performance and scalability
CN103226598A (zh) 访问数据库的方法和装置以及数据库管理系统
CN103838781A (zh) 数据库访问方法及系统
CN102567493A (zh) 数据报表系统及具有动态数据源的报表生成方法
US20240311391A1 (en) K-db database multi-node cluster scheduling method and system, device, and medium
US12072893B2 (en) System and method for hierarchical database operation accelerator
CN109753245B (zh) 一种多磁盘负载均衡异步读写调度方法及装置
CN103838515A (zh) 一种服务器集群访问调度多控制器磁盘阵列的方法及系统
CN103064898A (zh) 事务加锁、解锁方法及装置
CN103365740A (zh) 一种数据冷备方法及装置
WO2024114409A1 (zh) 数据处理方法和数据处理系统
CN115964444B (zh) 一种云原生分布式多租户数据库实现方法及系统
CN116501246A (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
C53 Correction of patent of invention or patent application
CB02 Change of applicant information

Address after: Haitai 300384 in Tianjin Binhai high tech Zone Huayuan Industrial Zone Development six road No. 6 Haitai green industry base J

Applicant after: Tianjin NanKai University General Data Technologies Co., Ltd.

Address before: Haitai 300384 in Tianjin Binhai high tech Zone Huayuan Industrial Zone Development six road No. 6 Haitai green industry base J

Applicant before: Tianjin Nanda General Data Technology Co., Ltd.

COR Change of bibliographic data

Free format text: CORRECT: APPLICANT; FROM: TIANJIN NANDA GENERAL DATA TECHNOLOGY CO., LTD. TO: TIANJIN NANDA CONVENTIONAL DATA TECHNOLOGY CO., LTD.

C14 Grant of patent or utility model
GR01 Patent grant
TR01 Transfer of patent right
TR01 Transfer of patent right

Effective date of registration: 20170621

Address after: 210019, 20, 1, 69 Olympic Sports Avenue, Jianye District, Jiangsu, Nanjing

Patentee after: Jiangsu Huaku Data Technology Co. Ltd.

Address before: Haitai 300384 in Tianjin Binhai high tech Zone Huayuan Industrial Zone Development six road No. 6 Haitai green industry base J

Patentee before: Tianjin NanKai University General Data Technologies Co., Ltd.