Pyspark - Read & Write files from Hive

Pyspark - Read & Write files from Hive

GitHub Page : exemple-pyspark-read-and-write

Common parts

Libraries dependency

Dependencies
from pyspark import SparkContext, SparkConf from pyspark.sql import SparkSession, HiveContext

Set Hive metastore uri

Initialise Hive metastore
SparkContext.setSystemProperty("hive.metastore.uris", "thrift://nn1:9083")

 

Creating Spark Context & Connection

Create Spark Session
sparkSession = (SparkSession .builder .appName('example-pyspark-read-and-write-from-hive') .enableHiveSupport() .getOrCreate()) data = [('First', 1), ('Second', 2), ('Third', 3), ('Fourth', 4), ('Fifth', 5)] df = sparkSession.createDataFrame(data)

How to write a table into Hive?

Code example

Use SQL queries to create a table

Create an Hive table
# Write into Hive df.write.saveAsTable('example')

How to read a table from Hive?

Code example

Use SQL queries to read a table

Create an Hive table
# Read from Hive df_load = sparkSession.sql('SELECT * FROM example') df_load.show()

 

How to use on Data Fabric?

In order to run any PySpark job on Data Fabric, you must package your python source file into a zip file. Pay attention that the file name must be __main__.py

How to use on Data Fabric's Jupyter Notebooks?

Prior to spark session creation, you must add the following snippet:

Notebook configuration
import os os.environ["HADOOP_USER_NAME"] = "hdfs" os.environ["PYTHON_VERSION"] = "3.5.2"

At time of writing only 2 pythons versions are available: 3.5.2 and 2.7.13