Interface ReadOnlySchemaRepository

All Superinterfaces:
VeniceResource
All Known Subinterfaces:
ReadWriteSchemaRepository
All Known Implementing Classes:
HelixReadOnlySchemaRepository, HelixReadOnlySchemaRepositoryAdapter, HelixReadOnlyZKSharedSchemaRepository, HelixReadWriteSchemaRepository, HelixReadWriteSchemaRepositoryAdapter, NativeMetadataRepository, RecordChangeEventReadOnlySchemaRepository, SharedHelixReadOnlyZKSharedSchemaRepository, StoreValueSchemasCacheService, ThinClientMetaStoreBasedRepository

public interface ReadOnlySchemaRepository extends VeniceResource
  • Method Details

    • getKeySchema

      SchemaEntry getKeySchema(String storeName)
      Get key schema for the given store.
    • getValueSchema

      SchemaEntry getValueSchema(String storeName, int id)
      Get value schema for the given store and value schema id.
    • hasValueSchema

      boolean hasValueSchema(String storeName, int id)
      Check whether the specified schema id is valid or not
    • getValueSchemaId

      int getValueSchemaId(String storeName, String valueSchemaStr)
      Return the schema ID of any schema for the store that has the same parsing canonical form as the schema provided.
    • getValueSchemas

      Collection<SchemaEntry> getValueSchemas(String storeName)
      Get all the value schemas for the given store.
    • getSupersetOrLatestValueSchema

      SchemaEntry getSupersetOrLatestValueSchema(String storeName)
      Get the most recent value schema or superset value schema if one exists.
    • getSupersetSchema

      SchemaEntry getSupersetSchema(String storeName)
      Get the superset value schema for a given store. Each store has at most one active superset schema. Specifically a store must have some features enabled (e.g. read compute, write compute) to have a superset value schema which evolves as new value schemas are added.
      Returns:
      Superset value schema or null if store does not have any superset value schema.
    • getDerivedSchemaId

      GeneratedSchemaID getDerivedSchemaId(String storeName, String derivedSchemaStr)
      Look up derived schema id and its corresponding value schema id by given store name and derived schema. This is likely used by clients that write to Venice
      Returns:
      a pair where the first value is value schema id and the second value is derived schema id
    • getDerivedSchema

      DerivedSchemaEntry getDerivedSchema(String storeName, int valueSchemaId, int writeComputeSchemaId)
    • getDerivedSchemas

      Collection<DerivedSchemaEntry> getDerivedSchemas(String storeName)
    • getLatestDerivedSchema

      DerivedSchemaEntry getLatestDerivedSchema(String storeName, int valueSchemaId)
      Get the most recent derived schema added to the given store and value schema id
    • getReplicationMetadataSchema

      RmdSchemaEntry getReplicationMetadataSchema(String storeName, int valueSchemaId, int replicationMetadataVersionId)
    • getReplicationMetadataSchemas

      Collection<RmdSchemaEntry> getReplicationMetadataSchemas(String storeName)
    • getLatestDerivedSchema

      default DerivedSchemaEntry getLatestDerivedSchema(String storeName)