CN102790683A - 一种实时行情数据处理方法、服务器及系统 - Google Patents
一种实时行情数据处理方法、服务器及系统 Download PDFInfo
- Publication number
- CN102790683A CN102790683A CN2011101265167A CN201110126516A CN102790683A CN 102790683 A CN102790683 A CN 102790683A CN 2011101265167 A CN2011101265167 A CN 2011101265167A CN 201110126516 A CN201110126516 A CN 201110126516A CN 102790683 A CN102790683 A CN 102790683A
- Authority
- CN
- China
- Prior art keywords
- server
- present quotation
- data
- quotation data
- data processing
- 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
Links
Images
Landscapes
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明涉及一种实时行情数据处理方法、服务器及系统,属于数据处理技术领域。本发明所述服务器实时地抓取实时行情数据;然后将抓取的实时行情数据按照设定的存储结构和排序方式缓存到服务器的内存中;再根据客户端设置的参数,服务器将内存中符合参数条件的实时行情数据推送到客户端。本发明很好地改善了实时行情数据的访问与存储延迟,更好地符合当前各种在线行情提供系统对数据显示和保存速度的要求。
Description
技术领域
本发明涉及一种数据处理方法、服务器及系统,尤其是涉及一种实时行情数据处理方法、服务器及系统。
背景技术
实时行情数据如股票,期货,基金等是重要的信息资源,将信息准确及时地显示给用户是现在各种实时行情系统极其重要的任务。但是,随着实时行情数据来源的多样化,数据量越来越大,现有的实时行情系统利用传统的基于文件或者基于数据库的存储访问方式由于没有充分利用内存的效率,因此存在着很大的数据延迟,很难满足用户的需求。
发明内容
针对现有技术中存在的缺陷,本发明要解决的技术问题是提供一种实时行情数据处理方法、服务器及系统,该方法、服务器及系统能够很好地改善实时行情数据的访问与存储延迟,更好地符合当前各种在线行情提供系统对数据显示和保存速度的要求。
为解决上述技术问题,本发明采用的技术方案如下:
一种实时行情数据处理方法,包括以下步骤:
(1)服务器实时地抓取实时行情数据;
(2)将抓取的实时行情数据按照设定的存储结构和排序方式缓存到服务器的内存中;
(3)根据客户端设置的参数,服务器将内存中符合参数条件的实时行情数据推送到客户端。
一种实时行情数据处理服务器,包括用于实时地抓取实时行情数据的抓取装置;用于将抓取的实时行情数据按照设定的存储结构和排序方式缓存到内存中的缓存装置;用于根据客户端设置的参数将内存中符合参数条件的实时行情数据推送到客户端的推送装置。
一种实时行情数据处理系统,包括上述服务器和通过网络与所述服务器连接的若干客户端;所述客户端用于显示所述服务器推送的数据。
本发明所述方法、服务器及系统,通过将实时行情数据按照设定的存储结构和排序方式缓存到服务器内存的方式,充分发挥了内存的效率优势,大大提高了客户端从服务器获取实时行情数据的效率,很好地改善了实时行情数据的访问与存储延迟,满足了当前各种在线行情提供系统对数据显示和保存的速度要求。
附图说明
图1是具体实施方式中实时行情数据处理系统的结构框图;
图2是具体实施方式中实时行情数据处理服务器的结构框图;
图3是具体实施方式中实时行情数据处理方法的流程图;
图4是具体实施方式中服务器内存清理方法的流程图。
具体实施方式
下面结合具体实施方式和附图对本发明进行详细描述。
如图1所示,本实施方式中实时行情数据处理系统包括服务器1和通过网络与服务器1连接的若干客户端2,服务器1和客户端2为B/S(浏览器/服务器)结构或者C/S(客户/服务器)结构。
如图2所示,服务器1包括抓取装置11、缓存装置12、推送装置13、清理装置14和落盘装置15。
抓取装置11用于实时地抓取实时行情数据。缓存装置12用于将抓取的实时行情数据按照设定的存储结构和排序方式缓存到内存中。推送装置13用于根据客户端2设置的参数将内存中符合参数条件的实时行情数据推送到客户端2。清理装置14用于清理服务器内存中缓存的数据。落盘装置15用于将服务器内存中的实时行情数据按照预先设定的落盘时间和落盘间隔取出并存储到文件或数据库中。
客户端2用于显示服务器1推送的数据。
如图3所示,采用图1和图2所示系统对实时行情数据进行处理的方法包括以下步骤:
(1)抓取装置11实时地抓取实时行情数据。
服务器1的抓取装置11根据需要实时的从各种交易渠道获得正式发布的行情数据。抓取的方式可以根据配置文件进行相应的配置,如从交易端远程的ftp上抓取数据,从交易所对外开放的Socket服务器抓取数据,还可以从交易所提供的web网页上抓取数据等。抓取数据时可以根据数据的具体格式进行多线程抓取,并且采用事务性质方式,即同一批数据按事务性质由多线程顺序存入相应的存储单元,多个线程都成功存入后才算抓取成功。采用这种方式能够很好地协调多线程之间数据不一致的情况,克服了传统的按顺序抓取数据的时间延迟问题。
(2)缓存装置12将抓取的实时行情数据按照设定的存储结构和排序方式缓存到服务器的内存中。
定义实时行情数据在内存中的存储结构以便于存储,如二叉树、堆栈和队列等结构。在数据存储结构的选取时,可以根据配置信息选择数据在内存中的存储结构,也可以根据时间的业务情况选择存储结构。一般需要快速插入和检索的数据选择二叉树的存储结构,需要后进先出或有前置条件的数据选择堆栈的存储结构,需要按顺序获取的数据选择队列的存储结构,这样可以有效地加快数据的存储、访问和删除的时间。
定义实时行情数据的排序方式以便于数据检索,包括单重排序和多重排序。单重排序包括按时间排序,按优先级排序,按成交量排序,按权重排序,按市值排序等方式。一般行情数据以时间排序优先,但是也可以根据具体应用情况选择适合的排序方式。多重排序可以根据多个条件进行对等排序、主次排序和组合排序等。所述对等排序是指各个数据项按照内存中的存储顺序排序。所述主次排序是指按照给定条件(如:发布时间,数据优先级,产品代码等)设定数据的优先级,再按照优先级顺序进行排序。所述组合排序是指按照数据项各个字段(如产品代码、成交量、成交金额等)的大小进行“与”或“或”的组合进行排序。
(3)推送装置13根据客户端2配置的参数,将服务器1内存中符合参数条件的实时行情数据推送到客户端。
客户端配置的参数很灵活,如可以根据时间选择数据,也可以根据行情的产品代码选择数据,还可以根据成交量选择行情数据,还可以根据多种情况组合选择行情数据等等。
此外,上述还包括内存数据的实时清理过程,清理装置14按照条件对数据进行定时清理以免内存溢出。图4为内存中实时行情数据的定时清理过程的流程图,如图4所示,该过程包括以下步骤:
1)定时启动内存数据清理线程;
用户在对实时行情数据进行处理时,可以根据需要设定数据定时清理线程,以便清理不需要的数据,减少内存的浪费。
2)依次获取内存中的实时行情数据;
3)对获取的每一个实时行情数据,判断该实时行情数据是否符合设定的清理规则,如果符合,则进行清理;否则,不进行清理。
在进行数据清理时,用户可以根据需要设定数据的清理规则。例如:设置对成交时间超过一定时间的数据进行清理,或者对成交量为0的数据进行清理,或者产品已停止交易的数据进行清理等。及时地按照清理条件对数据进行定时清理,以免内存溢出。
上述方法还包括由落盘装置15对数据进行落盘的步骤,所述落盘是指将实时行情数据按照预先设定的落盘时间和落盘间隔从内存中取出并存储到文件或数据库中做永久的保存,以便以后查看历史数据和系统恢复。可以为服务器内存中每个实时行情数据分别指定落盘时间和落盘间隔,或者为服务器内存中所有实时行情数据统一指定集体落盘时间和落盘间隔。
显然,本领域的技术人员可以对本发明进行各种改动和变型而不脱离本发明的精神和范围。这样,倘若本发明的这些修改和变型属于本发明权利要求及其同等技术的范围之内,则本发明也意图包含这些改动和变型在内。
Claims (15)
1.一种实时行情数据处理方法,包括以下步骤:
(1)服务器实时地抓取实时行情数据;
(2)将抓取的实时行情数据按照设定的存储结构和排序方式缓存到服务器的内存中;
(3)根据客户端设置的参数,服务器将内存中符合参数条件的实时行情数据推送到客户端。
2.如权利要求1所述的实时行情数据处理方法,其特征在于:步骤(1)中所述实时行情数据从交易端远程的FTP上抓取,或者从交易所对外开放的Socket服务器上抓取,或者从交易所提供的web网页上抓取。
3.如权利要求2所述的实时行情数据处理方法,其特征在于:所述实时行情数据根据数据格式采用事务性质方式的多线程并行抓取。
4.如权利要求1所述的实时行情数据处理方法,其特征在于:步骤(2)中所述存储结构包括二叉树、堆栈和队列。
5.如权利要求4所述的实时行情数据处理方法,其特征在于:根据具体应用情况选择实时行情数据在内存中的存储结构,将需要快速插入和检索的实时行情数据采用二叉树存储,将需要后进先出或有前置条件的实时行情数据采用堆栈存储,将需要按照顺序获取的数据采用队列存储。
6.如权利要求1所述的实时行情数据处理方法,其特征在于:步骤(2)中所述排序方式包括单重排序和多重排序,所述单重排序包括按照时间排序、按照优先级排序、按照成交量排序,所述多重排序包括根据多个条件的对等排序、主次排序和组合排序。
7.如权利要求1所述的实时行情数据处理方法,其特征在于:步骤(3)中所述客户端是B/S结构的客户端或者C/S结构的客户端。
8.如权利要求1~7中任一项所述的实时行情数据处理方法,其特征在于:所述方法还包括清理服务器内存的步骤。
9.如权利要求8所述的实时行情数据处理方法,其特征在于:所述清理服务器内存采用的方法如下:
1)定时启动内存数据清理线程;
2)依次获取内存中的实时行情数据;
3)对获取的每一个实时行情数据,判断该实时行情数据是否符合设定的清理规则,如果符合,则进行清理;否则,不进行清理。
10.如权利要求1~7中任一项所述的实时行情数据处理方法,其特征在于:所述方法还包括数据落盘的步骤,将服务器内存中的实时行情数据按照预先设定的落盘时间和落盘间隔取出并存储到文件或数据库中。
11.如权利要求10所述的实时行情数据处理方法,其特征在于:为服务器内存中每个实时行情数据分别指定落盘时间和落盘间隔,或者为服务器内存中所有实时行情数据统一指定集体落盘时间和落盘间隔。
12.一种实时行情数据处理服务器(1),其特征在于:所述服务器(1)包括用于实时地抓取实时行情数据的抓取装置(11);用于将抓取的实时行情数据按照设定的存储结构和排序方式缓存到内存中的缓存装置(12);用于根据客户端设置的参数将内存中符合参数条件的实时行情数据推送到客户端的推送装置(13)。
13.如权利要求12所述的实时行情数据处理服务器(1),其特征在于:所述服务器(1)还包括用于清理服务器内存中缓存的数据的清理装置(14)。
14.如权利要求12所述的实时行情数据处理服务器(1),其特征在于:所述服务器(1)还包括用于将服务器内存中的实时行情数据按照预先设定的落盘时间和落盘间隔取出并存储到文件或数据库中的落盘装置(15)。
15.一种实时行情数据处理系统,其特征在于:所述系统包括权利要求12~14中任一项所述的服务器(1)和通过网络与所述服务器(1)连接的若干客户端(2);所述客户端(2)用于显示所述服务器(1)推送的数据。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN2011101265167A CN102790683A (zh) | 2011-05-16 | 2011-05-16 | 一种实时行情数据处理方法、服务器及系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN2011101265167A CN102790683A (zh) | 2011-05-16 | 2011-05-16 | 一种实时行情数据处理方法、服务器及系统 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN102790683A true CN102790683A (zh) | 2012-11-21 |
Family
ID=47155990
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN2011101265167A Pending CN102790683A (zh) | 2011-05-16 | 2011-05-16 | 一种实时行情数据处理方法、服务器及系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN102790683A (zh) |
Cited By (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103139304A (zh) * | 2013-01-25 | 2013-06-05 | 杭州中焯信息技术股份有限公司 | 行情实时推送 |
CN103150674A (zh) * | 2013-02-01 | 2013-06-12 | 上海大智慧股份有限公司 | 基于电视节目的实时金融市场数据推送系统 |
WO2015021873A1 (en) * | 2013-08-15 | 2015-02-19 | Tencent Technology (Shenzhen) Company Limited | Method, platform server, and system of data pushing |
CN105634981A (zh) * | 2014-10-30 | 2016-06-01 | 阿里巴巴集团控股有限公司 | 内容缓存和传输方法及其系统 |
CN106302784A (zh) * | 2016-08-27 | 2017-01-04 | 浪潮(北京)电子信息产业有限公司 | 一种提高缓存速度的方法和装置 |
CN106339419A (zh) * | 2016-08-16 | 2017-01-18 | 福建中金在线信息科技有限公司 | 邮币卡行情快速获取方法及系统 |
CN108197301A (zh) * | 2018-01-26 | 2018-06-22 | 北京博睿宏远数据科技股份有限公司 | 一种用于量化不同券商app行情刷新速度的方法 |
CN109710182A (zh) * | 2018-12-14 | 2019-05-03 | 北京向上一心科技有限公司 | 行情数据处理方法、装置及控制器和介质 |
CN110276685A (zh) * | 2019-06-05 | 2019-09-24 | 上海票据交易所股份有限公司 | 票据交易行情推送方法及装置 |
CN110727615A (zh) * | 2019-10-11 | 2020-01-24 | 福建天晴数码有限公司 | 一种实现加速接口数据请求的方法及其系统 |
CN111209276A (zh) * | 2019-12-31 | 2020-05-29 | 航天信息股份有限公司 | 一种用于对大数据进行处理的方法及系统 |
CN111600731A (zh) * | 2020-07-27 | 2020-08-28 | 南京艾科朗克信息科技有限公司 | 一种期货行情档位快速处理系统和方法 |
CN114331715A (zh) * | 2021-12-09 | 2022-04-12 | 盈立数智科技(深圳)有限公司 | 一种易于控制的清盘行情发送方法及系统 |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20040054751A1 (en) * | 2001-01-10 | 2004-03-18 | Francois Weissert | Method for processing and accessing data in a computerised reservation system and system therefor |
CN101046807A (zh) * | 2006-03-31 | 2007-10-03 | 华为技术有限公司 | 存储数据已读的方法及装置 |
CN101169790A (zh) * | 2007-11-30 | 2008-04-30 | 中兴通讯股份有限公司 | 一种基于web应用的矩阵式数据缓存方法及装置 |
CN101222682A (zh) * | 2008-01-28 | 2008-07-16 | 么梦冬 | 面向移动终端证券业务的通信平台、系统和方法 |
CN101378390A (zh) * | 2007-08-27 | 2009-03-04 | 神乎科技股份有限公司 | 一种分布式运算的推拉式信息服务系统以及方法 |
CN101986649A (zh) * | 2010-11-29 | 2011-03-16 | 深圳天源迪科信息技术股份有限公司 | 应用于电信行业计费系统的共享数据中心 |
CN102035893A (zh) * | 2010-12-23 | 2011-04-27 | 中国农业银行股份有限公司 | 一种服务器主动推送数据的方法和系统 |
-
2011
- 2011-05-16 CN CN2011101265167A patent/CN102790683A/zh active Pending
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20040054751A1 (en) * | 2001-01-10 | 2004-03-18 | Francois Weissert | Method for processing and accessing data in a computerised reservation system and system therefor |
CN101046807A (zh) * | 2006-03-31 | 2007-10-03 | 华为技术有限公司 | 存储数据已读的方法及装置 |
CN101378390A (zh) * | 2007-08-27 | 2009-03-04 | 神乎科技股份有限公司 | 一种分布式运算的推拉式信息服务系统以及方法 |
CN101169790A (zh) * | 2007-11-30 | 2008-04-30 | 中兴通讯股份有限公司 | 一种基于web应用的矩阵式数据缓存方法及装置 |
CN101222682A (zh) * | 2008-01-28 | 2008-07-16 | 么梦冬 | 面向移动终端证券业务的通信平台、系统和方法 |
CN101986649A (zh) * | 2010-11-29 | 2011-03-16 | 深圳天源迪科信息技术股份有限公司 | 应用于电信行业计费系统的共享数据中心 |
CN102035893A (zh) * | 2010-12-23 | 2011-04-27 | 中国农业银行股份有限公司 | 一种服务器主动推送数据的方法和系统 |
Cited By (16)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103139304A (zh) * | 2013-01-25 | 2013-06-05 | 杭州中焯信息技术股份有限公司 | 行情实时推送 |
CN103150674A (zh) * | 2013-02-01 | 2013-06-12 | 上海大智慧股份有限公司 | 基于电视节目的实时金融市场数据推送系统 |
CN104378399B (zh) * | 2013-08-15 | 2019-08-23 | 腾讯科技(深圳)有限公司 | 一种数据推送方法、平台服务器、客户端以及系统 |
WO2015021873A1 (en) * | 2013-08-15 | 2015-02-19 | Tencent Technology (Shenzhen) Company Limited | Method, platform server, and system of data pushing |
CN104378399A (zh) * | 2013-08-15 | 2015-02-25 | 腾讯科技(深圳)有限公司 | 一种数据推送方法、平台服务器、客户端以及系统 |
CN105634981A (zh) * | 2014-10-30 | 2016-06-01 | 阿里巴巴集团控股有限公司 | 内容缓存和传输方法及其系统 |
CN106339419A (zh) * | 2016-08-16 | 2017-01-18 | 福建中金在线信息科技有限公司 | 邮币卡行情快速获取方法及系统 |
CN106302784A (zh) * | 2016-08-27 | 2017-01-04 | 浪潮(北京)电子信息产业有限公司 | 一种提高缓存速度的方法和装置 |
CN108197301A (zh) * | 2018-01-26 | 2018-06-22 | 北京博睿宏远数据科技股份有限公司 | 一种用于量化不同券商app行情刷新速度的方法 |
CN109710182A (zh) * | 2018-12-14 | 2019-05-03 | 北京向上一心科技有限公司 | 行情数据处理方法、装置及控制器和介质 |
CN110276685A (zh) * | 2019-06-05 | 2019-09-24 | 上海票据交易所股份有限公司 | 票据交易行情推送方法及装置 |
CN110727615A (zh) * | 2019-10-11 | 2020-01-24 | 福建天晴数码有限公司 | 一种实现加速接口数据请求的方法及其系统 |
CN111209276A (zh) * | 2019-12-31 | 2020-05-29 | 航天信息股份有限公司 | 一种用于对大数据进行处理的方法及系统 |
CN111600731A (zh) * | 2020-07-27 | 2020-08-28 | 南京艾科朗克信息科技有限公司 | 一种期货行情档位快速处理系统和方法 |
CN111600731B (zh) * | 2020-07-27 | 2020-11-03 | 南京艾科朗克信息科技有限公司 | 一种期货行情档位快速处理系统和方法 |
CN114331715A (zh) * | 2021-12-09 | 2022-04-12 | 盈立数智科技(深圳)有限公司 | 一种易于控制的清盘行情发送方法及系统 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN102790683A (zh) | 一种实时行情数据处理方法、服务器及系统 | |
WO2018188476A1 (zh) | 一种优化组单的方法和装置 | |
CN104820670B (zh) | 一种电力信息大数据的采集和存储方法 | |
CN102999519B (zh) | 一种数据库的读写方法及系统 | |
CN103930888B (zh) | 基于更新、储存及响应约束的多粒度分组聚合选择 | |
EP3788512A1 (en) | Hierarchical, parallel models for extracting in real time high-value information from data streams and system and method for creation of same | |
CN108846609A (zh) | 基于订单任务的拣选方法、装置、服务器和介质 | |
CN107766402A (zh) | 一种楼盘字典云房源大数据平台 | |
CN103678725B (zh) | 对象关系数据库中分层垃圾收集的方法、存储模块和系统 | |
CN109241414A (zh) | 基于消息模板的系统消息推送方法及终端设备 | |
CN106055621A (zh) | 一种日志检索方法及装置 | |
CN108881485A (zh) | 保障大数据包下的高并发系统响应时间的方法 | |
CN106570145B (zh) | 一种基于分层映射的分布式数据库结果缓存方法 | |
US9229932B2 (en) | Conformed dimensional data gravity wells | |
US20090164486A1 (en) | Business intelligence data extraction on demand | |
CN109447557A (zh) | 物流调度方法及装置、计算机可读存储介质 | |
CN105427070A (zh) | 一种降低库存碎片率的方法及装置 | |
CN111489201A (zh) | 一种客户价值分析的方法、设备、存储介质 | |
CN108628675A (zh) | 一种数据处理方法、装置、设备及计算机可读存储介质 | |
CN109658018A (zh) | 提高仓储出库效率的方法和装置 | |
CN106649461A (zh) | 一种自动化清理维护ElasticSearch日志索引文件的方法 | |
WO2024199517A1 (zh) | 订单处理方法、任务调度方法、装置及电子设备 | |
CN102565851A (zh) | 地震资料数据的存储方法 | |
CN104571946B (zh) | 一种支持逻辑电路快速查询的存储器装置及其访问方法 | |
CN102129619A (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 | ||
RJ01 | Rejection of invention patent application after publication | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20121121 |