kdb+是什么

2022-05-25 00:00:00 序列 数据 数据库 时间 编程语言

【本文摘编自https://thinqkdb.wordpress.com,Introduction to q/KDB+】


在过去的20多年中,kdb+一直是大型金融机构重要的技术之一。


kdb+已成为以电般速度对海量数据(亿万亿记录)进行分析的工具。本文将对kdb+进行概述:


  • 一个性能超高的时间序列、列式历史数据库

  • 一个表达力极强的编程语言q

  • 一个内存计算引擎


这些听起来都很棒 那它到底是什么意思


我们分别介绍以上几点:


一、性能超高的时间序列、列式历史数据库

  • 时间序列数据库是经过设计和优化、能够高效处理时间序列数据的数据库。kdb+内部提供时间序列计算功能,可以高效地处理时间序列数据。

  • kdb+是列式数据库,这意味着对其进行数据库查询无需扫描整个表即可查询相关数据。


二、达力极强的编程语言q


  • kdb+本身是一个数据库。q是可以直接在该数据库运行的编程语言。因此,kdb+和q经常一起出现,写为“kdb+/q”。

  • q编程语言功能十分强大,并且在原始数据类型的基础上,提供了许多数据类型,例如数组(list)、字典(dict)和表(table)等。

  • q与SQL相似,但由于kdb+设计为列式存储,q的功能比SQL强大很多。

  • q内置了的时间数据类型,这些类型已针对时间序列结构化数据的分析进行了优化。


三、内存计算引擎


  • 内存计算是一种解决方案,它将应用程序数据存储在RAM中(可能跨多个集群)而不是在磁盘上,以此加快实时处理速度。


上面简单介绍kdb+技术的核心组件。随着kdb+学习的不断深入,我们将对这些内容有着更深的领会,并感受到kdb+的功能是多么的强大。

相关文章