kdb+ Mac部署配置java使用教程,纯干货篇

Kdb+

官网:https://kx.com/

请添加图片描述

强大的编程和查询语言q

kdb+内置了高速应用开发和数据查询的一体化语言—q。q可以直接对数据做出运算,最大限度的减少中间成本。它无需先读取数据,然后再送到外部的程序进行分析,当接收到数

Java连接Kdb+最流行和使用最广的包排名:

  1. qJava:这是Kx Systems官方提供的Java API,作为官方解决方案,使用人数必然是最多的。绝大多数需要在Java中连接Kdb+的开发者,qJava会是首选。
  2. kdb-jdbc:这是一个实现JDBC接口的Kdb+驱动,可以让标准JDBC应用连接Kdb+数据库。由于JDBC是Java数据库访问的业界标准,所以这种解决方案的使用人数也较多,覆盖的用户群体较广。
  3. kx-api:这是一个开源的第三方Java API,虽然不是官方提供的,但因为易用和社区活跃,已经积累了较多的用户。尤其对初学者而言,由于kx-api的简单易用,是连接Kdb+的理想选择。
  4. jquantlib:这是一个量化金融工具库,内置对Kdb+的支持。所以主要用户群是金融领域的开发者。虽然针对性较强,但在量化金融领域已经有了较广泛的应用。
  5. vert.x-kdb:这是一个基于Vert.x的Kdb+客户端,主要面向采用Vert.x架构的应用。所以用户群体相对较小且定位更清晰。

kdb+ Mac配置使用教程

1.下载

download url:

Developers | KX

12个免费试用
包含文件
将q , q.k , k4.lic文件放置在同一目录下

  • q.k 配置文件
  • q 执行器
  • k4.lic 许可证签名 申请后邮箱会发送下载链接

2.配置QHOME环境变量

如不配置会报错’/Users/xxx/q/q.k. OS reports: No such file or directory 默认加载当前用户下的/q/q.k文件

open -e ~/.bash_profile

添加以下内容

export PATH=$PATH:/Users/chuxianbo/home/kdb
export QHOME=/Users/chuxianbo/home/kdb

保存并关闭文件,运行 **source ~/.bash_profile**来立即应用新的环境变量

3.测试验签

  1. 打开终端,键入./q来启动Kdb+的REPL(Read-Eval-Print-Loop)接口:
xxx@MacBook-Pro-78 kdb % ./q
KDB+ 4.0 2023.01.20 Copyright (C) 1993-2023 Kx Systems
m64/ 16(24)core 16384MB xxx macbook-pro-78.local 192.168.3.13 EXPIRE 2024.06.27 pwn2ownyearn@gmail.com KOD #5014978

q)1+1
2
q)9*8+14
198
q)\\

Kdb+可视化工具

按照流行度和使用广度排列:

  1. KX Dashboards:这是KX Systems(Kdb+的开发公司)自家的可视化工具,可以直接与Kdb+集成。KX Dashboards提供了丰富的数据可视化选项,包括图表、地图和表格等。用户可以通过拖放界面创建和编辑仪表板,无需编写代码。
  2. Grafana:Grafana是一个开源的数据可视化和监控平台,支持多种数据源,包括Kdb+。Grafana提供了丰富的图表类型和高度可配置的仪表板,可以满足复杂的数据可视化需求。
  3. Tableau:Tableau是一个商业的数据可视化工具,广泛用于商业智能和数据分析。Tableau提供了Kdb+的连接器,可以直接从Kdb+读取数据。
  4. Panopticon:Panopticon是一个专门为实时数据和时间序列数据设计的可视化工具。Panopticon支持Kdb+,并提供了一些针对时间序列数据的特殊可视化选项。
  5. QStudio:QStudio是一个针对Kdb+的开发和可视化工具。QStudio提供了代码编辑、数据查询和数据可视化等功能。

KX Dashboards Mac配置使用教程

download url:

Get started - KX Dashboards
进入下载目录

xxx@MacBook-Pro-78 dash % q dash.q              
KDB+ 4.0 2023.01.20 Copyright (C) 1993-2023 Kx Systems
m64/ 16(24)core 16384MB xxx macbook-pro-78.local 192.168.3.13 EXPIRE 2024.06.27 pwn2ownyearn@gmail.com KOD #5014978

Kx Dashboards - free to 5 concurrent users (update before 5th October 2023)
Go to http://localhost:58174
q)'TLS not enabled

默然路径:http://localhost:58174/

请添加图片描述

java kdb+ qJava

https://github.com/exxeleron/qJava
需要下载后放在本地maven库依赖
以下是代码使用案例

import com.kx.c;
import java.io.IOException;

public class KdbPlusExample {
    public static void main(String[] args) {
        try {
            // 创建连接
            c con = new c("localhost", 5001, "user:pass");

            // 实时订阅
            con.ks(".u.sub[`trade;`AAPL]");
            Object[] response = (Object[]) con.k();
            System.out.println("Subscribed to trade table for AAPL");

            // 循环接收实时更新
            new Thread(() -> {
                while (true) {
                    try {
                        Object[] data = (Object[]) con.k();
                        System.out.println("Received data: " + data[0]);
                    } catch (IOException | c.KException e) {
                        e.printStackTrace();
                    }
                }
            }).start();

            // 列式数据分析
            Object[] result = (Object[]) con.k("select avg price by date from trade where sym=`AAPL");
            System.out.println("日期平均价格: " + result[0]);

        } catch (IOException e) {
            e.printStackTrace();
        } catch (c.KException e) {
            e.printStackTrace();
        }
    }
}
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值