我对HDFql的可用性有一些疑问:
我要创建的表格中包含1到2 ^ n行的任何内容,无法事先确定。
答案 0 :(得分:1)
以下是有关HDFql的问题的一些信息:
如果通过“ HDFql支持创建了一个表格,其中行的类型不同”,则表示HDFql支持复合数据类型,答案尚不清楚。
要将数据附加到数据集中(其大小无法事先确定),您必须经历几个步骤(我将假设您使用的是C编程语言):
2.1。数据集必须是可扩展的。例如,您可以在HDFql中创建一个可扩展的数据集,如下所示(这将创建一个名为dset
的整数数据类型的数据集,其大小不受限制):
hdfql_execute("CREATE CHUNKED DATASET dset AS INT(UNLIMITED)");
2.2。使用hyperslab在数据集dset
的最后一行写一个值,如下所示(将my_value
替换为您要写入数据集的整数):
hdfql_execute("INSERT INTO dset(-1:1:1:1) VALUES(my_value)");
2.3。将值写入数据集dset
并且如果要写入更多值,首先增加(即更改)一个单位的维度,如下所示,然后重复步骤2.2。:
hdfql_execute("ALTER DIMENSION dset TO (+1)");
dset
的行,您必须首先阅读它,然后使用函数hdfql_cursor_get_int()
,如下所示: hdfql_execute("SELECT FROM dset");
while(hdfql_cursor_next(NULL) == HDFQL_SUCCESS)
{
printf("Value: %d\n", *hdfql_cursor_get_int(NULL));
}