正在加载...

至快、至简、至强: Arthur Whitney的kdb+

三月 1st, 2009 9 Comments/61 hits

kdb+是一个可驻留内存、基于列的数据库产品(in-memory、column-based database)。Arthur Whitney的Kx公司于2003年推出kdb+。

kdb+目的单纯而明确:一切为了以最快速度分析最海量金融数据。Arthur Whitney深谙机构投资者对海量数据处理的需要,将kdb+铸造成至快、至简、至强的终极武器。

 

至快

kdb+可以在1秒钟内处理百万条记录。

将kdb+数据库部署在局域网的时候,如果网速没有千兆,很容易成为kdb+的拖累。 

 

至简

1、语言简洁:kdb+源自最早的数组语言APL,继承了APL至简的编程风格。

2、使用简单:kdb+支持SQL标准。Arthur Whitney将APL的简洁与SQL的易懂融为一体,形成Q语言。大大降低新手入门的难度。

3、程序精简:下载的kdb+压缩文件只有183K。解压缩即可使用。(也是绿色软件:)

 

至强

1、历史数据与即时数据无缝结合。可轻松支持数G、数T的数据。

2、纯正数组语言,操作时间序列得心应手。

3、Arthur Whitney与APL的发明者共事多年、又亲手帮助Morgan Stanley和UBS原创相关定量系统,千锤百炼之后建立自己的公司。Arthur对定量投资的需求理解至深。kdb+可谓其巅峰之作。

 

学习kdb+的Q语言,不由联想到文艺复兴时期安格尔历经二十六年、终于在七十六岁高龄才完成的少女画作。清水芙蓉,纯然没有雕饰。(经网友提醒,删除安格尔画作,以免被当作河蟹一锅炖了。)

又或者象东方的禅宗。不立文字、直指人心。

 

 

kdb+相关网络资源(最新版本

 


下载

kdb+免费下载  供非商业用户、研究性用户测试、评估

 

入门

Arthur Whitney对K语言的简要介绍

K as a Prototyping Language  by Dennis Shasha。 纽约大学Shasha教授是Arthur的好朋友。也是K的推广者。

reddit上对Shasha教授的这篇介绍引起的讨论,有一些对K的批评声音

Hacker News上对Shasha教授这篇介绍的讨论

Kdb+ Database and Language Primer  by Dennis Shasha。

Java_vs_K  Google的Michael Schidlowsky用Java和K来解决同一个问题。清晰的屏幕展示和英文介绍。不用说,这又是一个K粉。

A Shallow Introduction to the K Programming Language, By jjayson, 2002

 

帮助文件

Kx官方帮助文件

K reference card

 

示范代码

http://code.kx.com/  kx公司网站上的示范代码。用户名/密码:anonymous/anonymous

http://kx.com/a/  能够翻墙、但不够利索的同学可以在此下载Kx公司网站上的有关K、kdb、kdb+示范代码

Eugenes的K idioms   一千多种K示范代码

no stinking loops  K以及相关语言的资料。文件直接下载

Milan的K代码  大量K示范代码

K语言示范代码

k3-notes

Kevin Lawler的Very Small k Programs

some codes by a kdb+ stat arb trader

 

渊源

An Interview with Arthur Whitney, 2004

J vs Kdb+/Q  关于J、K、Q以及kdb、kdb+名词辨析

wiki上的K、kdb+Q以及APL

 

社区

Kdb+ Personal Developers Google小组

 

其它

 Conway's Game of Life in one line of APL 如果觉得Q不太直白,可以看看这篇文章。Michael Gertelman展示了APL的力量和简洁。也许过于简洁了?:)

 Studio for kdb+  一个免费的kdb+编程辅助界面




相关阅读:


9 Responses to “至快、至简、至强: Arthur Whitney的kdb+”

  1. pkerr On

    高清无码,小心河蟹哦。

  2. wind On

    图片抄袭自新华网。:)

  3. pkerr On

    你应该打个码

  4. wind On

    不会打码啊。而且,如果我来打码,肯定挨骂。
    干脆删了算了。多谢提醒。

  5. wind On

    延伸阅读:
    HDF5: 专门用于管理海量、复杂数据集的免费开源技术。NASA也应用HDF5技术。 HDF的意思是Hierarchical Data Format。由NCSA发明。支持多维数组和表。最新的matlab已经将HDF5作为主要存储模式。免费的PyTables提供了python的HDF5支持。

  6. wind On

    最新进展:matt.warren最新编写了一个开源的qpy项目
    It allows you to send queries and data to the database and receive data back.

  7. wind On

    一个个人博客:Practical Advice on KDB+/Q。估计作者用kdb+来做金融分析。提供了一些代码示例。

  8. ... On

    看泉,入神了。

  9. wind On

    中文互联网上又一个关于Q语言的地方:Babelnova(巴别诺瓦) 社区的Q笔记。这是个专注于APL类语言的半封闭社区。其实itfin在海洋的帖子上早就提到了这里。今天重读,重新发现。:)

Leave a Reply

8+8