问题标签 [snappydata]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
365 浏览

scala - 如何使用 JDBC 连接以行存储模式在 snappydata 表中加载 CSV 数据

嗨,我开始学习 snappydata 行存储链接,我尝试了所有示例它的工作,但我需要将 csv、json 数据存储在 snappydata 表中,在示例中他们使用手动连接 snappy-shell 并创建表和插入记录,以及 JDBC 客户端链接的另一个选项,我尝试过这种方式,但我不知道如何加载 csv 并存储在 snappy 表中,然后我尝试了另一种方法在 snappydata 存储中基于直接查询的访问也链接,如果有人知道如何使用 jdbc 将 csv 数据存储在 snappytable 中,请分享给我,谢谢..

0 投票
1 回答
88 浏览

join - SnappyData 与索引并置连接

我想在 SnappyData 中的两个表上进行并置连接,为了进一步加快连接速度,如果我还在两个表的连接列上创建索引会有所帮助吗?

更具体地说,这两个表会非常大,如果在大规模上它是成对分区连接,并且在每对分区中,可以使用索引嵌套循环连接代替天真的嵌套循环,这对我来说是理想的加入。

我无法找到这方面的示例或教程,任何解释或指示将不胜感激。

提前致谢!

更新:

这两个表在#rows 方面很大,并且表的列很少(3 - 4 列,所有整数类型):

我想加入并Table1获得类似的结果Table2Col_B

因此,我更喜欢水平分区(使用行表)连接列上的两个连接表Col_B,而不是使用列表。并使用 co-located join 来减少数据混洗。

即使分区后,分区可能仍然太大,因此我想知道是否可以在每个分区中独立创建索引Col_B并将其用于索引连接?在我看来,在 SnappyData 中,我只能在整个列上创建索引,而不是为每个分区独立创建索引。

0 投票
1 回答
156 浏览

java - SnappyData(表未显示在集群中)

我已经为 Java 中的快速数据创建了一个程序。我无法在集群中获取表名。我也无法理解日志文件。有什么提示吗?

0 投票
2 回答
107 浏览

sql - sql 从另一个表 snappydata 更新表

嗨,我正在使用 SnappyData 的 sql 实用程序从另一个表更新我的表,比如Table_A使用来自Table_B.

理想情况下,MERGE将是理想的(如果匹配则更新,或者如果带有键的行不存在则插入Table_A

但是 SnappyData(或 Gemfire)不支持 MERGE,因此我计划先插入一个外连接来处理新的 col_key 行,然后更新以更新Table_A 同样col_key出现在Table_B.

然而, Gemfire似乎也不支持“update ... set ... from ...”

那么有没有办法在 SnappyData sql 语句中实现“update .. set .. from ..”?提前致谢 :)

0 投票
2 回答
91 浏览

sql - SnappyData SQL PUT INTO 不更新值

您好我正在使用 SnappyData 并尝试使用以下Table_A行进行更新Table_B

由于Table_B将包含 (key1, key2) 中已存在的值Table_A,因此应替换Table_A. 所以我使用“ PUT INTO ”而不是“INSERT INTO”语句来更新存储在Table_A

我的 PUT INTO 语句如下所示:

但是 中的行Table_B没有出现在 中Table_A

但是,如果我直接插入值:

行 (1, 1, 1) 确实出现在Table_A. 如果我使用插入:

中的行Table_B显示在 中Table_A,直到出现 dup key 错误并且我的程序退出。

我尝试了单列主键(即key1),但仍然没有运气。

那么我在这里做错了什么?还是“PUT INTO”不起作用或“PUT INTO”语句有延迟?

更新:

我使用的是 SnappyData 本地模式,我只是尝试了集群模式并在这里遇到了一些错误(奇怪的是它不会在本地模式下抛出错误,而是它只是不能静默工作。)

0 投票
1 回答
104 浏览

sql - SnappyData snappy-sql PUT INTO 导致错误:spark.sql.execution.id 已设置

我正在使用 SnappyData SQL shell(snappy-sql) 并运行 sql 语句 (PUT INTO) 并遇到错误:

这就是我所做的:从https://www.snappydata.io/download (v0.8) 下载 SnappyData 二进制文件。解压,跑

