所以这是设置。
目前,我有两个Spark应用程序已初始化。我需要在它们之间传递数据(最好通过共享的sparkcontext /
sqlcontext,以便我可以查询临时表)。我目前使用Parquet Files进行数据帧传输,但是还有其他方法吗?
MasterURL指向同一SparkMaster
通过终端启动Spark:
/opt/spark/sbin/start-master.sh;
/opt/spark/sbin/start-slave.sh spark://`hostname`:7077
Java应用设置:
JavaSparkContext context = new JavaSparkContext(conf);
//conf = setMaster(MasterURL), 6G memory, and 4 cores.
SQLContext sqlContext = new SQLContext(parentContext.sc());
然后我稍后注册一个现有框架
//existing dataframe to temptable
df.registerTempTable("table");
和
星火
sc <- sparkR.init(master='MasterURL', sparkEnvir=list(spark.executor.memory='6G', spark.cores.max='4')
sqlContext <- sparkRSQL.init(sc)
# attempt to get temptable
df <- sql(sqlContext, "SELECT * FROM table"); # throws the error
据我所知,鉴于您当前的配置,这是不可能的。使用创建的表registerTempTable
绑定到SQLContext
用于创建的特定表DataFrame
。即使您的Java和SparkR应用程序使用相同的主服务器,它们的驱动程序也可以在单独的JVM上运行,并且不能共享一个SQLContext
。
有一些工具(例如Apache
Zeppelin)采用了不同的方法,即将一个SQLContext
(和SparkContext
)暴露给各个后端。这样,您可以使用例如Scala注册表并从Python读取表。有飞艇的一个叉其提供SparkR和R一些支持。您可以检查它如何启动以及如何与R
backend交互
。
问题内容: 在Java中的各个类之间共享数据的最佳方法是什么?我有一堆变量,它们由不同的类以不同的方式在不同的文件中使用。让我尝试说明问题的简化版本: 这是我之前的代码: 现在看起来像这样: 所以无论如何,我应该每次都传递x和y(其中x,y是存储在辅助类func中的变量)吗? 我的想法是要有一个特殊的容器类,其中存放x和y。顶级类将具有容器类的实例,并使用set方法更改x,y。 我的帮助程序类还将
问题内容: 我有一些cookie存储在http://sub1.myserver.com中 ,我希望能够在http://myserver.com中看到它们。 问题答案: 我能够使用以下代码来做到这一点:
问题内容: 我有以下问题。我编写了一个函数,该函数将列表作为输入并为列表中的每个元素创建一个字典。然后,我想将此字典追加到新列表中,以便获得字典列表。我正在尝试为此生成多个进程。我在这里的问题是,我希望不同的进程访问字典列表,因为它由其他进程更新,例如,一旦达到一定长度,就打印一些东西。 我的例子是这样的: 现在我的问题是每个过程都创建自己的过程。有没有一种方法可以在进程之间共享列表,以便所有字典
问题内容: 是否有使用节点,表达和redis / predis共享PHPSESSID的最新指南(或示例代码)? 我发现有1-2年的一些教程,它们都使用旧版本的Express或不使用Express。 Express cookie解析器也已弃用。 https://simplapi.wordpress.com/2012/04/13/php-and-node-js-session-share- redi/
我正在做一个phonegap应用程序,我不能在index.html和inappbrowser窗口之间共享数据。我尝试了这段代码,但它对我不起作用。 我还尝试使用localStorage,但只将inappbrowser的数据共享到index.js,而不是将index.js的数据共享到inappbrowser。
我有两个问题。我理解,如果我在cookie中指定域为(带前导点),那么所有子域都可以共享一个cookie。 是否可以访问在中创建的cookie(没有子域)? 如果在中创建,(没有子域)是否可以访问cookie?