热门问题
时间线
聊天
视角

kdb+

来自维基百科,自由的百科全书

Remove ads

kdb+ 是具有内存(IMDB)功能的列式关系型时间序列数据库(TSDB),由KX开发和推广。[1] 这个数据库主要用于高速交易中存储、分析、处理和检索大型数据集。[2]kdb+具有处理数十亿条记录并分析数据库中数据的能力。[3]该数据库在多个操作系统上提供32位和64位版本。[4]金融机构使用kdb+来分析时间序列数据,例如股票商品交易数据。[5]此外,该数据库还被应用于其他时间敏感的数据场景,包括商品市场(如能源交易)、电信、传感器数据、日志数据、机器和计算机网络使用监控[6],以及在一级方程式赛车中的实时分析。[7]

事实速览 原作者, 开发者 ...
Remove ads

概述

kdb+ 是一种高性能的列式数据库,专门用于处理和存储大量数据。常用数据被加载到随机存取存储器(RAM)中,其访问速度远高于磁盘存储。该数据库专为金融机构设计,用作存储时间序列数据的中央存储库,支持对数十亿条记录进行实时分析。[8][1][9] kdb+ 能够分析随时间变化的数据,并响应与结构化查询语言(SQL)类似的查询。[2]

相比基于行的数据库管理系统,列式数据库在回应某些查询时更加高效。[5] kdb+的字典、表和纳秒时间戳是本地数据类型,用于存储时间序列数据。[5][10]

kdb+ 的核心是内置的编程语言q,它是一种简洁、具有表达力的查询数组语言,也是APL语言方言[8]Q 能够处理实时和历史数据。[2]kdb+ 使用 q进行数据聚合和分析,执行统计函数,连接数据集并支持 SQL 查询。[11] 向量语言 q 为速度和表达力而设计,消除了大多数循环结构的需要。[5] kdb+ 包含了CC++JavaC♯Python中的接口。[4][5]

Remove ads

历史

1998年,KX发布了由Arthur Whitney编写、基于K语言构建的数据库kdb。2003年,64位版本的kdb+面世。2004年,kdb+ tick市场数据库框架与kdb+ taq一同亮相,后者是纽约证券交易所(NYSE)taq数据的加载器。kdb+是基于Arthur Whitney在数组语言领域的早期工作创建的。[5]

2007年4月,KX公司宣布将推出适用于Mac OS X的kdb+版本。当时,kdb+已支持LinuxWindowsSolaris操作系统。[12]

2012年9月,kdb+3.0版本发布,针对英特尔升级后的处理器进行了优化,支持WebSocket全局唯一标识符(GUID)和通用唯一识别码(UUID)。当时,英特尔高级矢量扩展(AVX)和流SIMD扩展4(SSE4)4.2在Sandy Bridge处理器上为kdb+系统提供了增强支持。[3]2013年6月,kdb+3.1版本发布,相较于旧版本,性能提高了8倍。[13]

2020年3月,kdb+4.0版本发布。[14] 新功能包括多线程原语(原语是q语言中作为内置函数的运算符)、英特尔Optane DC持久内存支持和非活跃数据的加密。

Remove ads

参考文献

外部链接

Loading content...
Loading related searches...

Wikiwand - on

Seamless Wikipedia browsing. On steroids.

Remove ads