我使用过snappy-sql并在那里创建了一些表并进行了一些插入和查询......一切正常
然后,因为我需要从csv文件导入大量数据,所以我创建了一个scala脚本来读取每个文件并提取数据并尝试插入数据库
为此,我使用了snappydata附带的火花,我使用
连接./ bin / spark-shell --conf spark.snappydata.store.sys-disk-dir = snappydatadir --conf spark.snappydata.store.log-file = snappydatadir / quickstart.log
目录存在且所有内容都运行" " ok" ...(不完全正确)
这是问题...当我尝试对我在snappy-sql中创建的表进行查询时... spark-shell告诉我表不存在...当脚本到达时insert命令发生相同的
所以我的问题,因为我是新生儿...
如何连接到spark-shell(snappydir / bin / spark-shell ...)并使用snappydata中已存在的表?
我打赌我点头添加一些特定的配置......
感谢您的帮助...正如我所说的......我在snappydata和spark中不太基本,所以我感觉有点迷失,试图配置和设置我的环境...
答案 0 :(得分:0)
要将CSV数据导入SnappyData,您可以创建外部表并使用' insert into'命令导入数据。你不必使用spark-shell,只需使用snappy-sql shell。例如:
-- this assumes locator is running on the localhost
snappy> connect client 'localhost:1527';
-- create an external table
snappy> CREATE EXTERNAL TABLE table1_staging (col1 int, col2 int, col3 string) USING csv OPTIONS (path ‘path_to_csv_file’);
--import data into table1
snappy>insert into table1 select * from table1_staging;
path_to_csv_file应该可以在所有服务器上使用。有关导入数据的其他方法,请参阅文档中的how-to部分。
要使用spark-shell,请使用属性snappydata.connection
连接到SnappyData集群。此属性的值将为' locatorHost:clientConnectionPort' (默认客户端连接端口为1527)
例如:
bin/spark-shell --master local[*] --conf spark.snappydata.connection=localhost:1527 --conf spark.ui.port=4041
有关如何使用spark-shell进行连接的更多详细信息,请参阅documentation。