【本文摘编自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+的功能是多么的强大。