@Override
  public AmoroTable<?> loadTable(String database, String table) {
    String tableLocation = loadTableLocation(database, table);
    HoodieJavaEngineContext context = new HoodieJavaEngineContext(metaStore.getConfiguration());
    HoodieWriteConfig config = HoodieWriteConfig.newBuilder().withPath(tableLocation).build();

    return metaStore.doAs(
        () -> {
          HoodieJavaTable hoodieTable = HoodieJavaTable.create(config, context);
          TableIdentifier identifier = TableIdentifier.of(catalog, database, table);
          Map<String, String> tableProperties =
              hoodieTable.getMetaClient().getTableConfig().propsMap();
          Map<String, String> properties =
              CatalogUtil.mergeCatalogPropertiesToTable(tableProperties, this.properties);
          return new HudiTable(identifier, hoodieTable, properties);
        });
  }
Hudi catalog implement in hadoop filesystem.
amoro-format-hudi/src/main/java/org/apache/amoro/formats/hudi/HudiHadoopCatalog.java