diff options
-rw-r--r-- | python/pyspark/context.py | 26 | ||||
-rw-r--r-- | python/pyspark/sql/session.py | 11 |
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): """ |