Class

org.apache.spark.sql.execution.columnar.impl

IndexColumnFormatRelation

Related Doc: package impl

Permalink

class IndexColumnFormatRelation extends BaseColumnFormatRelation with DependentRelation

Currently this is same as ColumnFormatRelation but has kept it as a separate class to allow adding of any index specific functionality in future.

Linear Supertypes
Ordering
  1. Alphabetic
  2. By Inheritance
Inherited
  1. IndexColumnFormatRelation
  2. DependentRelation
  3. BaseColumnFormatRelation
  4. MutableRelation
  5. RowInsertableRelation
  6. SingleRowInsertableRelation
  7. PartitionedDataSourceScan
  8. JDBCAppendableRelation
  9. Product
  10. Equals
  11. Serializable
  12. Serializable
  13. NativeTableRowLevelSecurityRelation
  14. RowLevelSecurityRelation
  15. Logging
  16. IndexableRelation
  17. PlanInsertableRelation
  18. DestroyRelation
  19. InsertableRelation
  20. PrunedUnsafeFilteredScan
  21. BaseRelation
  22. AnyRef
  23. Any
  1. Hide All
  2. Show All
Visibility
  1. Public
  2. All

Instance Constructors

  1. new IndexColumnFormatRelation(_table: String, _provider: String, _mode: SaveMode, _userSchema: StructType, _schemaExtensions: String, _ddlExtensionForShadowTable: String, _origOptions: Map[String, String], _externalStore: ExternalStore, _partitioningColumns: Seq[String], _context: SQLContext, baseTableName: String)

    Permalink

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 baseTable: Option[String]

    Permalink

    Base table of this relation.

    Base table of this relation.

    Definition Classes
    IndexColumnFormatRelationDependentRelation
  6. def buildRowBufferRDD(partitionEvaluator: () ⇒ Array[Partition], requiredColumns: Array[String], filters: Array[Expression], useResultSet: Boolean, projection: Array[Int]): RDD[Any]

    Permalink
    Definition Classes
    BaseColumnFormatRelation
  7. def buildUnsafeScan(requiredColumns: Array[String], filters: Array[Expression]): (RDD[Any], Seq[RDD[InternalRow]])

    Permalink
  8. def buildUnsafeScanForSampledRelation(requiredColumns: Array[String], filters: Array[Expression]): (RDD[Any], RDD[Any], Seq[RDD[InternalRow]])

    Permalink
    Definition Classes
    BaseColumnFormatRelation
  9. def clone(): AnyRef

    Permalink
    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  10. lazy val clusterMode: ClusterMode

    Permalink
    Definition Classes
    BaseColumnFormatRelation
  11. final val connFactory: () ⇒ Connection

    Permalink
    Attributes
    protected
    Definition Classes
    JDBCAppendableRelationNativeTableRowLevelSecurityRelation
  12. final val connProperties: ConnectionProperties

    Permalink
    Attributes
    protected
    Definition Classes
    JDBCAppendableRelation
  13. val connectionType: ConnectionType.Value

    Permalink
  14. def createExternalTableForColumnBatches(tableName: String, externalStore: ExternalStore): Unit

    Permalink

    Table definition: create table columnTable ( id varchar(36) not null, partitionId integer, numRows integer not null, data blob) For a table with n columns, there will be n+1 region entries.

    Table definition: create table columnTable ( id varchar(36) not null, partitionId integer, numRows integer not null, data blob) For a table with n columns, there will be n+1 region entries. A base entry and one entry each for a column. The data column for the base entry will contain the stats. id for the base entry would be the uuid while for column entries it would be uuid_colName.

    Definition Classes
    BaseColumnFormatRelationJDBCAppendableRelation
  15. def createIndex(indexIdent: QualifiedTableName, tableIdent: QualifiedTableName, indexColumns: Map[String, Option[SortDirection]], options: Map[String, String]): Unit

    Permalink

    Create an index on a table.

    Create an index on a table.

    indexIdent

    Index Identifier which goes in the catalog

    tableIdent

    Table identifier on which the index is created.

    indexColumns

    Columns on which the index has to be created with the direction of sorting. Direction can be specified as None.

    options

    Options for indexes. For e.g. column table index - ("COLOCATE_WITH"->"CUSTOMER"). row table index - ("INDEX_TYPE"->"GLOBAL HASH") or ("INDEX_TYPE"->"UNIQUE")

    Definition Classes
    JDBCAppendableRelationIndexableRelation
  16. def createTable(mode: SaveMode): Unit

    Permalink
  17. def createTable(externalStore: ExternalStore, tableStr: String, tableName: String, dropIfExists: Boolean): Unit

    Permalink
    Definition Classes
    JDBCAppendableRelation
  18. val ddlExtensionForShadowTable: String

    Permalink
    Definition Classes
    BaseColumnFormatRelation
  19. var delayRollover: Boolean

    Permalink
    Attributes
    protected
    Definition Classes
    JDBCAppendableRelation
  20. def destroy(ifExists: Boolean): Unit

    Permalink

    Destroy and cleanup this relation.

    Destroy and cleanup this relation. It may include, but not limited to, dropping the external table that this relation represents.

    Definition Classes
    BaseColumnFormatRelationJDBCAppendableRelationDestroyRelation
  21. final def dialect: JdbcDialect

    Permalink
    Attributes
    protected
    Definition Classes
    JDBCAppendableRelationNativeTableRowLevelSecurityRelation
  22. def dropIndex(indexIdent: QualifiedTableName, tableIdent: QualifiedTableName, ifExists: Boolean): Unit

    Permalink

    Drops an index on this table

    Drops an index on this table

    indexIdent

    Index identifier

    tableIdent

    Table identifier

    ifExists

    Drop if exists

    Definition Classes
    JDBCAppendableRelationIndexableRelation
  23. def enableOrDisableRowLevelSecurity(tableIdent: QualifiedTableName, enableRowLevelSecurity: Boolean): Unit

    Permalink
  24. final def eq(arg0: AnyRef): Boolean

    Permalink
    Definition Classes
    AnyRef
  25. def executeUpdate(sql: String, defaultSchema: String): Int

    Permalink

    Execute a DML SQL and return the number of rows affected.

    Execute a DML SQL and return the number of rows affected.

    Definition Classes
    BaseColumnFormatRelationSingleRowInsertableRelation
  26. val externalStore: ExternalStore

    Permalink
    Definition Classes
    JDBCAppendableRelation
  27. def finalize(): Unit

    Permalink
    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( classOf[java.lang.Throwable] )
  28. def flushRowBuffer(): Unit

    Permalink
  29. def getBaseTableRelation: ColumnFormatRelation

    Permalink
  30. final def getClass(): Class[_]

    Permalink
    Definition Classes
    AnyRef → Any
  31. def getColumnBatchParams: (Int, Int, String)

    Permalink
    Definition Classes
    JDBCAppendableRelation
  32. def getColumnBatchStatistics(schema: Seq[AttributeReference]): PartitionStatistics

    Permalink
    Definition Classes
    BaseColumnFormatRelation
  33. def getCompressionCodec: String

    Permalink
    Definition Classes
    JDBCAppendableRelation
  34. def getDeletePlan(relation: LogicalRelation, child: SparkPlan, keyColumns: Seq[Attribute]): SparkPlan

    Permalink

    Get a spark plan to delete rows the relation.

    Get a spark plan to delete rows the relation. The result of SparkPlan execution should be a count of number of updated rows.

    Definition Classes
    BaseColumnFormatRelationMutableRelation
  35. def getInsertPlan(relation: LogicalRelation, child: SparkPlan): SparkPlan

    Permalink

    Get a spark plan for insert.

    Get a spark plan for insert. The result of SparkPlan execution should be a count of number of inserted rows.

    Definition Classes
    BaseColumnFormatRelationJDBCAppendableRelationPlanInsertableRelation
  36. def getKeyColumns: Seq[String]

    Permalink

    Get the "key" columns for the table that need to be projected out by UPDATE and DELETE operations for affecting the selected rows.

    Get the "key" columns for the table that need to be projected out by UPDATE and DELETE operations for affecting the selected rows.

    Definition Classes
    BaseColumnFormatRelationMutableRelation
  37. def getPrimaryKeyColumns: Seq[String]

    Permalink

    Get key columns of the column table

    Get key columns of the column table

    Definition Classes
    BaseColumnFormatRelationMutableRelation
  38. def getUpdatePlan(relation: LogicalRelation, child: SparkPlan, updateColumns: Seq[Attribute], updateExpressions: Seq[Expression], keyColumns: Seq[Attribute]): SparkPlan

    Permalink

    Get a spark plan to update rows in the relation.

    Get a spark plan to update rows in the relation. The result of SparkPlan execution should be a count of number of updated rows.

    Definition Classes
    BaseColumnFormatRelationMutableRelation
  39. def initializeLogIfNecessary(): Unit

    Permalink
    Attributes
    protected
    Definition Classes
    Logging
  40. def insert(rows: Seq[Row]): Int

    Permalink

    Insert a sequence of rows into the table represented by this relation.

    Insert a sequence of rows into the table represented by this relation.

    rows

    the rows to be inserted

    returns

    number of rows inserted

    Definition Classes
    BaseColumnFormatRelationRowInsertableRelation
  41. def insert(data: DataFrame, overwrite: Boolean): Unit

    Permalink
    Definition Classes
    JDBCAppendableRelation → InsertableRelation
  42. final def isDebugEnabled: Boolean

    Permalink
    Attributes
    protected
    Definition Classes
    Logging
  43. final def isInfoEnabled: Boolean

    Permalink
    Attributes
    protected
    Definition Classes
    Logging
  44. final def isInstanceOf[T0]: Boolean

    Permalink
    Definition Classes
    Any
  45. lazy val isPartitioned: Boolean

    Permalink
  46. def isRowLevelSecurityEnabled: Boolean

    Permalink
  47. final def isTraceEnabled: Boolean

    Permalink
    Attributes
    protected
    Definition Classes
    Logging
  48. final var levelFlags: Int

    Permalink
    Attributes
    protected
    Definition Classes
    Logging
  49. def log: Logger

    Permalink
    Attributes
    protected
    Definition Classes
    Logging
  50. def logDebug(msg: ⇒ String, throwable: Throwable): Unit

    Permalink
    Attributes
    protected
    Definition Classes
    Logging
  51. def logDebug(msg: ⇒ String): Unit

    Permalink
    Attributes
    protected
    Definition Classes
    Logging
  52. def logError(msg: ⇒ String, throwable: Throwable): Unit

    Permalink
    Attributes
    protected
    Definition Classes
    Logging
  53. def logError(msg: ⇒ String): Unit

    Permalink
    Attributes
    protected
    Definition Classes
    Logging
  54. def logInfo(msg: ⇒ String, throwable: Throwable): Unit

    Permalink
    Attributes
    protected
    Definition Classes
    Logging
  55. def logInfo(msg: ⇒ String): Unit

    Permalink
    Attributes
    protected
    Definition Classes
    Logging
  56. def logName: String

    Permalink
    Attributes
    protected
    Definition Classes
    Logging
  57. def logTrace(msg: ⇒ String, throwable: Throwable): Unit

    Permalink
    Attributes
    protected
    Definition Classes
    Logging
  58. def logTrace(msg: ⇒ String): Unit

    Permalink
    Attributes
    protected
    Definition Classes
    Logging
  59. def logWarning(msg: ⇒ String, throwable: Throwable): Unit

    Permalink
    Attributes
    protected
    Definition Classes
    Logging
  60. def logWarning(msg: ⇒ String): Unit

    Permalink
    Attributes
    protected
    Definition Classes
    Logging
  61. final var log_: Logger

    Permalink
    Attributes
    protected
    Definition Classes
    Logging
  62. val mode: SaveMode

    Permalink
    Definition Classes
    JDBCAppendableRelation
  63. def name: String

    Permalink

    Name of this relation in the catalog.

    Name of this relation in the catalog.

    Definition Classes
    IndexColumnFormatRelationDependentRelation
  64. final def ne(arg0: AnyRef): Boolean

    Permalink
    Definition Classes
    AnyRef
  65. val needConversion: Boolean

    Permalink
    Definition Classes
    JDBCAppendableRelation → BaseRelation
  66. final def notify(): Unit

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

    Permalink
    Definition Classes
    AnyRef
  68. lazy val numBuckets: Int

    Permalink
  69. val origOptions: Map[String, String]

    Permalink
    Definition Classes
    JDBCAppendableRelation
  70. def partitionColumns: Seq[String]

    Permalink

    Get the partitioning columns for the table, if any.

    Get the partitioning columns for the table, if any.

    Definition Classes
    BaseColumnFormatRelationMutableRelationPartitionedDataSourceScan
  71. val partitioningColumns: Seq[String]

    Permalink
    Definition Classes
    BaseColumnFormatRelation
  72. val provider: String

    Permalink
    Definition Classes
    JDBCAppendableRelation
  73. lazy val region: PartitionedRegion

    Permalink
  74. lazy val relInfo: RelationInfo

    Permalink
    Definition Classes
    BaseColumnFormatRelation
  75. def resetLogger(): Unit

    Permalink
    Attributes
    protected
    Definition Classes
    Logging
  76. def resolvedName: String

    Permalink
  77. lazy val rowInsertStr: String

    Permalink
    Definition Classes
    BaseColumnFormatRelation
  78. def scanTable(tableName: String, requiredColumns: Array[String], filters: Array[Expression], _ignore: () ⇒ Int): (RDD[Any], Array[Int])

    Permalink
  79. val schema: StructType

    Permalink
    Definition Classes
    JDBCAppendableRelation → BaseRelation
  80. val schemaExtensions: String

    Permalink
    Definition Classes
    BaseColumnFormatRelation
  81. def sizeInBytes: Long

    Permalink
    Definition Classes
    JDBCAppendableRelation → BaseRelation
  82. val sqlContext: SQLContext

    Permalink
    Definition Classes
    JDBCAppendableRelationNativeTableRowLevelSecurityRelation → BaseRelation
  83. final def synchronized[T0](arg0: ⇒ T0): T0

    Permalink
    Definition Classes
    AnyRef
  84. val table: String

    Permalink
  85. var tableCreated: Boolean

    Permalink

    Return true if table is created by the relation.

    Return true if table is created by the relation. This will be used to check while destroying the table incase of a failure while creating the table

    Definition Classes
    JDBCAppendableRelationDestroyRelation
  86. var tableExists: Boolean

    Permalink

    Return true if table already existed when the relation object was created.

    Return true if table already existed when the relation object was created.

    Definition Classes
    JDBCAppendableRelationDestroyRelation
  87. def toString(): String

    Permalink
    Definition Classes
    BaseColumnFormatRelationJDBCAppendableRelation → AnyRef → Any
  88. def truncate(): Unit

    Permalink

    Truncate the table represented by this relation.

    Truncate the table represented by this relation.

    Definition Classes
    BaseColumnFormatRelationJDBCAppendableRelationDestroyRelation
  89. def unhandledFilters(filters: Seq[Expression]): Seq[Expression]

    Permalink

    Returns the list of Expressions that this datasource may not be able to handle.

    Returns the list of Expressions that this datasource may not be able to handle. By default, this function will return all filters, as it is always safe to double evaluate an Expression.

    Definition Classes
    BaseColumnFormatRelationPrunedUnsafeFilteredScan
  90. def unhandledFilters(filters: Array[Filter]): Array[Filter]

    Permalink
    Definition Classes
    BaseRelation
  91. final def wait(): Unit

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

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

    Permalink
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  94. def withKeyColumns(relation: LogicalRelation, keyColumns: Seq[String]): LogicalRelation

    Permalink

    If required inject the key columns in the original relation.

    If required inject the key columns in the original relation.

    Definition Classes
    IndexColumnFormatRelationMutableRelation

Inherited from DependentRelation

Inherited from BaseColumnFormatRelation

Inherited from MutableRelation

Inherited from RowInsertableRelation

Inherited from PartitionedDataSourceScan

Inherited from JDBCAppendableRelation

Inherited from Product

Inherited from Equals

Inherited from Serializable

Inherited from Serializable

Inherited from RowLevelSecurityRelation

Inherited from Logging

Inherited from IndexableRelation

Inherited from PlanInsertableRelation

Inherited from DestroyRelation

Inherited from InsertableRelation

Inherited from PrunedUnsafeFilteredScan

Inherited from BaseRelation

Inherited from AnyRef

Inherited from Any

Ungrouped