问题标签 [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.
scala - 如何将嵌入式火花与现有的 SnappyData 一起使用
我使用了 snappy-sql,在那里我创建了一些表并进行了一些插入和查询……一切正常
然后,由于我需要从 csv 文件中导入大量数据,我创建了一个 scala 脚本,该脚本读取每个文件并提取数据并尝试插入数据库
为此,我使用 snappydata 附带的 spark,我使用
./bin/spark-shell --conf spark.snappydata.store.sys-disk-dir=snappydatadir --conf spark.snappydata.store.log-file=snappydatadir/quickstart.log
该目录存在并且一切都“运行”“好的”......(不太正确)
这是问题...当我尝试对我在 snappy-sql 中创建的表进行查询时... spark-shell 告诉我这些表不存在...并且当脚本到达插入命令时发生相同
所以我的问题,因为我是新手...
如何连接到该 spark-shell (snappydir/bin/spark-shell...) 并使用 snappydata 中已经存在的表?
我敢打赌我会点头添加一些特定的配置......
感谢您的帮助......正如我所说......我在 snappydata 和 spark 方面还不够基本,所以我在尝试配置和设置我的环境时感到有点失落......
scala - SnappyData Spark Scall java.sql.BatchUpdateException
因此,我有大约 35 GB 的 zip 文件,每个文件包含 15 个 csv 文件,我创建了一个 scala 脚本来处理每个 zip 文件和每个 zip 文件中的每个 csv 文件。
问题是在一些文件数量之后脚本午餐这个错误
错误执行程序:阶段 114.0 (TID 3145) 中任务 0.0 中的异常 java.io.IOException: java.sql.BatchUpdateException: (Server=localhost/127.0.0.1[1528] Thread=pool-3-thread-63) XCL54.T : [0] 插入键 [7243901, 7243902,
并且字符串继续所有未插入的键(记录)。
所以我发现显然(我说显然是因为我缺乏关于scala和snappy和spark的知识)正在使用的内存已满......我的问题......我如何增加内存的大小用过的?或者如何清空内存中的数据并将其保存在磁盘中?
我可以关闭开始的会话并释放内存吗?我不得不重新启动服务器,删除处理过的文件,然后我可以继续导入,但是在其他一些文件之后......再次......同样的例外
我的 csv 文件很大......最大的文件大约 1 GB,但这个异常不仅发生在大文件中,而且在累积多个文件时......直到达到某个大小......所以我在哪里更改内存使用大小?
我有 12GB 内存...
snappydata - SnappyData 数据库模式可以与 hive 元数据存储共存吗?
我在 SnappyData 0.9 中创建了一个数据库模式,其中包含一些基于行的表,而没有连接配置单元元数据存储。稍后,我在 hive-site.xml 文件中添加 hive.metastore.uris 属性并让 SnappyData 连接到它。令我惊讶的是,领导服务抱怨“检测到目录不一致”并开始删除所有表。
所以,我的问题是 - 我可以让 SnappyData 行基表和配置单元表在 SnappyData 中共存吗?
apache-spark - 在 Spark 实时流中刷新数据帧而不停止进程
在我的应用程序中,我从 Kafka 队列中获取了一个帐户流(使用带有 kafka 的 Spark 流)
而且我需要从 S3 获取与这些帐户相关的属性,因此我计划缓存 S3 结果数据帧,因为 S3 数据现在至少一天不会更新,它可能会在未来很快更改为 1 小时或 10 分钟。所以问题是如何在不停止进程的情况下定期刷新缓存的数据帧。
**更新:我计划在 S3 中有更新时将事件发布到 kafka,使用 SNS 和 AWS lambda,我的流应用程序将订阅该事件并根据此事件刷新缓存的数据帧(基本上是 unpersist()cache 和从 S3 重新加载)这是一个好方法吗?
java - SnappyData 作为操作数据库。推荐吗?
我正在测试一个新应用程序的数据库,我必须在其中浏览和索引数百万个 xmls 文件,然后生成对这些数据的分析。
我会在这个项目中使用 SnappyData。但是,我不知道它是如何工作的。
是否推荐用于此类应用程序?
是否可以将它与 Spring-Data-JPA 一起使用?
除了存储 xmls 本身之外,我还想将应用程序的其他数据(用户和系统设置)存储在同一个数据库而不是 PostgreSQL 中。推荐吗?
python - 无法连接到 python 中的 snappydata 存储
我正在运行 snappydata v0.9 的 docker 映像。从该图像内部,我可以对数据库运行查询。但是,我不能从我机器上的第二台服务器上这样做。
我将 python 文件从 snappydata 复制到安装的 pyspark (在导入中将 snappysession 编辑为 SnappySession)和(基于Unable to connect to snappydata store with spark-shell command的答案),我编写了以下脚本(有点我从 docker 镜像中的 python 代码复制货物狂热的编程——欢迎提出改进建议):
但是,我得到了回溯:
我已经用wireshark 验证了我的程序正在与docker 映像进行通信(TCP 跟踪流显示了回溯消息和scala 回溯)。我的假设是 snappydata 集群中的权限设置错误,但是通过日志和配置 grepping 并没有显示任何明显的东西。
我该如何进行?
-------- 编辑 1 ------------
我正在运行的新代码(仍然出现相同的错误),在配置中包含更改建议并确保我得到一个 SnappySession 是:
snappydata - 将部分数据保存在内存中,部分保存在磁盘中
我有一个包含数百万条记录的列表。我想只保留最近 3 个月的内存,其余的需要在磁盘上,但可以查阅。是否可以在 SnappyData 中执行此操作?
apache-spark - 如何连接到 spark(远程 CDH-5.8 docker vms)?我需要在容器上映射端口 7077 吗?
目前,我可以从我的应用程序内部访问 HDFS,但我也想使用 Cloudera 的 spark,而不是运行我的本地 spark,因为它在 Cloudera Manager 中启用。
现在我在 core-site.xml 中定义了 HDFS,并且我将我的应用程序作为 (--master) YARN 运行。因此我不需要将机器地址设置为我的 HDFS 文件。这样,我的 SPARK 作业在本地而不是在“集群”中运行。我暂时不想要那个。当我尝试将 --master 设置为 [namenode]:[port] 时,它没有连接。我想知道我是否指向正确的端口,或者我是否必须在 docker 容器上映射该端口。或者,如果我缺少有关 Yarn 设置的信息。
此外,我一直在将 SnappyData (Inc) 解决方案作为 Spark SQL 内存数据库进行测试。所以我的目标是在本地运行 snappy JVM,但将 spark 作业重定向到 VM 集群。这里的整个想法是针对一些 Hadoop 实现测试一些性能。这个解决方案不是最终产品(如果 snappy 是本地的,并且 spark 是“真正的”远程的,我相信它不会高效 - 但在这种情况下,我会将 snappy JVM 带到同一个集群中......)
提前致谢!
sql - Snappydata SQL WITH 语句
我正在使用 Snappydata 运行一些查询,并使用 sql with 语句:
此sql代码在本地模式下运行时运行良好,但是当我将编译好的jar文件提交到Snappydata集群时,它会抛出一个错误,说表“APP.X”不存在,
知道为什么会这样吗?
snappydata - SnappyData 多个作业实现并行
我正在使用 Snappydata 和 SQL 来运行一些分析,但是这项工作很慢,并且涉及对非常大的输入数据的连接操作。
我正在考虑先对输入数据进行分区,然后在不同的分区上同时运行作业以加快进程。但是在我使用的嵌入模式下,我的代码获取了传入的 SnappySession,我可以使用 bin/snappy-sql 来查询表,所以我假设所有 snappydata 作业都将共享相同的 SnappySession(或相同的表命名空间,如据我了解,Postgresql 中的相同数据库)。
所以我假设如果我使用具有不同输入参数的同一个 jar 提交我的作业,那么对于不同的作业,表命名空间将是相同的,从而导致错误。
所以我的问题是:是否可以有多个 snappySession(或多个命名空间,如数据库名称)独立运行一系列操作,最好在一个 snappydata 作业中,以避免同时管理多个作业?