如何在 SnappyData 中存储 Array 或 Blob?

How to store Array or Blob in SnappyData?

我正在尝试创建一个 table,其中包含如下两列:

CREATE TABLE test (col1 INT ,col2 Array<Decimal>) USING column options(BUCKETS '5');

创建成功,但是当我尝试向其中插入数据时,它不接受任何格式的数组。我尝试了以下查询:

insert into test1 values(1,Array(Decimal("1"), Decimal("2")));

insert into test1 values(1,Array(1,2));

insert into test1 values(1,[1,2,1]);

insert into test1 values(1,"1,2,1");

insert into test1 values(1,<1,2,1>);

etc..

请帮忙!

有一个开放票证:https://jira.snappydata.io/browse/SNAP-1284 将在下一个版本中解决 VALUES 字符串(JSON 字符串和 Spark 兼容字符串)。

Spark Catalyst 兼容格式将起作用:

insert into test1 select 1, array(1, 2);

选择时,数据默认以序列化形式发送并显示为二进制。现在你必须使用 "complexTypeAsJson" 提示显示为 JSON:

select * from test1 --+complexTypeAsJson(true);

默认情况下以更简单的字符串格式显示的支持将在下一个版本中添加。

在您的示例中可以注意到的另一件事是存储桶的素数。这在以前的版本中被记录为首选,但从 1.0 版本开始,建议使用 2 的幂或某个偶数(例如,集群中的核心总数可能是一个不错的选择)——也许一些示例仍在使用较旧的建议。