Packages

t

org.apache.spark.sql

CreateTableWriter

trait CreateTableWriter[T] extends WriteConfigMethods[CreateTableWriter[T]]

Trait to restrict calls to create and replace operations.

Source
DataFrameWriterV2.scala
Since

3.0.0

Linear Supertypes
Known Subclasses
Ordering
  1. Alphabetic
  2. By Inheritance
Inherited
  1. CreateTableWriter
  2. WriteConfigMethods
  3. AnyRef
  4. Any
  1. Hide All
  2. Show All
Visibility
  1. Public
  2. All

Abstract Value Members

  1. abstract def create(): Unit

    Create a new table from the contents of the data frame.

    Create a new table from the contents of the data frame.

    The new table's schema, partition layout, properties, and other configuration will be based on the configuration set on this writer.

    If the output table exists, this operation will fail with org.apache.spark.sql.catalyst.analysis.TableAlreadyExistsException.

    Annotations
    @throws( ... )
    Exceptions thrown

    org.apache.spark.sql.catalyst.analysis.TableAlreadyExistsException If the table already exists

  2. abstract def createOrReplace(): Unit

    Create a new table or replace an existing table with the contents of the data frame.

    Create a new table or replace an existing table with the contents of the data frame.

    The output table's schema, partition layout, properties, and other configuration will be based on the contents of the data frame and the configuration set on this writer. If the table exists, its configuration and data will be replaced.

  3. abstract def option(key: String, value: String): CreateTableWriter[T]

    Add a write option.

    Add a write option.

    Definition Classes
    WriteConfigMethods
    Since

    3.0.0

  4. abstract def options(options: Map[String, String]): CreateTableWriter[T]

    Add write options from a Java Map.

    Add write options from a Java Map.

    Definition Classes
    WriteConfigMethods
    Since

    3.0.0

  5. abstract def options(options: Map[String, String]): CreateTableWriter[T]

    Add write options from a Scala Map.

    Add write options from a Scala Map.

    Definition Classes
    WriteConfigMethods
    Since

    3.0.0

  6. abstract def partitionedBy(column: Column, columns: Column*): CreateTableWriter[T]

    Partition the output table created by create, createOrReplace, or replace using the given columns or transforms.

    Partition the output table created by create, createOrReplace, or replace using the given columns or transforms.

    When specified, the table data will be stored by these values for efficient reads.

    For example, when a table is partitioned by day, it may be stored in a directory layout like:

    • table/day=2019-06-01/
    • table/day=2019-06-02/

    Partitioning is one of the most widely used techniques to optimize physical data layout. It provides a coarse-grained index for skipping unnecessary data reads when queries have predicates on the partitioned columns. In order for partitioning to work well, the number of distinct values in each column should typically be less than tens of thousands.

    Since

    3.0.0

  7. abstract def replace(): Unit

    Replace an existing table with the contents of the data frame.

    Replace an existing table with the contents of the data frame.

    The existing table's schema, partition layout, properties, and other configuration will be replaced with the contents of the data frame and the configuration set on this writer.

    If the output table does not exist, this operation will fail with org.apache.spark.sql.catalyst.analysis.CannotReplaceMissingTableException.

    Annotations
    @throws( ... )
    Exceptions thrown

    org.apache.spark.sql.catalyst.analysis.CannotReplaceMissingTableException If the table does not exist

  8. abstract def tableProperty(property: String, value: String): CreateTableWriter[T]

    Add a table property.

  9. abstract def using(provider: String): CreateTableWriter[T]

    Specifies a provider for the underlying output data source.

    Specifies a provider for the underlying output data source. Spark's default catalog supports "parquet", "json", etc.

    Since

    3.0.0

Concrete Value Members

  1. def option(key: String, value: Double): CreateTableWriter[T]

    Add a double output option.

    Add a double output option.

    Definition Classes
    WriteConfigMethods
    Since

    3.0.0

  2. def option(key: String, value: Long): CreateTableWriter[T]

    Add a long output option.

    Add a long output option.

    Definition Classes
    WriteConfigMethods
    Since

    3.0.0

  3. def option(key: String, value: Boolean): CreateTableWriter[T]

    Add a boolean output option.

    Add a boolean output option.

    Definition Classes
    WriteConfigMethods
    Since

    3.0.0