aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--python/pyspark/context.py26
-rw-r--r--python/pyspark/sql/session.py11
2 files changed, 37 insertions, 0 deletions
diff --git a/python/pyspark/context.py b/python/pyspark/context.py
index 2961cda553..3be07325f4 100644
--- a/python/pyspark/context.py
+++ b/python/pyspark/context.py
@@ -240,6 +240,32 @@ class SparkContext(object):
if isinstance(threading.current_thread(), threading._MainThread):
signal.signal(signal.SIGINT, signal_handler)
+ def __repr__(self):
+ return "<SparkContext master={master} appName={appName}>".format(
+ master=self.master,
+ appName=self.appName,
+ )
+
+ def _repr_html_(self):
+ return """
+ <div>
+ <p><b>SparkContext</b></p>
+
+ <p><a href="{sc.uiWebUrl}">Spark UI</a></p>
+
+ <dl>
+ <dt>Version</dt>
+ <dd><code>v{sc.version}</code></dd>
+ <dt>Master</dt>
+ <dd><code>{sc.master}</code></dd>
+ <dt>AppName</dt>
+ <dd><code>{sc.appName}</code></dd>
+ </dl>
+ </div>
+ """.format(
+ sc=self
+ )
+
def _initialize_context(self, jconf):
"""
Initialize SparkContext in function to allow subclass specific initialization
diff --git a/python/pyspark/sql/session.py b/python/pyspark/sql/session.py
index 9f4772eec9..c1bf2bd76f 100644
--- a/python/pyspark/sql/session.py
+++ b/python/pyspark/sql/session.py
@@ -221,6 +221,17 @@ class SparkSession(object):
or SparkSession._instantiatedSession._sc._jsc is None:
SparkSession._instantiatedSession = self
+ def _repr_html_(self):
+ return """
+ <div>
+ <p><b>SparkSession - {catalogImplementation}</b></p>
+ {sc_HTML}
+ </div>
+ """.format(
+ catalogImplementation=self.conf.get("spark.sql.catalogImplementation"),
+ sc_HTML=self.sparkContext._repr_html_()
+ )
+
@since(2.0)
def newSession(self):
"""