CN106649328A - 分时租赁系统数据访问层接口构建方法 - Google Patents

分时租赁系统数据访问层接口构建方法 Download PDF

Info

Publication number
CN106649328A
CN106649328A CN201510721697.6A CN201510721697A CN106649328A CN 106649328 A CN106649328 A CN 106649328A CN 201510721697 A CN201510721697 A CN 201510721697A CN 106649328 A CN106649328 A CN 106649328A
Authority
CN
China
Prior art keywords
database
access layer
layer interface
data access
system data
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.)
Pending
Application number
CN201510721697.6A
Other languages
English (en)
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.)
Ningbo Xuanyuexing Electric Automobile Service Co Ltd
Original Assignee
Ningbo Xuanyuexing Electric Automobile Service 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 Ningbo Xuanyuexing Electric Automobile Service Co Ltd filed Critical Ningbo Xuanyuexing Electric Automobile Service Co Ltd
Priority to CN201510721697.6A priority Critical patent/CN106649328A/zh
Publication of CN106649328A publication Critical patent/CN106649328A/zh
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/27Replication, distribution or synchronisation of data between databases or within a distributed database system; Distributed database system architectures therefor
    • G06F16/278Data partitioning, e.g. horizontal or vertical partitioning
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/24Querying
    • G06F16/245Query processing
    • G06F16/2458Special types of queries, e.g. statistical queries, fuzzy queries or distributed queries
    • G06F16/2471Distributed queries
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5083Techniques for rebalancing the load in a distributed system

Abstract

本发明公开了一种分时租赁系统数据访问层接口构建方法,其特征在于,包括如下步骤:步骤一:在认证库中保存数据库配置;步骤二:对数据库进行拆分,构成多个子数据库,将数据分配到各个子数据库中;步骤三:每一个节点都拥有自己的内存和存储,将数据库中的数据分布到多台机器中,查询或插入时按照条件查询或插入对应的分区。本发明充分利用每一台服务器的资源并将客户端负载分发到不同服务器上。同时实现分布存储,可以降低单台机器的负载压力。

Description

