trait ColumnarWriteTaskStatsTracker extends AnyRef
A trait for classes that are capable of collecting statistics on columnar data that's being processed by a single write task in GpuFileFormatDataWriter - i.e. there should be one instance per executor.
newPartition event is only triggered if the relation to be written out is partitioned.
- Alphabetic
- By Inheritance
- ColumnarWriteTaskStatsTracker
- AnyRef
- Any
- Hide All
- Show All
- Public
- All
Abstract Value Members
-
abstract
def
closeFile(filePath: String): Unit
Process the fact that a file is finished to be written and closed.
Process the fact that a file is finished to be written and closed.
- filePath
Path of the file.
-
abstract
def
getFinalStats(taskCommitTime: Long): WriteTaskStats
Returns the final statistics computed so far.
Returns the final statistics computed so far.
- taskCommitTime
Time of committing the task.
- returns
An object of subtype of
org.apache.spark.sql.execution.datasources.WriteTaskStats, to be sent to the driver.
- Note
This may only be called once. Further use of the object may lead to undefined behavior.
-
abstract
def
newBatch(filePath: String, batch: ColumnarBatch): Unit
Process a new column batch to update the tracked statistics accordingly.
Process a new column batch to update the tracked statistics accordingly. The batch will be written to the most recently witnessed file (via
newFile).- filePath
Path of the file which the batch is written to.
- batch
Current data batch to be processed.
- Note
Call this function only once per
batchto be written. If the batch is going to be split later because of a retry, that is OK, but don't call newBatch again with the splitted out parts.
-
abstract
def
newFile(filePath: String): Unit
Process the fact that a new file is about to be written.
Process the fact that a new file is about to be written.
- filePath
Path of the file into which future rows will be written.
-
abstract
def
newPartition(): Unit
Process the fact that a new partition is about to be written.
Process the fact that a new partition is about to be written. Only triggered when the relation is partitioned by a (non-empty) sequence of columns. NOTE: The partition values are stubbed for now as the original code only updated a count of partitions without examining the values. //@param partitionValues The values that define this new partition.
Concrete Value Members
-
final
def
!=(arg0: Any): Boolean
- Definition Classes
- AnyRef → Any
-
final
def
##(): Int
- Definition Classes
- AnyRef → Any
-
final
def
==(arg0: Any): Boolean
- Definition Classes
- AnyRef → Any
-
final
def
asInstanceOf[T0]: T0
- Definition Classes
- Any
-
def
clone(): AnyRef
- Attributes
- protected[lang]
- Definition Classes
- AnyRef
- Annotations
- @throws( ... ) @native()
-
final
def
eq(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef
-
def
equals(arg0: Any): Boolean
- Definition Classes
- AnyRef → Any
-
def
finalize(): Unit
- Attributes
- protected[lang]
- Definition Classes
- AnyRef
- Annotations
- @throws( classOf[java.lang.Throwable] )
-
final
def
getClass(): Class[_]
- Definition Classes
- AnyRef → Any
- Annotations
- @native()
-
def
hashCode(): Int
- Definition Classes
- AnyRef → Any
- Annotations
- @native()
-
final
def
isInstanceOf[T0]: Boolean
- Definition Classes
- Any
-
final
def
ne(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef
-
final
def
notify(): Unit
- Definition Classes
- AnyRef
- Annotations
- @native()
-
final
def
notifyAll(): Unit
- Definition Classes
- AnyRef
- Annotations
- @native()
-
final
def
synchronized[T0](arg0: ⇒ T0): T0
- Definition Classes
- AnyRef
-
def
toString(): String
- Definition Classes
- AnyRef → Any
-
final
def
wait(): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws( ... )
-
final
def
wait(arg0: Long, arg1: Int): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws( ... )
-
final
def
wait(arg0: Long): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws( ... ) @native()