c

io.xskipper.metadatastore.parquet

ParquetMetadataHandle

class ParquetMetadataHandle extends MetadataHandle with Logging with Serializable

Linear Supertypes
Serializable, Serializable, Logging, MetadataHandle, AnyRef, Any
Ordering
  1. Alphabetic
  2. By Inheritance
Inherited
  1. ParquetMetadataHandle
  2. Serializable
  3. Serializable
  4. Logging
  5. MetadataHandle
  6. AnyRef
  7. Any
  1. Hide All
  2. Show All
Visibility
  1. Public
  2. All

Instance Constructors

  1. new ParquetMetadataHandle(session: SparkSession, tableIdentifier: String)

Value Members

  1. def clean(): Unit

    Cleans the MetadataHandle instance (implementation specific)

    Cleans the MetadataHandle instance (implementation specific)

    Definition Classes
    MetadataHandle
  2. def clearStats(): Unit

    Clears the latest stats

    Clears the latest stats

    Definition Classes
    MetadataHandle
  3. def dropAllMetadata(): Unit

    Drops all of the metadata associated with the given index

    Drops all of the metadata associated with the given index

    Definition Classes
    ParquetMetadataHandleMetadataHandle
  4. def finalizeMetadataUpload(): Unit

    Finalize metadata creation in the metadatastore (implementation specific)

    Finalize metadata creation in the metadatastore (implementation specific)

    Definition Classes
    ParquetMetadataHandleMetadataHandle
  5. def getAllIndexedFiles(): Future[Set[String]]

    Returns a set of all indexed files (async)

    Returns a set of all indexed files (async)

    Definition Classes
    ParquetMetadataHandleMetadataHandle
  6. def getDeletionChunkSize(): Int

    returns

    Maximum number of objects to delete in one chunk

    Definition Classes
    ParquetMetadataHandleMetadataHandle
  7. def getIndexStatus(): IndexStatusResult

    Returns index statistics

    Returns index statistics

    Definition Classes
    ParquetMetadataHandleMetadataHandle
  8. def getIndexes(): Seq[Index]

    returns the sequence of indexes that exist in the metadatastore for the tableIdentifier

    returns the sequence of indexes that exist in the metadatastore for the tableIdentifier

    Definition Classes
    ParquetMetadataHandleMetadataHandle
  9. def getMdVersionStatus(): MetadataVersionStatus.MetadataVersionStatus

    returns the version status of the metadata.

    returns the version status of the metadata. we do not have a strict requirement for the metadatastore to use metadata from a version different than its current version for filtering / refresh but we do expect it to be able to tell the version status, and whether or not it can be upgraded to comply with the current version.

    Definition Classes
    ParquetMetadataHandleMetadataHandle
  10. def getNumberOfIndexedObjects(): Long

    Gets the number of indexed objects

    Gets the number of indexed objects

    returns

    the number of indexed objects

  11. def getRequiredObjects(query: Any): Future[Set[String]]

    Returns the required file ids for the given query (async)

    Returns the required file ids for the given query (async)

    query

    the query to be used in order to get the relevant files (this query is of type Any and it is the responsibility of the metadatastore implementation to cast it to as instance which matches the translation for this MetaDataStore)

    returns

    the set of fileids required for this query

    Definition Classes
    ParquetMetadataHandleMetadataHandle
  12. def getStats(): Option[QueryIndexStatsResult]
    Definition Classes
    MetadataHandle
  13. def getUploadChunkSize(): Int

    returns

    Maximum number of objects to index in one chunk

    Definition Classes
    ParquetMetadataHandleMetadataHandle
  14. def indexExists(): Boolean

    Returns true if an index exists for the tableIdentifier

    Returns true if an index exists for the tableIdentifier

    returns

    true if the an index exists for the tableIdentifier

    Definition Classes
    ParquetMetadataHandleMetadataHandle
  15. def initMetadataUpload(indexes: Seq[Index]): Unit

    Initialize metadata for a dataset in the metadatastore (implementation specific)

    Initialize metadata for a dataset in the metadatastore (implementation specific)

    indexes

    a sequence of metadata indexes

    Definition Classes
    MetadataHandle
  16. def isEncryptionSupported(): Boolean

    Returns whether or not this MetadataHandle supports encryption

    Returns whether or not this MetadataHandle supports encryption

    returns

    true if the MetadataHandle supports encryption

    Definition Classes
    ParquetMetadataHandleMetadataHandle
  17. def isMetadataUpgradePossible(): Boolean

    returns whether or not the metadata can be upgraded to comply with the current version

    returns whether or not the metadata can be upgraded to comply with the current version

    returns

    true if the metadata can be upgraded, false otherwise

    Definition Classes
    ParquetMetadataHandleMetadataHandle
  18. def refresh(): Unit

    Refreshes the MetadataHandle by re-syncing with the metadatastore (implementation specific)

    Refreshes the MetadataHandle by re-syncing with the metadatastore (implementation specific)

    Definition Classes
    ParquetMetadataHandleMetadataHandle
  19. def removeMetaDataForFiles(files: Seq[String]): Unit

    Removes the metadata for a sequence of files.

    Removes the metadata for a sequence of files. This method may assume that the Metadta version status is MetadataVersionStatus.CURRENT

    files

    a sequence of files for which the metadata will be removed

    Definition Classes
    ParquetMetadataHandleMetadataHandle
  20. val session: SparkSession
  21. def setMDPath(md: String, type: String): ParquetMetadataHandle
  22. def setParams(params: Map[String, String]): Unit

    Set metadataStore specific parameters such as user, password, host Note: the implementation should not count on the Map not changing during the run therefore, it needs to save its parameters locally

    Set metadataStore specific parameters such as user, password, host Note: the implementation should not count on the Map not changing during the run therefore, it needs to save its parameters locally

    params

    a map of parameters (each metadata store expects certain input)

    Definition Classes
    ParquetMetadataHandleMetadataHandle
  23. final def setParams(params: Map[String, String]): Unit
    Definition Classes
    MetadataHandle
  24. def updateQueryStats(currentFilterStatistics: QueryIndexStatsResult): Unit

    Updates the MetadataHandle stats with the given query stats called from the dataSkippingFileIndex rule in the catalyst to update the stats during the query tun time

    Updates the MetadataHandle stats with the given query stats called from the dataSkippingFileIndex rule in the catalyst to update the stats during the query tun time

    currentFilterStatistics

    the updated stats

    Definition Classes
    MetadataHandle
  25. def upgradeMetadata(indexes: Seq[Index]): Unit

    Upgrades the metadata to comply with the current version

    Upgrades the metadata to comply with the current version

    indexes

    - the indexes stored in the metadataStore.

    Definition Classes
    ParquetMetadataHandleMetadataHandle
  26. def uploadMetadata(metaData: RDD[Row], indexes: Seq[Index], isRefresh: Boolean): Unit

    Uploads the metadata to the metadatastore This method may assume that the metadata version status is MetadataVersionStatus.CURRENT

    Uploads the metadata to the metadatastore This method may assume that the metadata version status is MetadataVersionStatus.CURRENT

    metaData

    RDD that contains for each file a list of abstract metaData types to be uploaded

    indexes

    a sequence of indexes that created the metadata

    isRefresh

    indicates whether the operation is a refresh operation

    Definition Classes
    ParquetMetadataHandleMetadataHandle