CN102609477A - 一种流水号生成器的实现方法 - Google Patents
一种流水号生成器的实现方法 Download PDFInfo
- Publication number
- CN102609477A CN102609477A CN2012100171186A CN201210017118A CN102609477A CN 102609477 A CN102609477 A CN 102609477A CN 2012100171186 A CN2012100171186 A CN 2012100171186A CN 201210017118 A CN201210017118 A CN 201210017118A CN 102609477 A CN102609477 A CN 102609477A
- Authority
- CN
- China
- Prior art keywords
- serial number
- flowing water
- gen
- array
- sequence
- 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
Links
Images
Landscapes
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Abstract
本发明公开一种流水号生成器的实现方法,包括:在物理库SN_GEN_CTL表中配置流水类型及一次性读取的流水量;在物理库中新建SEQUENCE,配合SN_GEN_CTL表产生流水号;初始化流水号生成器,包括连接物理库,创建数组;关联SN_GEN_CTL表和SEQUENCE序列生成流水,并加载到创建的数组中;外部应用按其指定的流水类型从流水号生成器中读取流水号,流水号生成器判断所述数组是否为空,如果为空则自动加载流水号,一次性从物理库读取指定数量的数据加载到所述数组,加载成功后返回流水。本发明直接操作内存,提高了应用程序处理效率,避免了频繁访问物理库读取业务流水;同时应用程序通过流水号生成器提供的getNextId接口获取数据,而不用关心流水号生成器中是否储存有业务流水,实现了业务、数据的分离。
Description
技术领域
本发明涉及数据库领域,更具体地说,涉及一种数据库读取领域,特别是针对在电信系统内部月底批量销帐时频繁读取流水的问题。
背景技术
随着电信运营商不断的发展,业务扩展越来越广,各种新业务层出不穷;随着资费的越来越便宜,用户不断的增长,同时用户的通话量也逐年递增,以及电信集团总部对于一天出帐的要求,电信运营商对于月底销帐的效率要求越来越高,提高月底销帐系统的处理效率就变的迫在眉睫。原有实现方案需要频繁的访问物理库或者内存库,效率不高。
因此,需要一种流水号生成器,其能够一次性从物理库读取一组流水号,避免了频繁的操作物理库,应用直接操作内存,减少了和物理库交互的次数,提高了销帐入库的处理效率。
发明内容
本发明所要解决的技术问题是提供一种自动产生流水号的方法,实现和物理库进行较少的交互次数,并使流水号产生和业务进行分离。
本发明解决上述技术问题的技术方案如下:一种流水号生成器的实现方法,包括步骤如下:
步骤1:在物理库SN_GEN_CTL表中配置流水类型及一次性读取的流水量;
步骤2:在物理库中新建SEQUENCE,配合SN_GEN_CTL表产生流水号;
步骤3:初始化流水号生成器,包括连接物理库,创建数组;
步骤4:把SN_GEN_CTL表和SEQUENCE序列进行关联生成流水,并加载到创建的数组中;
步骤5:外部应用按其指定的流水类型从流水号生成器提供的接口中读取流水号,流水号生成器判断所述数组是否为空,如果为空则自动加载流水号,一次性从物理库读取指定数量的数据加载到所述数组,加载成功后返回流水。
进一步,SN_GEN_CTL表中含有2个字段:OPER_ID、TYPE,TYPE为流水类型,OPER_ID作为主键主要起到一次性加载流水号数据量的作用。
进一步,SN_GEN_CTL表和SEQUENCE序列建在内存库。
进一步,步骤3中创建 的数组为动态数组,其能够随着流水量的增加动态扩展。
进一步,步骤4中SN_GEN_CTL表和SEQUENCE序列的关联方式为:SELECT SEQUENCE.NEXTVAL FROM SN_GEN_CTL WHERE TYPE = N,其中N表示某种流水类型。
进一步,流水号生成器中储存多种类型流水,取流水需要指定流水类型。
进一步,流水号生成器中加载的流水通过配置实现。
本发明的有益效果是:应用程序不用频繁访问物理库读取业务流水,而是直接操作内存,提高了应用程序处理效率。流水号生成器对外提供getNextId一个接口,应用程序不关心流水号生成器中是否储存有业务流水,只管获取数据,实现了业务、数据的分离。
附图说明
图1为本发明流水号生成器的基本流程图。
具体实施方式
以下结合附图对本发明的原理和特征进行描述,所举实例只用于解释本发明,并非用于限定本发明的范围。
本发明的流水号生成器的实现方法,包括如下步骤:
步骤1:在物理库SN_GEN_CTL表中配置流水类型及一次性读取的流水量。SN_GEN_CTL表中含有2个字段:OPER_ID、TYPE,TYPE为流水类型,OPER_ID作为主键主要起到一次性加载流水号数据量的作用
步骤2:在物理库中新建SEQUENCE,配合SN_GEN_CTL表产生流水号。可以将SN_GEN_CTL表和SEQUENCE序列建在内存库中,从而避免了流水号生成器和物理硬件的交互。
步骤3:初始化流水号生成器。主要包括连接物理库,创建数组,其中创建数组时,可以创建动态数组,使其能够随着流水量的增加动态扩展。
步骤4:把SN_GEN_CTL表和SEQUENCE序列进行关联生成流水,并加载到创建的数组中。具体地,SN_GEN_CTL表和SEQUENCE序列关联方式为:SELECT SEQUENCE.NEXTVAL FROM SN_GEN_CTL WHERE TYPE = N,N表示某种流水类型。
步骤5:外部应用按其指定的流水类型从流水号生成器中读取流水号,流水号生成器判断所述数组是否为空,如果为空则自动加载流水号,一次性从物理库读取指定数量的数据加载到所述数组,加载成功后返回流水。流水号生成器中储存多种类型流水,取流水需要指定流水类型;流水号生成器自动加载流水,对外不透明,外部只取不用考虑生成器中流水是否为空。流水号生成器中加载的流水可以通过配置实现,这样可以流水生成器的应用将更加广泛,不局限于月底入库系统。
以上所述仅为本发明的较佳实施例,并不用以限制本发明,凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
Claims (7)
1.一种流水号生成器的实现方法,包括:
步骤1:在物理库SN_GEN_CTL表中配置流水类型及一次性读取的流水量;
步骤2:在物理库中新建SEQUENCE,以配合SN_GEN_CTL表产生流水号;
步骤3:初始化流水号生成器,包括连接物理库,创建数组;
步骤4:把SN_GEN_CTL表和SEQUENCE序列进行关联生成流水,并加载到创建的数组中;
步骤5:外部应用按其指定的流水类型从流水号生成器提供的接口中读取流水号,流水号生成器判断所述数组是否为空,如果为空则自动加载流水号,一次性从物理库读取指定数量的数据加载到所述数组,加载成功后返回流水。
2.如权利要求1所述的一种流水号生成器的实现方法,其中SN_GEN_CTL表中含有2个字段:OPER_ID、TYPE,TYPE为流水类型,OPER_ID作为主键主要起到一次性加载流水号数据量的作用。
3.如权利要求1所述的一种流水号生成器的实现方法,SN_GEN_CTL表和SEQUENCE序列建在内存库。
4.如权利要求1所述的一种流水号生成器的实现方法,步骤3中创建 的数组为动态数组,其能够随着流水量的增加动态扩展。
5.如权利要求2所述的一种流水号生成器的实现方法,其中步骤4中SN_GEN_CTL表和SEQUENCE序列的关联方式为:SELECT SEQUENCE.NEXTVAL FROM SN_GEN_CTL WHERE TYPE = N,其中N表示某种流水类型。
6.如权利要求1所述的一种流水号生成器的实现方法,其中流水号生成器中储存多种类型流水,取流水需要指定流水类型。
7.如权利要求1所述的一种流水号生成器的实现方法,其中流水号生成器中加载的流水通过配置实现。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201210017118.6A CN102609477B (zh) | 2012-01-19 | 2012-01-19 | 一种流水号生成器的实现方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201210017118.6A CN102609477B (zh) | 2012-01-19 | 2012-01-19 | 一种流水号生成器的实现方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN102609477A true CN102609477A (zh) | 2012-07-25 |
CN102609477B CN102609477B (zh) | 2014-10-22 |
Family
ID=46526849
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201210017118.6A Active CN102609477B (zh) | 2012-01-19 | 2012-01-19 | 一种流水号生成器的实现方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN102609477B (zh) |
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105183794A (zh) * | 2015-08-24 | 2015-12-23 | 用友网络科技股份有限公司 | 业务流水号生成装置和方法 |
CN106844288A (zh) * | 2015-12-07 | 2017-06-13 | 阿里巴巴集团控股有限公司 | 一种随机字符串生成方法及装置 |
CN107678877A (zh) * | 2017-10-09 | 2018-02-09 | 深圳市沃特沃德股份有限公司 | 操作响应方法和装置 |
CN109828990A (zh) * | 2019-02-02 | 2019-05-31 | 中国银行股份有限公司 | 一种交易流水号生成方法、服务器、设备及介质 |
CN112559558A (zh) * | 2020-12-07 | 2021-03-26 | 北京理房通支付科技有限公司 | 一种流水号生成方法和装置、计算设备和存储介质 |
CN113538089A (zh) * | 2021-06-30 | 2021-10-22 | 北京思特奇信息技术股份有限公司 | 一种基于crm系统新增订单的校正方法及系统、电子设备、存储介质 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1527229A (zh) * | 2003-03-05 | 2004-09-08 | 珠海金山软件股份有限公司 | 针对团体入住的酒店管理系统 |
CN101163265A (zh) * | 2007-11-20 | 2008-04-16 | 中兴通讯股份有限公司 | 基于分布式数据库的彩信日志查询方法与系统 |
CN101976240A (zh) * | 2010-09-21 | 2011-02-16 | 用友软件股份有限公司 | 表单编号生成方法和系统 |
-
2012
- 2012-01-19 CN CN201210017118.6A patent/CN102609477B/zh active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1527229A (zh) * | 2003-03-05 | 2004-09-08 | 珠海金山软件股份有限公司 | 针对团体入住的酒店管理系统 |
CN101163265A (zh) * | 2007-11-20 | 2008-04-16 | 中兴通讯股份有限公司 | 基于分布式数据库的彩信日志查询方法与系统 |
CN101976240A (zh) * | 2010-09-21 | 2011-02-16 | 用友软件股份有限公司 | 表单编号生成方法和系统 |
Cited By (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105183794A (zh) * | 2015-08-24 | 2015-12-23 | 用友网络科技股份有限公司 | 业务流水号生成装置和方法 |
CN105183794B (zh) * | 2015-08-24 | 2018-12-14 | 用友网络科技股份有限公司 | 业务流水号生成装置和方法 |
CN106844288A (zh) * | 2015-12-07 | 2017-06-13 | 阿里巴巴集团控股有限公司 | 一种随机字符串生成方法及装置 |
CN107678877A (zh) * | 2017-10-09 | 2018-02-09 | 深圳市沃特沃德股份有限公司 | 操作响应方法和装置 |
WO2019071721A1 (zh) * | 2017-10-09 | 2019-04-18 | 深圳市沃特沃德股份有限公司 | 操作响应方法、装置和车载系统 |
CN109828990A (zh) * | 2019-02-02 | 2019-05-31 | 中国银行股份有限公司 | 一种交易流水号生成方法、服务器、设备及介质 |
CN112559558A (zh) * | 2020-12-07 | 2021-03-26 | 北京理房通支付科技有限公司 | 一种流水号生成方法和装置、计算设备和存储介质 |
CN112559558B (zh) * | 2020-12-07 | 2024-04-09 | 北京理房通支付科技有限公司 | 一种流水号生成方法和装置、计算设备和存储介质 |
CN113538089A (zh) * | 2021-06-30 | 2021-10-22 | 北京思特奇信息技术股份有限公司 | 一种基于crm系统新增订单的校正方法及系统、电子设备、存储介质 |
Also Published As
Publication number | Publication date |
---|---|
CN102609477B (zh) | 2014-10-22 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN102609477B (zh) | 一种流水号生成器的实现方法 | |
CN102880709B (zh) | 数据仓库管理系统和数据仓库管理方法 | |
CN103729210B (zh) | 一种实现一个刷机包支持多种制式智能终端的方法及装置 | |
CN101923434B (zh) | 一种应用图标的排版方法、系统移动终端 | |
CN102567413B (zh) | 数据过滤系统和方法 | |
CN102857605A (zh) | 一种联系人分组方法及装置 | |
CN101958958A (zh) | 一种回复信息的方法和终端 | |
CN101345941A (zh) | 一种移动终端及其信息呈现方法及系统 | |
CN102982130A (zh) | 一种nosql与rdbms的数据库同步方法和系统 | |
CN101582092A (zh) | 一种实现保存内存中的数据的方法及装置 | |
CN105045603A (zh) | 一种构建有限状态机模型框架的方法、装置及电子装置 | |
CN104778175A (zh) | 一种实现异构数据库数据同步的方法及系统 | |
CN101876984A (zh) | 一种数据管理系统及其数据关联查询方法和装置 | |
CN101924820A (zh) | 一种软件下载方法、系统及移动终端 | |
CN102129425A (zh) | 数据仓库中大对象集合表的访问方法及装置 | |
CN107656729A (zh) | 列表视图的更新装置、方法及计算机可读存储介质 | |
CN101916399A (zh) | 一种收件人的添加方法及系统 | |
CN102708197A (zh) | 一种多媒体文件管理方法及装置 | |
CN102456033A (zh) | 一种页面通用查询的方法、系统及终端 | |
CN103235811A (zh) | 一种数据存储方法及装置 | |
CN107402875A (zh) | 一种日志记录方法、终端及计算机可读存储介质 | |
CN103813012A (zh) | 一种手持设备备忘录提醒方法及装置 | |
CN109903163A (zh) | 一种区块链的出块奖励方法、装置和电子设备 | |
CN102054027A (zh) | 一种移动终端文件的存入及搜索方法、系统及移动终端 | |
CN101847104A (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: 100085 Haidian District, Zhongguancun, South Street, No. 6,, building information, floor, No. 16 Applicant after: SI-TECH Information Technology Ltd. Address before: 100085 Haidian District, Zhongguancun, South Street, No. 6,, building information, floor, No. 16 Applicant before: Beijing Digital China SI-TECH Information Technology Co., Ltd. |
|
COR | Change of bibliographic data |
Free format text: CORRECT: APPLICANT; FROM: BEIJING DIGITAL CHINA SI-TECH INFORMATION TECHNOLOGY LTD. TO: BEIJING SI-TECH INFORMATION TECHNOLOGY LTD. |
|
C14 | Grant of patent or utility model | ||
GR01 | Patent grant |