kdb+
作者 | Arthur Whitney |
---|---|
開発元 | Kx Systems |
初版 | 2003年 |
プログラミング 言語 | q |
対応OS | Windows, macOS, Linux, Solaris |
プラットフォーム | IA-32, x86-64, SPARC |
対応言語 | English |
種別 | relational time series database |
ライセンス | プロプライエタリ |
公式サイト |
kx |
kdb+は、Kx Systemsにより開発および販売されているインメモリデータベース(IMDB)かつカラムベース・リレーショナル・タイムシリーズ・データベース(a column-based relational time series database (TSDB) )である[1]。 一般的に、TSDBは高頻度取引(HFT)において大量のデータを高速に蓄積、分析、処理および検索するために用いられる[2]。 kdb+は内部で数十億のレコードを処理および分析が可能なデータベースである[3]。 Windows、MacOS、Linuxなど向けに32ビット版および64ビット版がリリースされている[4]。 金融機関では、証券取引データや商品取引データをはじめとする時系列データの分析にkdb+が利用されている[5]。 また、kdb+は金融市場のみならず、電力売買、情報通信、センサーデータ、ログデータ、機械やコンピュータネットワークの使用状況データなどの時系列データの処理・分析にも利用されている[6]。
概要
[編集]kdb+は、大量のデータを処理および蓄積することができるようにデザインされた高性能なカラムナー・データベースである。一般にアクセスされたデータは、ハードディスクよりも高速にアクセスが可能なメインメモリ(RAM)上に保持される。金融機関での使用を想定し、kdb+は数十億のレコードのリアルタイム分析およびそれらレコードの蓄積が可能なセントラルリポジトリとして開発された [1][7][8]。 またkdb+では、SQL(Structured Query Language)に似たクエリが使用可能である[2]。
カラムナー・データベースは、いくつかのクエリーについてローベース・データベースより効率的な方法で処理を行う[5]。kdb+ではディクショナリー、テーブルおよびナノ秒単位のタイムスタンプがネイティブなデータ型として用意されており、時系列データを格納するために使用される[5]。
kdb+の中核は、簡潔で表現力豊かなクエリ配列言語であり、APLのひとつであるビルトイン・プログラミング言語のqである[7]。 qは、ストリーミングデータ、リアルタイムデータおよびヒストリカルデータを処理できる[2]。kdb+は、qを用いてデータの集計と分析、統計関数の実行、データセットの結合、SQLクエリー[9]のサポートを行う。vector languageであるqは速度と表現力を兼ね備えている[5]。kdb+には、C、C++、Java、C#、Pythonのインタフェースが含まれる[4][5]。
歴史
[編集]1998年Kx Systemsは、Arthur Whitneyによって開発された言語Kで構築されたデータベースkdbをリリースした。 2003年にkdb+はkdbの64ビット版としてリリースされた。 2004年には、ニューヨーク証券取引所(NYSE)のTAQデータのローダーであるkdb+ taqとともに、kdb+ tick market database frameworkがリリースされた。 kdb+はArthur Whitneyによって開発されたため、配列言語としての特性を備えている[5]。
2007年4月Kx Systemsは、Mac OS X用のkdb+のバージョンをリリースした。その時点で、kdb+はオペレーティングシステムのLinux、Windows、SolarisおよびMac OS Xで利用可能となった[10]。
2012年9月にバージョン3.0がリリースされた。バージョン3.0は、WebSocket、GUID(Globally Unique Identifier)およびUUID(Universally Unique Identifier)をサポートするインテルのプロセッサーに最適化されている。 Sandy Bridgeプロセッサ上のIntelのAVX(Advanced Vector Extensions)とSSE4.2(Streaming SIMD Extensions 4.2)により、kdb+システムへのサポートが強化された[3]。2013年6月にバージョン3.1がリリースされ、ベンチマークは旧バージョンよりも最大8倍速くなっている[11]。
参考文献
[編集]- ^ a b “Kdb+ and the Internet of Things/Big Data”. Inside Big Data. 2018年12月19日閲覧。
- ^ a b c “Kx Systems and High Frequency Trading”. The Trading Mesh. 2018年12月19日閲覧。
- ^ a b “At Kx Systems Big Data Is Old News”. Forbes. 2018年12月19日閲覧。
- ^ a b “A first look at kdb+”. quant mind. 2018年12月19日閲覧。
- ^ a b c d e f “Working Down the Column: The Kdb+ Community”. Cluster Monkey. 2018年12月19日閲覧。
- ^ “SOLUTIONS FOR”. kx. 2018年12月19日閲覧。
- ^ a b “First Derivatives Boosts its KDB+ Software Business with New Acquisition”. Finance Magnates. 2018年12月19日閲覧。
- ^ “Kdb+”. ITL Group. 2018年12月19日閲覧。
- ^ “Wall Street Firms Extend ‘Big Data’ Capabilities”. Markets Media. 2018年12月19日閲覧。
- ^ “Kdb+ financial database comes to Mac OS X”. Macworld. 2018年12月19日閲覧。
- ^ “Kx's kdb+ claims up to 8x faster than any previous STAC M3 benchmarks”. Automated Trader. 2018年12月19日閲覧。