Спасибо @Kishore.
На самом деле в PySpark код выглядит так:
import pyspark
from pyspark import SparkContext
from pyspark.sql import Row
from pyspark import SparkConf
from pyspark.sql import HiveContext
from pyspark.sql import functions as F
import pyspark.sql.types as T
def connection(self):
conf = pyspark.SparkConf()
conf.setMaster('yarn-client')
sc = pyspark.SparkContext(conf=conf)
self.cursor = HiveContext(sc)
self.cursor.setConf("hive.exec.dynamic.partition", "true")
self.cursor.setConf("hive.exec.dynamic.partition.mode", "nonstrict")
self.cursor.setConf("hive.warehouse.subdir.inherit.perms", "true")
self.cursor.setConf('spark.scheduler.mode', 'FAIR')
и вы можете запросить, используя:
rows = self.cursor.sql("SELECT someone FROM something")
for row in rows.collect():
print row
Я на самом деле запускаю код с помощью команды:
spark-submit --master yarn MyProgram.py
Полагаю, вы могли бы в основном запустить python с установленным pyspark, как:
python MyProgram.py
но я не пробовал, поэтому не буду уверять, что он работает