首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >无法连接到python中的snappydata存储

无法连接到python中的snappydata存储
EN

Stack Overflow用户
提问于 2017-08-24 09:57:27
回答 2查看 164关注 0票数 0

我正在运行snappydata v0.9的docker镜像。从该映像内部,我可以对数据库运行查询。但是,我不能从我的机器上的第二台服务器上执行此操作。

我将python文件从snappydata复制到安装的pyspark中(在导入中编辑snappysession到SnappySession ),并且(基于对Unable to connect to snappydata store with spark-shell command的回答),我编写了以下脚本(这是一些货物崇拜编程,因为我是从docker镜像中的python代码复制的--欢迎提出改进建议):

代码语言:javascript
复制
import pyspark
from pyspark.context import SparkContext
from pyspark.sql import SparkSession, SQLContext
from pyspark.sql.snappy import SnappyContext
from pyspark.storagelevel import StorageLevel
SparkContext._ensure_initialized()

spark = SparkSession.builder.appName("test")  \
                            .master("local[*]") \
                            .config("snappydata.store.locators", "localhost:10034") \
                            .getOrCreate() 

spark.sql("SELECT col1, min(col2) from TABLE1")

然而,我得到了一个回溯:

代码语言:javascript
复制
pyspark.sql.utils.AnalysisException: u'Table or view not found: TABLE1

我已经向wireshark验证了我的程序正在与docker镜像通信(TCP follow流显示回溯消息和scala回溯)。我的假设是snappydata集群中的权限设置是错误的,但是浏览日志和配置并没有显示任何明显的信息。

我该如何继续呢?

-编辑1

我正在运行的新代码(仍然得到相同的错误),结合了配置中的更改建议,并确保我获得了一个SnappySession:

代码语言:javascript
复制
from pyspark.sql.snappy import SnappySession
snappy = SnappySession.builder.appName("test")  \
                              .master("local[*]") \
                              .config("spark.snappydata.connection", "localhost:1527") \
                              .getOrCreate() 

snappy.sql("SELECT col1, min(col2) from TABLE1")
EN

回答 2

Stack Overflow用户

发布于 2017-08-24 10:20:44

您是否可以将您的配置更改为以下内容-

.config("spark.snappydata.connection",“本地主机:1527”)

0.9中不再有'snappydata.store.locators‘属性。您可以在此处参考文档- https://github.com/SnappyDataInc/snappydata/blob/master/docs/deployment.md#connectormode

票数 0
EN

Stack Overflow用户

发布于 2017-08-24 11:05:04

此外,您还需要创建一个SnappySession来访问快捷的托管表。就像这样……

代码语言:javascript
复制
spark = SparkSession.builder.appName("test")  \
                        .master("local[*]") \
                        .config("spark.snappydata.connection", "localhost:1527") \
                        .getOrCreate() 
snappy = SnappySession(spark)
snappy.sql("SELECT col1, min(col2) from TABLE1")
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/45851791

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档