(1)海量数据的存储管理
随着大数据时代的到来,金融、电子商务、物联网等领域的数据量都呈几何级数增长。传统数据系统无法高效处理这种规模的数据。DolphinDB支持单表百万级分区,集群亿级分区,可高效管理PB级历史数据和实时数据,例如证券交易与报价高频数据、物流数据与物联网传感器数据等超大规模数据。DolphinDB提供多种分区方案,客户可以根据业务需要灵活选择。例如针对高频交易数据,可以选择基于交易日期的值分区和基于股票代码的范围分区的复合分区方案,有效避免查询集中于少量分区而造成的负载不均衡的问题。DolphinDB自带分布式文件系统,极大方便系统扩容。DolphinDB部署方式灵活,可在Linux或Windows系统,单个节点或集群,本地服务器或云端部署。
(2)海量数据快速查询
金融机构对数据查找及分析的速度有很高的要求。DolphinDB对百亿行数据表的简单查询可达到毫秒级响应,对复杂查询与分析可达到秒级响应,比MPP数据库速度快1-2个数量级。用户也可使用DolphinDB的集成开发环境快速浏览TB级别的分区数据表。
(3)方便高效的数据分析
对时间序列数据的处理在传统数据库中一般需要通过冗长的代码实现,效率低下。DolphinDB提供对时间序列数据的内生支持。对时序数据处理中常见的各种移动窗口及累积窗口计算,非同时连接(asof join,window join),以及面板数据(panel data)的处理,DolphinDB均提供内置函数或SQL语句,不仅极大简化了时间序列数据的处理与分析,其性能也均经过优化,速度远超同类系统。
用户可在DolphinDB数据库内对海量数据直接进行复杂分析,无需先对原始数据进行预处理,再转移到本地数据分析系统。库内分析不但避免了数据迁移所耗费的时间及资源,也不会受到本地服务器的内存限制,更可以直接使用集群的资源进行并行计算,从而使开发效率和计算能力大大提高。例如研发使用四年历史数据的美股S&P500个股期权交易策略,使用普通内存数据库与Java,运行一次回测程序需要24小时,而使用DolphinDB仅需10分钟。
(4)实时数据快速入库
证券交易市场与物联网传感器每天都产生大量的实时数据。在某些其它系统中,实时数据在每天结束后导入历史数据库,造成后台分析人员无法把最新的实时数据与历史数据结合进行分析。DolphinDB与其他数据仓库相比的一个重要优势是可将实时数据每隔1秒批量导入历史数据库,使后台数据分析与研发人员经过短暂延迟即可使用实时数据。