标签: kdb

使用 AngularJS 向 KDB+ 进程发送 HTTP GET 请求

我正在使用 AngularJS 开发一个网络应用程序,但我对此非常缺乏经验。

我的目标是让用户在文本字段中键入一些参数,然后使用该参数作为 GET 请求中的参数之一发送 GET 请求(使用 Angular 中的 $http 服务)。

请求的目标是 KDB+ 进程(来自 KX Systems 的专有列导向数据库/语言)。此过程可以采用以下形式的请求:

http://servername:1234/?queryToRunHere[paramFromApp]
Run Code Online (Sandbox Code Playgroud)

此调用应返回一个 JSON 字符串。由于网络服务器和此进程在不同端口上运行,我收到“Access-Control-Allow-Origin”错误,该错误阻止我将此查询运行到其他端口。我试图使用 $http.jsonp 命令(因为我读到它允许远程获取)但是这要求我提供一个“&callback”参数。这是不可能的,因为 KDB+ 将解释“?”右侧的所有内容。作为内部查询。

我不确定如何继续,但到目前为止,这些是我的想法:

  1. KDB+ 为 Java 提供了一个 API(但就我所知的 JavaScript 而言不是这样)。也许我可以用 Java 编写某种 Web 服务,然后可以通过 angular 调用它,然后使用其原生 API 调用 KDB+。问题在于它创建了另一个要维护的程序,而且我不确定如何编写这样的服务(什么技术、框架等)。

  2. 在 Angular 中有另一种我不知道的方法,或者有一种方法不必在 $http.jsonp 中指定回调参数。

我将不胜感激任何帮助。

javascript web-applications kdb angularjs

2
推荐指数
1
解决办法
2702
查看次数

如何卸载 kdb 分区数据库?

我使用 \l 命令加载(映射)了一个分区数据库。如何取消映射数据库?出于多种原因,这可能很有用,例如加载具有相同名称的不同数据库或释放一些系统内存。

kdb

2
推荐指数
1
解决办法
912
查看次数

如何计算相关矩阵?

我有一个带有列的表a, b, ccor[a;a]我可以使用函数形式以某种方式计算, cor[a;b],的相关矩阵吗cor[a;c]

?[table; (); 0b; (`aa`ab`ac)!((cor; `a; `a); (cor; `a; `b);(cor; `a; `b));
Run Code Online (Sandbox Code Playgroud)

如何生成最后一个参数的列表?(cor; a;b)

kdb

2
推荐指数
1
解决办法
3189
查看次数

如何在 kdb 中一次添加多个列?

不知何故,我只能找到显示如何添加一列的示例。

所以我编写了这段代码,它可以工作,但我知道有一种更好的方法可以做到这一点:表 t 已经存在,其中列填充了数据,我需要添加最初为空的新列。

 t: update column1:` from t;
 t: update column2:` from t;
 t: update column3:` from t;
 t: update column4:` from t;
Run Code Online (Sandbox Code Playgroud)

我尝试将其设为一个函数:

 colNames:`column1`column2`column3`column4;
 t:{update x:` from t}each colNamesList;
Run Code Online (Sandbox Code Playgroud)

但这只添加了一列并将其称为x。

任何改进此代码的建议将不胜感激。我必须添加的不仅仅是 4 列,因此我的代码很长。谢谢你!

kdb q-lang

2
推荐指数
1
解决办法
1614
查看次数

将 CSV 导入 KDB 表

我有一个包含随机数据的 csv 文件,我可以将其导入表中,但是在导入 csv 时是否可以为该表创建列

我试过这个,但它似乎不起作用它得到一个类型错误:

details:`time`place`cost`total`address ("TSFIS";",") 0:`data.csv
Run Code Online (Sandbox Code Playgroud)

database kdb q-lang

2
推荐指数
1
解决办法
3757
查看次数

kdb中的线性回归

这是我构建线性回归的方法,但是当我包含两列以上时,我的代码不起作用.

// Load relevant columns into memory
//
t:?[`data;enlist(=;`date;dat);0b;(ind,dep)!ind,dep];