分时租赁系统数据访问层接口构建方法
技术领域
本发明涉及一种接口构建方法,具体涉及一种分时租赁系统数据访问层接口构建方法,本发明属于车辆租赁领域。
背景技术
分时租赁系统在国内未有成熟产品,目前的租赁系统一般采用记账式方案,运营过程中每单租赁需要人工参与,无法实现自助的租赁模式。申请人检索到如下对比文件。
对比文件1:台湾专利公开号:TW M482126U 名称:电动车租赁站,提供一种对电动车、钥匙和电池进行管理的电动车租赁站,特征在于该专利设有身份识别装置,通过该身份识别装置对电池进行更换,该专利只是对电池进行更换,不适用于整车进行更换。
对比文件2:美国专利公开号:US 2012/0280653 A1 名称:电动汽车充电站的管理系统和方法(翻译),提供一种电动汽车充电站的管理系统和方法,特征在于提供车辆检测器,对车辆的状况进行检测,并将检测的信息反馈给检测系统已经根据此信息对汽车进行充电等。
对比文件3:中国专利公开号:CN104282088A 名称:一种基于充电桩的电动汽车租赁管理系统及其租赁管理方法,提供一种基于充电桩的电动汽车租赁管理系统,其主要特征在于结合了智能终端或电脑,相关人员可以对租车情况等进行快速方便的查询。
对比文件4:中国专利公开号:CN103854374A 名称:基于周期结算模式的电动交通工具用电计费方法及装置,提供一种基于周期结算模式的电动交通工具用电计费方法及装置,特征在于用采用电卡,电卡里设有账户的信息以及费用结算方式。
对比文件5:美国专利公开号:USD730822 S 名称:带有状态指示的电动汽车充电站,以及导光组件和方法(翻译),提供一种带有状态指示的电动汽车充电站,特征在于带有导光组件用于显示各种状态,
对比文件6:美国专利公开号:US2015108947 (A1) 名称:用于汽车和充电站之间通信方法和系统,提供一种用于汽车和充电站之间通信方法和系统,特征至于电动汽车与充电站充电过程中的充电电缆连接到车辆和充电站终端终端之间可锁定机械耦合。
对比文件7:加拿大专利公开号:CA2890753 (A1) 名称:使电动汽车快速充电的充电站的充电系统和方法(翻译),提供一种使电动汽车快速充电的充电站的充电系统和方法,特征在于提供一个充电臂,给予充电的车辆进行一个准确的定位。
对比文件8:中国专利公开号:CN103944201A 名称:一种电动汽车定时充电桩,提供一种电动汽车定时充电桩,特征在于设有时控开关对电动汽车进行定时充电设置。
根据对比文件可知,分时租赁系统需要把会员App、门户、Web后台、车、桩、服务器等部件或设备进行互联,使系统高效、稳定、安全地运行,现有技术中,在具有多台客户端情况下,客户端负载容易不均衡分发到不同服务器上,找出某台服务器上的客户端负载过大。此外,随着客户端应用程序负载的增加,难以将新的服务器用于实现均衡负载。此外,后台数据一般是存储在一个数据库中,对数据库的更改和访问,会造成运行效率低下。每次访问数据库面对的是单台服务器,造成单台机器的负载压力过大。
发明内容
为解决现有技术的不足,本发明的目的在于提供一种分时租赁系统数据访问层接口构建方法,以解决现有技术运营过程中服务器上的客户端负载过大、每次访问数据库面对的是单台服务器,造成单台机器的负载压力过大的技术问题。
为了实现上述目标,本发明采用如下的技术方案:
分时租赁系统数据访问层接口构建方法,其特征在于,包括如下步骤:
步骤一:在认证库中保存数据库配置;
步骤二:对数据库进行拆分,构成多个子数据库,将数据分配到各个子数据库中;
步骤三:每一个节点都拥有自己的内存和存储,将数据库中的数据分布到多台机器中,查询或插入时按照条件查询或插入对应的分区。
前述的分时租赁系统数据访问层接口构建方法,其特征在于,所述步骤一包括:建立一个数据库,这个数据库单独保存用户名到数据库的映射关系,每次访问数据库的时候都要先查询一次这个数据库,以得到具体的DB信息,然后才能进行我们需要的查询操作。
前述的分时租赁系统数据访问层接口构建方法,其特征在于,所述步骤二中,采用垂直拆分方式对数据库进行拆分。
前述的分时租赁系统数据访问层接口构建方法,其特征在于,所述垂直拆分方式指:根据业务模块划分将数据库拆分成多个子数据库,每个子数据库存储对应业务模块的数据。
前述的分时租赁系统数据访问层接口构建方法,其特征在于,所述步骤二中,采用hash取模分方式对数据库进行拆分。
前述的分时租赁系统数据访问层接口构建方法,其特征在于,所述hash取模分方式指:对用户名计算hash值,然后用一个特定的数字,对用户名的hash值进行取模运算,根据每次运算结果将数据分配到子数据库中。
前述的分时租赁系统数据访问层接口构建方法,其特征在于,包括如下步骤:
步骤四:将对数据库的负载分布到集群中的多个节点上,在集群中的每一个节点都可以对外提供服务。
本发明的有益之处在于:本发明充分利用每一台服务器的资源并将客户端负载分发到不同服务器上。同时实现分布存储,可以降低单台机器的负载压力。
附图说明
图1是本发明分时租赁系统数据访问层接口构建方法的流程示意图;
图2是本发明分时租赁系统数据访问层接口的在系统中的结构示意图。
具体实施方式
以下结合附图和具体实施例对本发明作具体的介绍。
参照图1和图2所示,本发明分时租赁系统数据访问层接口构建方法,包括如下步骤:
步骤一:在认证库中保存数据库配置。这是指,建立一个DB(即数据库),这个DB单独保存user_id(即用户名)到DB的映射关系,每次访问数据库的时候都要先查询一次这个数据库,以得到具体的DB信息,然后才能进行我们需要的查询操作。
步骤二:对数据库进行拆分,构成多个子数据库,将数据分配到各个子数据库中。
本实施例提供两种拆分方式。采用垂直拆分方式对数据库进行拆分和采用hash取模分方式对数据库进行拆分。
垂直拆分方式指:根据业务模块划分将数据库拆分成多个子数据库,每个子数据库存储对应业务模块的数据。使用垂直拆分,主要要看应用类型是否合适这种拆分方式,如分时租赁系统可以分为,基础资料系统,规则设置系统,会员管理系统。业务系统比较明了,垂直拆分能很好的起到分散数据库压力的作用。业务模块不明晰,耦合(表关联)度比较高的系统不适合使用这种拆分方式。但是垂直拆分方式并不能彻底解决所有压力问题,例如:分时租赁系统会有一个5000w的消费记录表(T_ConsumeRecord),操作起来订单库的压力仍然很大,如我们需要在这个表中增加(insert)一条新的数据,insert完毕后,数据库会针对这张表重新建立索引,5000w行数据建立索引的系统开销还是不容忽视的,反过来,假如我们将这个表分成100个table呢,从table_001一直到table_100,5000w行数据平均下来,每个子表里边就只有50万行数据,这时候我们向一张只有50w行数据的table中insert数据后建立索引的时间就会呈数量级的下降,极大了提高了DB的运行时效率,提高了DB的并发量。
hash取模分方式指:对user_id进行hash(或者如果user_id是数值型的话直接使用user_id的值也可),然后用一个特定的数字(即为需要切分的子数据库的数量值),比如应用中需要将一个数据库切分成4个数据库的话,我们就用4这个特定的数字对user_id的hash值进行取模运算,也就是user_id%4,这样的话每次运算就有四种可能:结果为1的时候对应DB1;结果为2的时候对应DB2;结果为3的时候对应DB3;结果为0的时候对应DB4,这样一来就非常均匀的将数据分配到4个DB中。
步骤三:每一个节点都拥有自己的内存和存储,将数据库中的数据分布到多台机器中,查询或插入时按照条件查询或插入对应的分区。
步骤四:允许负载均衡。所谓负载均衡就是将对数据库的负载分布到集群中的多个节点上,在集群中的每一个节点都可以对外提供服务,从而达到更高的吞吐量,更好的资源利用率和更低的响应时间。前端通过代理进行调度。
本设计以便充分利用每一台服务器的资源并将客户端负载分发到不同服务器上,随着应用程序负载的增加,只需要将新的服务器添加到集群即可。
可见,本发明将存放在同一个数据库中的数据分散存放到多个数据库上,实现分布存储,通过路由规则路由访问特定的数据库,这样一来每次访问面对的就不是单台服务器了,而是N台服务器,这样就可以降低单台机器的负载压力。
由此,本发明中服务器可部分迁移。数据在数据库中分布均匀。配置灵活性强,具有一对一关系。
本发明目的在于充分利用每一台服务器的资源并将客户端负载分发到不同服务器上,随着应用程序负载的增加,只需要将新的服务器添加到集群即可。通过某种特定的条件,将存放在同一个数据库中的数据分散存放到多个数据库上,实现分布存储,通过路由规则路由访问特定的数据库,这样一来每次访问面对的就不是单台服务器了,而是N台服务器,这样就可以降低单台机器的负载压力。
以上显示和描述了本发明的基本原理、主要特征和优点。本行业的技术人员应该了解,上述实施例不以任何形式限制本发明,凡采用等同替换或等效变换的方式所获得的技术方案,均落在本发明的保护范围内。

