将 CSV 文件保存到 kdb+ table

Save CSV file to kdb+ table

我有一个名为 candlesData.csv(~300MB) 的 CSV 文件。我想在 kdb+ 中创建一个名为 candles 的新 table,并在我的应用程序中使用 CSV 数据以便更快地读取它。 我打开一个终端并输入:

show candles:("IJFFFFFJFIFFF"; enlist",") 0: `:path/to/file/candlesData.csv

它完美地显示了所有数据。现在的问题是如何将其永久存储在数据库中。 如果我以 \ 退出并再次键入 q,如果我键入 candles,它会显示错误。

如何将此 CSV 保存到我可以随时获取的 table?以及如何使用 nodeJS 访问此 table?

您可以使用 set 关键字。如果你知道你的数据库路径的根是什么,你可以这样做

`:path/to/db/candles set candles

然后当你再次启动q时,如果你运行

q path/to/db

它应该加载到您的 table

 λ mkdir db
 λ q
KDB+ 3.6 2019.09.19 Copyright (C) 1993-2019 Kx Systems

q)`:db/table set ([] a: 1 2 3)
`:db/table
q)\
 λ q db
KDB+ 3.6 2019.09.19 Copyright (C) 1993-2019 Kx Systems

q)table
a
-
1
2
3
q)

在你的情况下,你会 运行

q)candles:("IJFFFFFJFIFFF"; enlist",") 0: `:path/to/file/candlesData.csv
q)`:path/to/db/candles set candles

对于此类事情,这是一个很好的资源:

https://code.kx.com/q4m3/14_Introduction_to_Kdb+/