X:9h$enlist[count[t]#1],t ind;
beta:inv[X mmu flip X] mmu X mmu 9h$t dep;

res:(`yInt,ind)!beta;
Run Code Online (Sandbox Code Playgroud)

ind是符号中的独立字段名称,dep是符号中的依赖字段名称.这部分inv[X mmu flip X]不起作用.如果我为ind包含两个以上的字段,那么将会有一行是空白的,我不能这样做inv.我不确定如何为自变量包含更多列/字段.

regression kdb

2
推荐指数
1
解决办法
2064
查看次数

Kdb:如果少于 2 位数字,则在字符串前添加前导零

我从日期时间原子中提取了年、日、月、小时、分钟和秒。如何在数字位数小于 2 的日、月、时、分、秒中添加前导零?

我有这样的事情:

  year:string`year$inDateTime;
  day:string`dd$inDateTime;
  if[1=(count day);day:("0",day)];
  month:string`mm$inDateTime;
  if[1=(count month);month:"0",month];
  hour:string`hh$inDateTime;
  if[1=(count hour);hour:"0",hour];
  minute:string`uu$inDateTime;  
  if[1=(count minute);minute:"0",minute];
  second:string`ss$inDateTime;
  if[1=(count second);second:"0",second];
Run Code Online (Sandbox Code Playgroud)

但有没有更干净的方法来实现这一点呢?

formatting date zero kdb

2
推荐指数
1
解决办法
666
查看次数

如何将格式为“dd/MM/yyyy”的字符串解析为 q kdb 中的日期类型?

您将如何使用 q kdb 解析格式为“dd/MM/yyyy”的日期字符串?

当月份参数是第一个 "MM/dd/yyyy" 时是可能的,如下所示:

"D"$"1/20/2014"
2014-01-20d
Run Code Online (Sandbox Code Playgroud)

但是,如果第一天是“dd/MM/yyyy”

"D"$"20/1/2014"
0Nd
Run Code Online (Sandbox Code Playgroud)

kdb

2
推荐指数
1
解决办法
1773
查看次数

将不同类型的值更新到字典中

这个有效:

d1:`t1`t2`idx!(2017.01.01;2018.01.01;42)
Run Code Online (Sandbox Code Playgroud)

但是这个失败了(类型错误):

d2:()!()
d2[`t1]:2017.01.01
d2[`t2]:2018.01.01
d2[`idx]:42
Run Code Online (Sandbox Code Playgroud)

有解决方法吗?为了更好的可读性,我想逐键(逐行)填充字典。实际上,它更长。

kdb

2
推荐指数
1
解决办法
191
查看次数

KDB 字符串到 kdb `timestamp`

kdb凡人/神!!

我有一个日期时间字符串数组,但格式不同

> leads[`firstConversion]
"Wed May 20 2020 08:56:54 GMT-0700 (PDT)"
"Wed May 20 2020 08:56:56 GMT-0700 (PDT)"
"Wed May 20 2020 08:56:56 GMT-0700 (PDT)"
"Wed May 20 2020 08:56:56 GMT-0700 (PDT)"
"Wed May 20 2020 08:56:57 GMT-0700 (PDT)"
"Wed May 20 2020 08:56:58 GMT-0700 (PDT)"
"Wed May 20 2020 08:56:58 GMT-0700 (PDT)"
"Wed May 20 2020 08:56:59 GMT-0700 (PDT)"
"Wed May 20 2020 08:57:00 GMT-0700 (PDT)"
"Wed May 20 2020 08:57:01 GMT-0700 (PDT)"
"Wed May 20 2020 09:06:32 GMT-0700 …
Run Code Online (Sandbox Code Playgroud)

kdb

2
推荐指数
1
解决办法
1416
查看次数