Claims (7)

1.分时租赁系统数据访问层接口构建方法,其特征在于,包括如下步骤:
步骤一:在认证库中保存数据库配置;
步骤二:对数据库进行拆分,构成多个子数据库,将数据分配到各个子数据库中;
步骤三:每一个节点都拥有自己的内存和存储,将数据库中的数据分布到多台机器中,查询或插入时按照条件查询或插入对应的分区。
2.根据权利要求1所述的分时租赁系统数据访问层接口构建方法,其特征在于,所述步骤一包括:建立一个数据库,这个数据库单独保存用户名到数据库的映射关系,每次访问数据库的时候都要先查询一次这个数据库,以得到具体的DB信息,然后才能进行我们需要的查询操作。
3.根据权利要求2所述的分时租赁系统数据访问层接口构建方法,其特征在于,所述步骤二中,采用垂直拆分方式对数据库进行拆分。
4.根据权利要求3所述的分时租赁系统数据访问层接口构建方法,其特征在于,所述垂直拆分方式指:根据业务模块划分将数据库拆分成多个子数据库,每个子数据库存储对应业务模块的数据。
5.根据权利要求2所述的分时租赁系统数据访问层接口构建方法,其特征在于,所述步骤二中,采用hash取模分方式对数据库进行拆分。
6.根据权利要求5所述的分时租赁系统数据访问层接口构建方法,其特征在于,所述hash取模分方式指:对用户名计算hash值,然后用一个特定的数字,对用户名的hash值进行取模运算,根据每次运算结果将数据分配到子数据库中。
7.根据权利要求1至6任一项所述的分时租赁系统数据访问层接口构建方法,其特征在于,包括如下步骤:
步骤四:将对数据库的负载分布到集群中的多个节点上,在集群中的每一个节点都可以对外提供服务。
CN201510721697.6A 2015-10-30 2015-10-30 分时租赁系统数据访问层接口构建方法 Pending CN106649328A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201510721697.6A CN106649328A (zh) 2015-10-30 2015-10-30 分时租赁系统数据访问层接口构建方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201510721697.6A CN106649328A (zh) 2015-10-30 2015-10-30 分时租赁系统数据访问层接口构建方法

