Apache spark 是否可以在SQL联接中引用数据帧?
我想知道如何利用spark SQL进行内存处理。当前支持使用内存中对象(如果有)运行spark SQL的方法有哪些Apache spark 是否可以在SQL联接中引用数据帧?,apache-spark,hive,apache-spark-sql,spark-dataframe,Apache Spark,Hive,Apache Spark Sql,Spark Dataframe,我想知道如何利用spark SQL进行内存处理。当前支持使用内存中对象(如果有)运行spark SQL的方法有哪些 是否可以将CREATE TABLE语句的目标设置为内存中的表 是否可以在FROM子句中引用内存中的对象,例如数据帧 我目前对spark的理解是有限的,所以如果我的问题太简单,请原谅。如果您能提供任何建议或指导,我将不胜感激。DataFrame是Spark RDD的SQL包装器。 RDD是不可变的(您不能更改它们),但可以从中转换或创建新的RDD 您可以将数据帧注册为临时表 //
- 是否可以将
CREATE TABLE语句的目标设置为内存中的表
- 是否可以在
子句中引用内存中的对象,例如数据帧FROM
我目前对spark的理解是有限的,所以如果我的问题太简单,请原谅。如果您能提供任何建议或指导,我将不胜感激。DataFrame是Spark RDD的SQL包装器。 RDD是不可变的(您不能更改它们),但可以从中转换或创建新的RDD 您可以将数据帧注册为临时表 //将数据帧注册为表
peopleDataFrame.RegisterEmptable(“人”)
然后运行selectsqls以获得结果
//可以使用sqlContext提供的SQL方法运行SQL语句
val results=sqlContext.sql(“从人中选择名称”)
因此,只要dataframe支持,运行任何选择查询都不应该是问题
但由于不变性,我怀疑创建表是否会起作用,也没有意义,因为我们只能执行只读操作
我希望有帮助
谢谢,
Charles。数据帧是Spark RDD的SQL包装器。 RDD是不可变的(您不能更改它们),但可以从中转换或创建新的RDD 您可以将数据帧注册为临时表 //将数据帧注册为表
peopleDataFrame.RegisterEmptable(“人”)
然后运行selectsqls以获得结果
//可以使用sqlContext提供的SQL方法运行SQL语句
val results=sqlContext.sql(“从人中选择名称”)
因此,只要dataframe支持,运行任何选择查询都不应该是问题
但由于不变性,我怀疑创建表是否会起作用,也没有意义,因为我们只能执行只读操作
我希望有帮助
谢谢,
查尔斯。回答得好。谢谢,回答得好。谢谢