Class BeamSystemSchema

  • All Implemented Interfaces:
    org.apache.beam.vendor.calcite.v1_40_0.org.apache.calcite.schema.Schema

    public class BeamSystemSchema
    extends java.lang.Object
    implements org.apache.beam.vendor.calcite.v1_40_0.org.apache.calcite.schema.Schema
    A Calcite Schema specialized for displaying the session's metadata. Top node that manages requests to SHOW CATALOGS, DATABASES, and TABLES. Used by CatalogManagerSchema.

    SHOW requests are treated as aliases, listed below:

    • SHOW CURRENT CATALOG --> SELECT * FROM `beamsystem`.`__current_catalog__`
    • SHOW CATALOGS --> SELECT * FROM `beamsystem`.`catalogs`
    • SHOW CATALOGS LIKE '{pattern}' --> SELECT * FROM `beamsystem`.`catalogs` WHERE NAME LIKE '{pattern}'
    • SHOW CURRENT DATABASE --> SELECT * FROM `beamsystem`.`__current_database__`
    • SHOW DATABASES --> SELECT * FROM `beamsystem`.`databases`.`__current_catalog__`
    • SHOW DATABASES FROM my_catalog --> SELECT * FROM `beamsystem`.`databases`.`my_catalog`
    • SHOW DATABASES FROM my_catalog LIKE '{pattern}' --> SELECT * FROM `beamsystem`.`databases`.`my_catalog` WHERE NAME LIKE '{pattern}'
    • SHOW TABLES --> SELECT * FROM `beamsystem`.`tables`.`__current_catalog__`.`__current_database__`
    • SHOW TABLES FROM my_db --> SELECT * FROM `beamsystem`.`tables`.`__current_catalog__`.`my_db`
    • SHOW TABLES FROM my_catalog.my_db --> SELECT * FROM `beamsystem`.`tables`.`my_catalog`.`my_db`
    • SHOW TABLES FROM my_catalog.my_db LIKE '{pattern}' --> SELECT * FROM `beamsystem`.`tables`.`my_catalog`.`my_db` WHERE NAME LIKE '{pattern}'
    • Nested Class Summary

      • Nested classes/interfaces inherited from interface org.apache.beam.vendor.calcite.v1_40_0.org.apache.calcite.schema.Schema

        org.apache.beam.vendor.calcite.v1_40_0.org.apache.calcite.schema.Schema.TableType
    • Field Summary

      Fields 
      Modifier and Type Field Description
      static java.lang.String BEAMSYSTEM  
    • Method Summary

      All Methods Instance Methods Concrete Methods 
      Modifier and Type Method Description
      org.apache.beam.vendor.calcite.v1_40_0.org.apache.calcite.linq4j.tree.Expression getExpression​(@Nullable org.apache.beam.vendor.calcite.v1_40_0.org.apache.calcite.schema.SchemaPlus schemaPlus, java.lang.String s)  
      java.util.Set<java.lang.String> getFunctionNames()  
      java.util.Collection<org.apache.beam.vendor.calcite.v1_40_0.org.apache.calcite.schema.Function> getFunctions​(java.lang.String s)  
      @Nullable org.apache.beam.vendor.calcite.v1_40_0.org.apache.calcite.schema.Schema getSubSchema​(@Nullable java.lang.String name)  
      java.util.Set<java.lang.String> getSubSchemaNames()  
      @Nullable org.apache.beam.vendor.calcite.v1_40_0.org.apache.calcite.schema.Table getTable​(java.lang.String table)  
      java.util.Set<java.lang.String> getTableNames()  
      @Nullable org.apache.beam.vendor.calcite.v1_40_0.org.apache.calcite.rel.type.RelProtoDataType getType​(java.lang.String s)  
      java.util.Set<java.lang.String> getTypeNames()  
      boolean isMutable()  
      org.apache.beam.vendor.calcite.v1_40_0.org.apache.calcite.schema.Schema snapshot​(org.apache.beam.vendor.calcite.v1_40_0.org.apache.calcite.schema.SchemaVersion schemaVersion)  
      • Methods inherited from class java.lang.Object

        clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
      • Methods inherited from interface org.apache.beam.vendor.calcite.v1_40_0.org.apache.calcite.schema.Schema

        subSchemas, tables
    • Method Detail

      • getTable

        public @Nullable org.apache.beam.vendor.calcite.v1_40_0.org.apache.calcite.schema.Table getTable​(java.lang.String table)
        Specified by:
        getTable in interface org.apache.beam.vendor.calcite.v1_40_0.org.apache.calcite.schema.Schema
      • getTableNames

        public java.util.Set<java.lang.String> getTableNames()
        Specified by:
        getTableNames in interface org.apache.beam.vendor.calcite.v1_40_0.org.apache.calcite.schema.Schema
      • getSubSchema

        public @Nullable org.apache.beam.vendor.calcite.v1_40_0.org.apache.calcite.schema.Schema getSubSchema​(@Nullable java.lang.String name)
        Specified by:
        getSubSchema in interface org.apache.beam.vendor.calcite.v1_40_0.org.apache.calcite.schema.Schema
      • getSubSchemaNames

        public java.util.Set<java.lang.String> getSubSchemaNames()
        Specified by:
        getSubSchemaNames in interface org.apache.beam.vendor.calcite.v1_40_0.org.apache.calcite.schema.Schema
      • getTypeNames

        public java.util.Set<java.lang.String> getTypeNames()
        Specified by:
        getTypeNames in interface org.apache.beam.vendor.calcite.v1_40_0.org.apache.calcite.schema.Schema
      • getType

        public @Nullable org.apache.beam.vendor.calcite.v1_40_0.org.apache.calcite.rel.type.RelProtoDataType getType​(java.lang.String s)
        Specified by:
        getType in interface org.apache.beam.vendor.calcite.v1_40_0.org.apache.calcite.schema.Schema
      • getFunctions

        public java.util.Collection<org.apache.beam.vendor.calcite.v1_40_0.org.apache.calcite.schema.Function> getFunctions​(java.lang.String s)
        Specified by:
        getFunctions in interface org.apache.beam.vendor.calcite.v1_40_0.org.apache.calcite.schema.Schema
      • getFunctionNames

        public java.util.Set<java.lang.String> getFunctionNames()
        Specified by:
        getFunctionNames in interface org.apache.beam.vendor.calcite.v1_40_0.org.apache.calcite.schema.Schema
      • getExpression

        public org.apache.beam.vendor.calcite.v1_40_0.org.apache.calcite.linq4j.tree.Expression getExpression​(@Nullable org.apache.beam.vendor.calcite.v1_40_0.org.apache.calcite.schema.SchemaPlus schemaPlus,
                                                                                                              java.lang.String s)
        Specified by:
        getExpression in interface org.apache.beam.vendor.calcite.v1_40_0.org.apache.calcite.schema.Schema
      • isMutable

        public boolean isMutable()
        Specified by:
        isMutable in interface org.apache.beam.vendor.calcite.v1_40_0.org.apache.calcite.schema.Schema
      • snapshot

        public org.apache.beam.vendor.calcite.v1_40_0.org.apache.calcite.schema.Schema snapshot​(org.apache.beam.vendor.calcite.v1_40_0.org.apache.calcite.schema.SchemaVersion schemaVersion)
        Specified by:
        snapshot in interface org.apache.beam.vendor.calcite.v1_40_0.org.apache.calcite.schema.Schema