class_docstr: manage RDDTable
code: def _load(self, uri: URI, schema, options: dict = None) -> "Table":
      if not options:
          options = {}
      partitions = options.get("partitions", None)
  
      if uri.scheme == "hdfs":
          in_serialized = (options.get("in_serialized", True),)
          id_delimiter = (options.get("id_delimiter", ","),)
          table = from_hdfs(
              paths=uri.original_uri,
              partitions=partitions,
              in_serialized=in_serialized,
              id_delimiter=id_delimiter,
          )
          table.schema = schema
          return table
  
      if uri.scheme == "hive":
          try:
              (path,) = uri.path_splits()
              database_name, table_name = path.split(".")
          except Exception as e:
              raise ValueError(
                  f"invalid hive uri {uri}, demo uri: hive://localhost:10000/database.table"
              ) from e
          table = from_hive(
              tb_name=table_name,
              db_name=database_name,
              partitions=partitions,
          )
          table.schema = schema
          return table
  
      if uri.scheme == "file":
          in_serialized = (options.get("in_serialized", True),)
          id_delimiter = (options.get("id_delimiter", ","),)
          table = from_localfs(
              paths=uri.path,
              partitions=partitions,
              in_serialized=in_serialized,
              id_delimiter=id_delimiter,
          )
          table.schema = schema
          return table
  
      raise NotImplementedError(
          f"uri type {uri} not supported with spark backend"
      )
  
file_path: FATE/python/fate/arch/computing/backends/spark/_csession.py
imports: import logging
  import typing
  from typing import Iterable
  from fate.arch.computing.api import KVTableContext
  from fate.arch.unify import URI
  from ._table import from_hdfs, from_hive, from_localfs, from_rdd
label_desc: Use image node_id 2 for calling the CSession obj's underlying member method code with example usage: obj._load(uri, schema, options) and returns: table, table, table