搜索错误(spark.sql.execution.id 已设置)导致此处: https ://issues.apache.org/jira/browse/SPARK-13​​747 (SQL 中的并发执行不适用于 Scala ForkJoinPool)似乎是 Spark 2.2.0 中修复的错误。

这可能是由于 SnappyData 仍在使用 spark 2.0(至少现在在 github 中它说已移至 spark 2.0)。但我不确定。

现在,如果可能,我尝试使用PUT INTOSnappyData 中的语句,如果有人可以帮助我解决这个问题,我将不胜感激。提前致谢 :)

0 投票
2 回答
157 浏览

join - SnappyData 并置连接在一个物理服务器设置中

我正在连接两个表,其中 SnappyData 中的大量行(当前为 100M - 1B)配置在一台具有 64 个 CPU 内核和 512GB 内存的服务器中,并且希望使用并置连接。然而,文档中的描述似乎暗示并置连接发生在每个节点级别。

我需要的实际上是每个桶级别的并置连接(或分区连接),并且我没有充分利用服务器,因为大部分时间总 CPU 利用率约为 10% 或更少。

对于连接,我使用的是 Rowstore 和 SQL 语句。我使用单节点设置脚本 (snappy-start-all.sh) 设置了 SnappyData,其中包含一个线索、一个服务器和一个定位器,并进行了一些自定义以使用更多的内存和 CPU 内核:

会议/领导

配置/服务器

conf/定位器

我无法弄清楚如何解决这个问题,我的问题是:

  1. 并置连接究竟是如何工作的?并置连接发生在每个节点级别或每个存储桶级别还是介于两者之间?除了设置桶号之外,我还有什么可以调整的吗?
  2. 除了并置连接之外,在连接列上创建索引是否有帮助?
  3. 配置是否适合我的工作量?还是应该设置多个服务器以充分利用资源?
  4. 如果我的设置看起来没问题,低 CPU 利用率可能是由于偏斜的哈希分区方案,我在哪里可以调整分区方案以避免偏斜分区?

任何关于上述任何问题的信息或指针(很抱歉在一篇文章中提出了很多问题)将不胜感激:)

更新:

两行表的 schema 是这样的(列都是 Integer 类型):

连接结果将包含: Table_C(key1, key2, value1, value2, value3, value4, value5)

key1 可以是~200 个不同的值,key2 可以是~2M 个不同的值。并且 (key1, key2) 分布是倾斜的并且不是唯一的——少数(<5%)非常频繁,而大多数不是。

0 投票
1 回答
181 浏览

java - snappydata 无法使用 Java 的 Smart Connector 从现有 Spark 安装访问 SnappyData 存储

我尝试通过智能连接器样式连接到 SnappyData 存储,如http://snappydatainc.github.io/snappydata/howto/#how-to-access-snappydata-store-from-an-existing-spark-installation-using中的描述-smart-connector,但得到了由 java.nio.BufferUnderflowException 引起的 com.gemstone.gemfire.SerializationException 根。

这是堆栈跟踪:

这是代码:

这是集群中的配置:

0 投票
1 回答
93 浏览

csv - SnappyData 将数据从多个 csv 文件导入列或行表

我是 SnappyData 的新手,我正在尝试将大量数据导入其中。因此,数据是从不同的来源创建的,并以 csv 文件的形式存储到每个位置的 zip 文件中。假设 zip 的结构是 zip1、zip2... zipn,每个 zip 包含完全相同的(header.csv、detail1.csv、detail2.csv、... detail15.csv)每个 .csv 具有相同的结构,这意味着来自 zip1 的 detail5.csv 与来自 zipn 的 detail5.csv 具有相同的列。所以我的问题是如何自动化导入?这样一堆数据有导入命令吗?第一次很容易,因为我使用创建外部表,但是如何导入其余的 idata?或者,更好的是,我如何将所有数据导入列(因为我们有很多数据)或行(因为我们可以根据数据来自的位置对数据进行分区)表?

0 投票
1 回答
59 浏览

postgresql - SnappyData 数据类型兼容性

当我创建一个新数据库并将架构结构从 Postgresql 导入到 SnappyData 时,我正在处理关于使用什么来替换每种数据类型的问题。首先,使用什么来获得与时间戳、实数、双精度、长(坐标)和字符串兼容的数据?我在帮助和文档中进行了搜索,但没有找到一个很好的解释......