Publications (1)

Publication Number Publication Date
CN106649328A true CN106649328A (zh) 2017-05-10

Family

ID=58830434

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201510721697.6A Pending CN106649328A (zh) 2015-10-30 2015-10-30 分时租赁系统数据访问层接口构建方法

Country Status (1)

Country Link
CN (1) CN106649328A (zh)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108595490A (zh) * 2018-03-15 2018-09-28 北京雷石天地电子技术有限公司 一种数据库检索机制的构建方法及系统
CN111090525A (zh) * 2019-12-18 2020-05-01 紫光云(南京)数字技术有限公司 一种Redis实现分布式锁的高并发优化的处理方法
CN112565381A (zh) * 2020-11-30 2021-03-26 杭州迪普科技股份有限公司 一种数据包转发方法、装置及设备

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104408174A (zh) * 2014-12-12 2015-03-11 用友软件股份有限公司 数据库路由装置和方法

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104408174A (zh) * 2014-12-12 2015-03-11 用友软件股份有限公司 数据库路由装置和方法

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
冰云: "数据库水平切分的实现原理解析", 《博客园:HTTPS://WWW.CNBLOGS.COM/BINGYUN84/P/4311574.HTML》 *
邓从健: "数据库集群技术在电信增值领域的应用", 《科技风》 *

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108595490A (zh) * 2018-03-15 2018-09-28 北京雷石天地电子技术有限公司 一种数据库检索机制的构建方法及系统
CN111090525A (zh) * 2019-12-18 2020-05-01 紫光云(南京)数字技术有限公司 一种Redis实现分布式锁的高并发优化的处理方法
CN111090525B (zh) * 2019-12-18 2022-09-23 紫光云(南京)数字技术有限公司 一种Redis实现分布式锁的高并发优化的处理方法
CN112565381A (zh) * 2020-11-30 2021-03-26 杭州迪普科技股份有限公司 一种数据包转发方法、装置及设备
CN112565381B (zh) * 2020-11-30 2022-05-31 杭州迪普科技股份有限公司 一种数据包转发方法、装置及设备

Similar Documents

Publication Publication Date Title
CN103218398B (zh) 智能变电站scl文件差异性比较方法
CN103365929B (zh) 一种数据库连接的管理方法及系统
CN103473334A (zh) 数据存储、查询方法及系统
CN102929989B (zh) 一种地理空间数据在云计算平台上的负载均衡方法
CN105512200A (zh) 一种分布式数据库处理的方法和设备
CN101741907A (zh) 一种均衡服务器负载的方法、系统和主服务器
CN105354255A (zh) 数据查询方法和装置
CN103064890A (zh) 一种gps海量数据处理方法
CN106815326A (zh) 一种检测无主键数据表一致性的系统及方法
CN106649328A (zh) 分时租赁系统数据访问层接口构建方法
CN110362549A (zh) 日志存储检索方法、电子装置及计算机设备
CN106528641B (zh) 一种数据存储方法、装置及通信网关机
CN103246549B (zh) 一种数据转存的方法及系统
CN104408159A (zh) 一种数据关联、加载、查询方法及装置
CN107493351A (zh) 一种客户端访问存储系统的负载均衡的方法及装置
CN106202416A (zh) 列表数据写方法和装置、列表数据读取方法和装置
CN104268298A (zh) 一种创建数据库索引及其查询的方法
CN106933891A (zh) 访问分布式数据库的方法和分布式数据服务的装置
CN107070645A (zh) 比较数据表的数据的方法和系统
CN104794130B (zh) 一种表间关联查询方法和装置
CN103077208A (zh) 统一资源定位符匹配处理方法及装置
CN106415534A (zh) 一种分布式数据库中关联表分区的方法和设备
CN107256132A (zh) 一种基于性能测试的异构Redis集群存储分配方法
CN104636368A (zh) 数据检索方法、装置及服务器
CN105138638A (zh) 一种基于应用层的数据库分布方法

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
RJ01 Rejection of invention patent application after publication
RJ01 Rejection of invention patent application after publication

Application publication date: 20170510