Parsing q/kdb+;新版本4.0从以前版本读取大型表时发生解析错误
除了保存为csv并在新版本中重新加载之外,还有其他解决方案吗Parsing q/kdb+;新版本4.0从以前版本读取大型表时发生解析错误,parsing,runtime-error,load,q,kdb,Parsing,Runtime Error,Load,Q,Kdb,除了保存为csv并在新版本中重新加载之外,还有其他解决方案吗 KDB+ 4.0 2020.05.04 Copyright (C) 1993-2020 Kx Systems m64/ 8(16)core 32768MB georgelovas ... 127.0.0.1 EXPIRE 2020.08.26 'parse `:../marketdata/tx [0] (.Q.l) KDB+ 3.6 2019.08.20 Copyright (C) 1993-2019 Kx Systems
KDB+ 4.0 2020.05.04 Copyright (C) 1993-2020 Kx Systems
m64/ 8(16)core 32768MB georgelovas ... 127.0.0.1 EXPIRE 2020.08.26
'parse `:../marketdata/tx
[0] (.Q.l)
KDB+ 3.6 2019.08.20 Copyright (C) 1993-2019 Kx Systems
m64/ 8(16)core 32768MB ... 127.0.0.1 EXPIRE 2020.08.26
q)count tx
2521171492
q)
用旧版本
KDB+ 4.0 2020.05.04 Copyright (C) 1993-2020 Kx Systems
m64/ 8(16)core 32768MB georgelovas ... 127.0.0.1 EXPIRE 2020.08.26
'parse `:../marketdata/tx
[0] (.Q.l)
KDB+ 3.6 2019.08.20 Copyright (C) 1993-2019 Kx Systems
m64/ 8(16)core 32768MB ... 127.0.0.1 EXPIRE 2020.08.26
q)count tx
2521171492
q)
表格信息
q)meta tx
c | t f a
------| -----
DATE | d
TICKER| s
FIELD | s
VALUE | f
q)t
DATE TICKER FIELD VALUE
-------------------------------------------------------------------
1998.01.31 XXXXXXX INDEX FIELD_1 -881
1998.01.31 XXXXXXX INDEX FIELD_2 -604
1998.01.31 XXXXXXX INDEX FIELS_3 0
1998.01.31 XXXXXXX INDEX FIElD_4 1.998031e+07
1998.02.28 XXXXXXX INDEX FIELD_1 -544
1998.02.28 XXXXXXX INDEX FIELD_2 -475
1998.02.28 XXXXXXX INDEX FIELS_3 0
1998.02.28 XXXXXXX INDEX FIElD_4 1.998041e+07
我看到您正在使用:
KDB+ 4.0 2020.05.04
阅读发行说明后,在2020.06.18版本中有一个错误修复,即从单个文件中读取作为复合对象一部分的序列化形式的超过2GB的对象会引发3.7t 2019.10.22以来的解析错误。你的版本是3.6。所以这可能是你问题的答案
您是否尝试过在q会话中使用\l加载表?
您的输出似乎显示的错误是从命令行加载数据时出现的。
你能提供更多关于表的组成、元等的信息吗。?
我们可能需要更多关于表元的信息来进行复制。
你能告诉我们tx是什么样子吗?用表格元数据和样本数据更新了原始帖子。。。我做了一些测试,当使用v4.0保存数据时,能够加载高达11G的数据,当数据更大时,会出现解析错误。似乎是prod版本中的一个主要bug?您是否尝试过将kdb更新到2020.06.18版本?