class_docstr: A collection of data which can be pre-processed in parallel on Spark.
class_docstr_tok: ["A","collection","of","data","which","can","be","pre-processed","in","parallel","on","Spark","."]
code: def _get_spark_df_schema(self):
      if "spark_df_schema" in self.type:
          return self.type["spark_df_schema"]
  
      if (
          "class_name" not in self.type
          or self.type["class_name"] == "pandas.core.frame.DataFrame"
      ):
          (
              class_name,
              pdf_schema,
              sdf_schema,
          ) = self._get_schema_class_name()
          self.type["class_name"] = class_name
          self.type["schema"] = pdf_schema
          self.type["spark_df_schema"] = sdf_schema
          return self.type["spark_df_schema"]
      return None
  
imports: from py4j.protocol import Py4JError
  from bigdl.orca.data.utils import *
  from bigdl.orca import OrcaContext
  from bigdl.dllib.utils.common import get_node_and_core_number, get_spark_sql_context, get_spark_context
  from bigdl.dllib.utils import nest
  from bigdl.dllib.utils.log4Error import invalidInputError
  import numpy
  from typing import TYPE_CHECKING, Any
  from typing import Callable, Dict, List, Optional, Tuple, Union
label_desc: Use image node_id 35 for calling the SparkXShards obj's underlying member method code with example usage: obj._get_spark_df_schema() and returns: None, self, self