Class

org.apache.spark.sql.execution.datasources

OutputWriterFactory

Related Doc: package datasources

Permalink

abstract class OutputWriterFactory extends Serializable

::Experimental:: A factory that produces OutputWriters. A new OutputWriterFactory is created on driver side for each write job issued when writing to a HadoopFsRelation, and then gets serialized to executor side to create actual OutputWriters on the fly.

Annotations
@Experimental()
Since

1.4.0

Linear Supertypes
Serializable, Serializable, AnyRef, Any
Ordering
  1. Alphabetic
  2. By Inheritance
Inherited
  1. OutputWriterFactory
  2. Serializable
  3. Serializable
  4. AnyRef
  5. Any
  1. Hide All
  2. Show All
Visibility
  1. Public
  2. All

Instance Constructors

  1. new OutputWriterFactory()

    Permalink

Abstract Value Members

  1. abstract def newInstance(path: String, bucketId: Option[Int], dataSchema: StructType, context: TaskAttemptContext): OutputWriter

    Permalink

    When writing to a HadoopFsRelation, this method gets called by each task on executor side to instantiate new OutputWriters.

    When writing to a HadoopFsRelation, this method gets called by each task on executor side to instantiate new OutputWriters.

    path

    Path of the file to which this OutputWriter is supposed to write. Note that this may not point to the final output file. For example, FileOutputFormat writes to temporary directories and then merge written files back to the final destination. In this case, path points to a temporary output file under the temporary directory.

    dataSchema

    Schema of the rows to be written. Partition columns are not included in the schema if the relation being written is partitioned.

    context

    The Hadoop MapReduce task context.

    Since

    1.4.0

Concrete Value Members

  1. final def !=(arg0: Any): Boolean

    Permalink
    Definition Classes
    AnyRef → Any
  2. final def ##(): Int

    Permalink
    Definition Classes
    AnyRef → Any
  3. final def ==(arg0: Any): Boolean

    Permalink
    Definition Classes
    AnyRef → Any
  4. final def asInstanceOf[T0]: T0

    Permalink
    Definition Classes
    Any
  5. def clone(): AnyRef

    Permalink
    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  6. final def eq(arg0: AnyRef): Boolean

    Permalink
    Definition Classes
    AnyRef
  7. def equals(arg0: Any): Boolean

    Permalink
    Definition Classes
    AnyRef → Any
  8. def finalize(): Unit

    Permalink
    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( classOf[java.lang.Throwable] )
  9. final def getClass(): Class[_]

    Permalink
    Definition Classes
    AnyRef → Any
  10. def hashCode(): Int

    Permalink
    Definition Classes
    AnyRef → Any
  11. final def isInstanceOf[T0]: Boolean

    Permalink
    Definition Classes
    Any
  12. final def ne(arg0: AnyRef): Boolean

    Permalink
    Definition Classes
    AnyRef
  13. def newWriter(path: String): OutputWriter

    Permalink

    Returns a new instance of OutputWriter that will write data to the given path.

    Returns a new instance of OutputWriter that will write data to the given path. This method gets called by each task on executor to write InternalRows to format-specific files. Compared to the other newInstance(), this is a newer API that passes only the path that the writer must write to. The writer must write to the exact path and not modify it (do not add subdirectories, extensions, etc.). All other file-format-specific information needed to create the writer must be passed through the OutputWriterFactory implementation.

    Since

    2.0.0

  14. final def notify(): Unit

    Permalink
    Definition Classes
    AnyRef
  15. final def notifyAll(): Unit

    Permalink
    Definition Classes
    AnyRef
  16. final def synchronized[T0](arg0: ⇒ T0): T0

    Permalink
    Definition Classes
    AnyRef
  17. def toString(): String

    Permalink
    Definition Classes
    AnyRef → Any
  18. final def wait(): Unit

    Permalink
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  19. final def wait(arg0: Long, arg1: Int): Unit

    Permalink
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  20. final def wait(arg0: Long): Unit

    Permalink
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )

Inherited from Serializable

Inherited from Serializable

Inherited from AnyRef

Inherited from Any

Ungrouped