CN1838171A - 一种证券行业指数计算系统及其方法 - Google Patents
一种证券行业指数计算系统及其方法 Download PDFInfo
- Publication number
- CN1838171A CN1838171A CNA2005100591854A CN200510059185A CN1838171A CN 1838171 A CN1838171 A CN 1838171A CN A2005100591854 A CNA2005100591854 A CN A2005100591854A CN 200510059185 A CN200510059185 A CN 200510059185A CN 1838171 A CN1838171 A CN 1838171A
- Authority
- CN
- China
- Prior art keywords
- index
- calculating
- computing
- data
- calculation
- 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
本发明涉及计算机应用技术领域,特别是一种证券行业指数计算系统及其方法。指数计算系统依据A/C/S结构进行功能划分,应用、计算和存储三个部分相互作用,相互依赖。整个系统采用客户端/服务端模式设计实现,服务端采用Linux机群系统,使用并行算法进行指数的实时和回溯计算,并通过磁盘阵列实现对重要数据的可靠保存。客户端可以进行查询、展示。客户端与服务器之间有网络互连,通过数据库实现数据共享。方法包括:指数的实时计算和回溯计算方法。实时计算程序用来实时的读取行情数据。回溯计算处理中,充分利用机群服务器的多节点处理能力,读取计算参数数据和历史行情数据,并把计算出来的结果汇总送到数据库中保存。
Description
技术领域
本发明涉及计算机应用技术领域,特别是一种证券行业指数计算系统及其方法。
背景技术
指数是指在众多的证券中选出具有代表性的证券,利用证券交易价格,权重股本,以及基期和基期指(参)数等进行综合计算而获得的数据,它能够反应一类证券交易的情况,具有标尺功能。当它作为一种产品正式上市交易后,那么它就又具有了投资功能。而进行相关指数计算的系统就是指数计算系统,简称指数系统。
指数的计算公式各个交易所有不同的计算方式,我们采用以下计算公式进行指数计算:∑(证券价格×股本)×基期指数/基期+附加指数。
目前指数系统仍旧多采用小型机作为构建平台,而通过这种方式实现的指数系统在速度、稳定性和可靠性上均存在比较显著的弊端。指数计算是指数系统的主要功能,在采用新方法之前,指数的回溯计算主要采用NT+PC的技术,对某种指数一年的回溯计算时间往往需要十几个小时,甚至几十个小时,不能提供及时的指数历史分时数据,制约了新指数品种的研制和推出。而指数的实时计算由交易系统完成,交易系统的特殊地位,并考虑对证券市场的影响,决定研制中的指数不能通过交易系统对外发布,这也限制了指数研制中对实时模式计算这一重要环节的研究。。同时,这种服务器的专用性强,基于这种方式设计开发的指数计算系统存在硬件平台依赖性强,不易移植,设计模式单一,灵活性差等制约因素。加上上千万乃至于几千万的硬件设备及开发投入、大量的培训投入以及后期的运行费用,这些制约因素都从某种程度束缚了行业发展。
指数计算系统需要一种全新的设计实现方法,从根本上满足指数计算处理对实时、稳定、可靠、灵活和可移植等多方面要求,更好地促进证券行业的发展。
发明内容
本发明的主要内容包括设计了一种指数计算系统的设计模式,为证券行业指数计算系统提供一种新型的构建模型,更好的满足指数计算实时性、稳定性的要求。基于这种方法开发的指数系统具有更高的实时计算和回溯计算性能,更大的可靠性、灵活性和可扩展性。
我们发明的新的指数计算系统主要包括机群硬件系统资源、机群Linux操作系统、机群并行化处理模块、指数计算处理模块、指数应用和管理模块以及数据库存储管理模块几大部分。
1.系统架构实现几大关键技术包括:利用A/C/S(Application-Computer-Storage)结构实现指数计算系统总体结构。系统包括应用、计算和存储三部分,相互作用,相互依赖。这种结构稳定而且可靠,对于企业资源的整体监控、数据保护等要求,都比较容易实现和保证,而且具有界面简单和操作方便的特点。
2.采用客户端/服务器模式(C/S结构)设计指数计算系统。服务端作为系统生产平台,负责指数数据的计算、存储、配置,主要有实时计算模块,回溯计算服务端模块,系统管理模块,数据导入模块。客户端负责基于指数数据的具体应用,主要包括指数数据的发布。可根据用户需求进行关于指数的多种特定查询、展示处理,以及向服务端提交回溯计算的请求等。可存在多个授权客户端同时对服务端进行数据访问,方便灵活。服务端与客户端独立运行,互不干扰,功能划分清晰,有效的降低了故障的发生。
3.服务端硬件平台采用基于Linux的多节点机群服务器,具有实用性强、可靠性高、可扩展的特性。服务端包括生产节点以及存储节点,生产节点用于指数计算,存储节点采用磁盘阵列,专门用于有效数据的存储和备份。机群网络采用双网络连接,能够有效防止单网络故障。
4.服务端的指数计算处理采用并行算法,利用现有的并行优化软件,充分利用指数计算中的海量数据在时间上具有松耦合性这一特点,设计了依据指数时间划分的并行指数回溯计算算法。
5.客户端程序采用java编程技术,可以在多种不同平台上方便的实现指数的查询展示。
根据这种方式设计开发的指数系统采用LINUX+PC CLUSTERSERVER的构架,依靠机群以及并行技术的支持,使得系统对某种指数1年历史分时行情的回溯计算,按照1分钟的采样频率,能够在10分钟内完成,大大提高了指数回溯计算的效率。同时,指数PC机群研发环境的实时计算功能给指数业务人员提供了日常指数跟踪,进行相应调整的工具,这些都提升了指数研发能力。除此之外,新指数系统在稳定性、可靠性和可移植性方面也得到了提高。服务器/客户端的工作模式大大提升了系统的易操作性和灵活性。
整个指数计算系统根据客户端/服务端模式设计实现。软件平台分为服务器端程序和客户端程序。服务端采用具有多个处理节点和存储节点的Linux机群系统,使用并行算法进行指数的回溯计算,并通过磁盘阵列实现对重要数据的可靠保存。客户端采用java语言进行程序设计。客户端与服务器之间有网络互连,通过数据库实现数据共享。
指数计算系统硬件服务器平台采用可定制、易扩展、高稳定的网格动力服务器——曙光天潮TC1700(24节点服务器组成),数据存储采用HP的VA7100的磁盘阵列,采用双机设备来防止单节点故障问题。网络采用双网络连接,防止单网络故障。机群总共包含48个CPU,总内存容量为48G,外部存储容量为2.5T。
在证券指数计算中,大量的文件I/O读取是证券指数计算的难点,可以采用并行算法解决海量数据计算的问题。在指数计算研发平台中,我们发现系统的可并行性好。根据时间来计算的指数,前后的藕合性松,根据时间进行并行性能够很好的加速系统的性能。所以,利用MPI对数据库中的行情数据进行并行化计算是一个可以实现的方法。实验平台的测试结果表明并行软件可以很好地支持证券指数计算,我们的实时计算模块可以满足用户至少五年内的性能要求。而利用指数研发平台的回溯计算模块,用户可以对多种指数进行并行的回溯计算。
我们采用HP磁盘阵列来解决海量数据存储问题,2.5T的容量可以保存用户10年的数据。
软件总体结构依据A/C/S(Application-Computer-Storage)结构进行功能划分,指数计算系统由应用、计算和存储三部分组成,三个部分相互作用,相互依赖。
(应用给计算配置了一定的参数,并把要计算的数据导入到存储介质中;计算根据应用输入的参数和从存储中得到的数据进行计算,并把计算结果放到存储中进行保存;应用系统可以给存储中导入要计算用的数据,也可以从存储中读取数据进行查询。
通过应用模块给计算模块配置各种计算参数(包括行情数据来源、计算时间等)。在实时计算过程中,计算模块按照应用指定的参数,以固定周期实时的从指定位置读取行情数据计算结果,提交至存储模块进行保存;回溯计算过程中,计算读取事先存储的行情数据进行并行计算,结果保存至存储。应用模块可从存储中读取多种(行情以及指数)数据进行查询。
技术方案
一种证券行业指数计算系统,包括:
整个指数计算系统根据客户端/服务端模式设计实现,依据A/C/S结构进行功能划分,服务端采用具有多个处理节点和存储节点的Linux机群系统,使用并行算法进行指数的实时和回溯计算,并通过磁盘阵列实现对重要数据的可靠保存,客户端采用java语言进行程序设计,客户端与服务器之间有网络互连,通过数据库实现数据共享。
指数系统采用客户端/服务端模式设计,根据A/C/S结构进行功能划分,指数系统包括计算、存储和应用处理三个主要部分,各种功能分别具有相应的硬件支持,由相应的处理模块完成,服务端用于指数的计算处理、存储,客户端用于指数的发布,包括查询和展示,服务端处理节点用于指数的计算处理;存储节点采用磁盘阵列,通过数据库管理软件实现海量数据的存储与备份;服务端和客户端的管理模块、查询、展示模块等应用通过数据库实现数据的共享。
服务端采用包含多个节点的基于Linux的机群系统,系统内部按功能划分为计算处理节点和存储节点,指数计算处理利用并行技术,实现了多节点上指数计算的并行处理。
一种证券行业指数计算方法,可进行指数的实时计算和回溯计算处理,实时计算程序用来实时的读取行情数据,进行每日指数计算,并保存结果数据。
附图说明
图1是A/C/S结构模型图。
图2是指数计算系统结构图。
图3是证券行业指数计算系统方法流程图。
具体实施方式
图1中,指数计算系统中应用是指用户对指数计算系统的使用、管理、监控等应用模块。计算是指指数计算系统中对指数的运算,该运算系统由机群来进行,通过应用传递过来的运算指令进行运算,同时利用到存储系统中的数据。存储模块把计算所需数据以及计算结果进行存储,以备将来追踪校验使用。
图2中,指数计算系统结构是有客户端系统和服务端组成的。客户端通过网络可以连接到服务端系统。服务端系统有不同的功能节点组成。其中的计算节点有一组计算节点来共同完成指数计算系统。计算节点是一个有不同层次的软件系统组成。在计算节点的最底层是我们的Linux操作系统,在操作系统之上是可用性和单一系统映像结构设施。利用改设施我们可以对外提供高可用性的系统服务和单一系统映像点。在该设施之上按照的是我们的并行编程环境和数据库。再在数据库上面安装的是证券指数计算软件,用户通过最上层的指数计算接口来进行指数计算。而存储系统则负责系统计算值的存储。服务端的节点通过网络连接到一起并通过网络提供客户端的指数计算服务。
系统结构应该包含三层,底层为网络连接系统,中间为服务处理层,最上面示用户客户端。在服务处理层有计算节点组,处理节点,和存储节点组成,处理节点包括底层的单一映像基础设施,上面的并行的编程环境应用和数据库编程接口,上面是指数计算的api,最上面是开发的指数计算软件。存储节点主要完成数据的存储,最底层也为单一映像基础设施,再上就是数据库存储。节点组主要是完成指数的计算。
图3是指数计算系统的指数计算处理方法,该方法依托于我们设计的指数计算系统软硬件平台结构。
本系统可进行实时和回溯两种类型的指数计算处理。图3(1)是实时计算处理流程。
计算处理在服务端进行,数据的保存涉及到存储模块,存储介质是磁盘阵列上的数据库。
实时计算程序用来实时的读取行情数据,进行每日指数计算,并保存结果数据。
其具体步骤如下:
步骤3.1.1.启动实时计算初始,读取应用端确定的计算参数(包括时间参数、行情数据位置参数等),进行计算初始化准备工作,获取指数定义信息、基期数据等以及指数校验处理;
步骤3.1.2.启动计算过程,进入计算等待状态,根据第3.1.1.步确定的时间参数等待实时计算的开始时间,若到达开始时间,进入第3.1.3.步;
步骤3.1.3.根据第1步确定的位置参数,以固定周期读取计算所需的行情数据,进行实时的指数计算;
步骤3.1.4.指数计算结果保存至数据库;
步骤3.1.5.重复3.1.3.,3.1.4;直到到达指定的计算结束时间,转第3.1.6步;
步骤3.1.6.计算结束。
历史回溯计算是利用历史行情数据,根据用户重新定义的指数计算的证券的选样,重新定义的基期和股本数据,回溯计算出过去某个特定时间段内的指数值。回溯计算流程图如图3(2)所示。回溯计算处理,其具体步骤如下:
步骤3.2.1:回溯计算程序启动,把历史数据导入到系统数据库中;
步骤3.2.2:回溯计算进程对任务进行并行化处理,分配任务到不同的节点上;
步骤3.2.3:回溯计算的进程根据任务分配的任务进行回溯计算;
步骤3.2.4:从数据库中读取历史数据进行回溯计算;
步骤3.2.5:计算结果存储到数据库中;
步骤3.2.6:等待所有的计算进程计算完成,回溯计算结束。
指数的计算公式与实时计算中的计算公式一致。指数回溯计算将大量数据分布到机群系统中的多个节点上,采用并行处理的计算模式,充分发挥了多节点机群服务器有利于并行计算的特点,大大提高了指数计算效率。
Claims (8)
1.一种证券行业指数计算系统,包括:
整个指数计算系统根据客户端/服务端模式设计实现,依据A/C/S结构进行功能划分,服务端采用具有多个处理节点和存储节点的Linux机群系统,使用并行算法进行指数的实时和回溯计算,并通过磁盘阵列实现对重要数据的可靠保存,客户端采用java语言进行程序设计,客户端与服务器之间有网络互连,通过数据库实现数据共享。
2.按权利要求1所述的系统,其特征在于:指数系统采用客户端/服务端模式设计,根据A/C/S结构进行功能划分,指数系统包括计算、存储和应用处理三个主要部分,各种功能分别具有相应的硬件支持,由相应的处理模块完成,服务端用于指数的计算处理、存储,客户端用于指数的发布,包括查询和展示,服务端处理节点用于指数的计算处理;存储节点采用磁盘阵列,通过数据库管理软件实现海量数据的存储与备份;服务端和客户端的管理模块、查询、展示模块等应用通过数据库实现数据的共享。
3.按权利要求1所述的系统,其特征在于:服务端采用包含多个节点的基于Linux的机群系统,系统内部按功能划分为计算处理节点和存储节点,指数计算处理利用并行技术,实现了多节点上指数计算的并行处理。
4.按权利要求1所述系统,其特征在于,系统结构应该包含三层,底层为网络连接系统,中间为服务处理层,最上面示用户客户端。在服务处理层有计算节点组,处理节点,和存储节点组成,处理节点包括底层的单一映像基础设施,上面的并行的编程环境应用和数据库编程接口,上面是指数计算的api,最上面是开发的指数计算软件。存储节点主要完成数据的存储,最底层也为单一映像基础设施,再上就是数据库存储。节点组主要是完成指数的计算。
5.一种证券行业指数计算方法,可进行指数的实时计算和回溯计算处理,实时计算程序用来实时的读取行情数据,进行每日指数计算,并保存结果数据。
6.按权利要求5所述的证券行业指数计算方法,实时计算处理,其具体步骤如下:
步骤3.1.1.启动实时计算初始,读取应用端确定的计算参数,进行计算初始化准备工作,获取指数定义信息、基期数据等以及指数校验处理;
步骤3.1.2.启动计算过程,进入计算等待状态,根据第3.1.1.步确定的时间参数等待实时计算的开始时间,若到达开始时间,进入第3.1.3.步;
步骤3.1.3.根据第1步确定的位置参数,以固定周期读取计算所需的行情数据,进行实时的指数计算;
步骤3.1.4.指数计算结果保存至数据库;
步骤3.1.5.重复3.1.3.,3.1.4;直到到达指定的计算结束时间,转第3.1.6步;
步骤3.1.6.计算结束。
7.按权利要求5所述的证券行业指数计算方法,回溯计算处理,其具体步骤如下:
步骤3.2.1:回溯计算程序启动,把历史数据导入到系统数据库中;
步骤3.2.2:回溯计算进程对任务进行并行化处理,分配任务到不同的节点上;
步骤3.2.3:回溯计算的进程根据任务分配的任务进行回溯计算;
步骤3.2.4:从数据库中读取历史数据进行回溯计算;
步骤3.2.5:计算结果存储到数据库中;
步骤3.2.6:等待所有的计算进程计算完成,回溯计算结束。
8.按权利要求5或6所述的证券行业指数计算方法,其特征在于,指数的计算公式与实时计算中的计算公式一致。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CNA2005100591854A CN1838171A (zh) | 2005-03-24 | 2005-03-24 | 一种证券行业指数计算系统及其方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CNA2005100591854A CN1838171A (zh) | 2005-03-24 | 2005-03-24 | 一种证券行业指数计算系统及其方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN1838171A true CN1838171A (zh) | 2006-09-27 |
Family
ID=37015558
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CNA2005100591854A Pending CN1838171A (zh) | 2005-03-24 | 2005-03-24 | 一种证券行业指数计算系统及其方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN1838171A (zh) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9134734B2 (en) | 2011-02-16 | 2015-09-15 | Siemens Aktiengesellschaft | Method for the autonomous localization of a driverless, motorized vehicle |
CN106203669A (zh) * | 2015-05-10 | 2016-12-07 | 北京极迅智程网络科技股份有限公司 | 一种对信息指数进行预测及分析的系统 |
CN106203668A (zh) * | 2015-05-07 | 2016-12-07 | 北京极迅智程网络科技股份有限公司 | 一种对信息指数进行预测分析及展示的系统 |
-
2005
- 2005-03-24 CN CNA2005100591854A patent/CN1838171A/zh active Pending
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9134734B2 (en) | 2011-02-16 | 2015-09-15 | Siemens Aktiengesellschaft | Method for the autonomous localization of a driverless, motorized vehicle |
CN106203668A (zh) * | 2015-05-07 | 2016-12-07 | 北京极迅智程网络科技股份有限公司 | 一种对信息指数进行预测分析及展示的系统 |
CN106203668B (zh) * | 2015-05-07 | 2021-04-20 | 北京极迅智程网络科技股份有限公司 | 一种对信息指数进行预测分析及展示的系统 |
CN106203669A (zh) * | 2015-05-10 | 2016-12-07 | 北京极迅智程网络科技股份有限公司 | 一种对信息指数进行预测及分析的系统 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Ji et al. | Big data processing: Big challenges and opportunities | |
US8645958B2 (en) | Software virtual machine for content delivery | |
EP2184680B1 (en) | An infrastructure for parallel programming of clusters of machines | |
Nicolae et al. | BlobSeer: Bringing high throughput under heavy concurrency to Hadoop Map-Reduce applications | |
CN103049556B (zh) | 一种海量医疗数据的快速统计查询方法 | |
Raicu et al. | Accelerating large-scale data exploration through data diffusion | |
US9176867B2 (en) | Hybrid DRAM-SSD memory system for a distributed database node | |
CN104751359B (zh) | 用于支付清算的系统及方法 | |
CN107766402A (zh) | 一种楼盘字典云房源大数据平台 | |
Lin et al. | Coordinating computation and I/O in massively parallel sequence search | |
US20140108415A1 (en) | Method and system of mapreduce implementations on indexed datasets in a distributed database environment | |
CN102663114A (zh) | 面向并发olap的数据库查询处理方法 | |
US9158548B2 (en) | System and method for program and resource allocation within a data-intensive computer | |
CN103491155B (zh) | 一种实现移动计算和获取移动数据的云计算方法及系统 | |
CN111210879A (zh) | 一种用于超大规模药物数据的分级存储优化方法 | |
CN1831824A (zh) | 缓存数据库数据组织方法 | |
CN115083538B (zh) | 一种药物数据的处理系统、运行方法及数据处理方法 | |
Mohamed et al. | Accelerating data-intensive genome analysis in the cloud | |
EP3818453A1 (en) | System for optimizing storage replication in a distributed data analysis system using historical data access patterns | |
Jia | Google cloud computing platform technology architecture and the impact of its cost | |
CN1838171A (zh) | 一种证券行业指数计算系统及其方法 | |
CN100351829C (zh) | 网格化动态自组织计算机体系结构的构造方法 | |
Zhao et al. | Toward efficient and flexible metadata indexing of big data systems | |
Liu et al. | Brps: A big data placement strategy for data intensive applications | |
Poess et al. | Large scale data warehouses on grid: Oracle database 10 g and HP proliant servers |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C12 | Rejection of a patent application after its publication | ||
RJ01 | Rejection of invention patent application after publication |
Open date: 20060927 |