对不起,我是python的新手。在学习 pyspark 时,我遇到了这样的命令
sc = SparkSession.builder.config("spark.sql.warehouse.dir", "file:///C:/temp").appName("SparkSQL").getOrCreate()
我的疑问非常基本,我只想知道在上面的语句中如何多次使用点运算符。根据我的知识,当一个函数位于多个级别的包中时,点运算符将被多次使用,例如
packagemain.subpackage1.subpackage2.function()
但在上面的语句中,"SparkSession"似乎是一个类,"sc"是一个对象,其他可能是函数。我只想知道它们是如何通过点运算符链接在一起的?系统如何解释上述声明?
spark 配置文件是一系列键: 值,用空格分隔,例如: https://spark.apache.org/docs/latest/configuration.html
.config("spark.sql.warehouse.dir", "file:///C:/temp")
指从被引用的文件构建的配置对象,并查找名为 spark.sql.warehouse.dir
的键
这只是一个字符串(或者更具体地说,配置文件中键的名称) - 与导入或任何类似内容无关。
它从SparkSession获取构建器。从该构建器中,它使用参数调用配置。这将返回一些配置,然后使用下一个参数调用 appName 函数。然后从中调用getOrCreate()函数。基本上,它返回点之前的调用值,然后计算点代码。