|
|
| InMemoryCatalog (std::string const &name, std::shared_ptr< FileIO > const &file_io, std::string const &warehouse_location, std::unordered_map< std::string, std::string > const &properties) |
| |
| std::string_view | name () const override |
| | Return the name for this catalog.
|
| |
| Status | CreateNamespace (const Namespace &ns, const std::unordered_map< std::string, std::string > &properties) override |
| | Create a namespace with associated properties.
|
| |
| Result< std::vector< Namespace > > | ListNamespaces (const Namespace &ns) const override |
| | List child namespaces from the given namespace.
|
| |
| Status | DropNamespace (const Namespace &ns) override |
| | Drop a namespace.
|
| |
| Result< bool > | NamespaceExists (const Namespace &ns) const override |
| | Check whether the namespace exists.
|
| |
| Result< std::unordered_map< std::string, std::string > > | GetNamespaceProperties (const Namespace &ns) const override |
| | Get metadata properties for a namespace.
|
| |
| Status | UpdateNamespaceProperties (const Namespace &ns, const std::unordered_map< std::string, std::string > &updates, const std::unordered_set< std::string > &removals) override |
| | Update a namespace's properties by applying additions and removals.
|
| |
| Result< std::vector< TableIdentifier > > | ListTables (const Namespace &ns) const override |
| | Return all the identifiers under this namespace.
|
| |
| Result< std::shared_ptr< Table > > | CreateTable (const TableIdentifier &identifier, const std::shared_ptr< Schema > &schema, const std::shared_ptr< PartitionSpec > &spec, const std::shared_ptr< SortOrder > &order, const std::string &location, const std::unordered_map< std::string, std::string > &properties) override |
| | Create a table.
|
| |
| Result< std::shared_ptr< Table > > | UpdateTable (const TableIdentifier &identifier, const std::vector< std::unique_ptr< TableRequirement > > &requirements, const std::vector< std::unique_ptr< TableUpdate > > &updates) override |
| | Update a table.
|
| |
| Result< std::shared_ptr< Transaction > > | StageCreateTable (const TableIdentifier &identifier, const std::shared_ptr< Schema > &schema, const std::shared_ptr< PartitionSpec > &spec, const std::shared_ptr< SortOrder > &order, const std::string &location, const std::unordered_map< std::string, std::string > &properties) override |
| | Start a transaction to create a table.
|
| |
| Result< bool > | TableExists (const TableIdentifier &identifier) const override |
| | Check whether table exists.
|
| |
| Status | DropTable (const TableIdentifier &identifier, bool purge) override |
| | Drop a table; optionally delete data and metadata files.
|
| |
| Status | RenameTable (const TableIdentifier &from, const TableIdentifier &to) override |
| | Rename a table.
|
| |
| Result< std::shared_ptr< Table > > | LoadTable (const TableIdentifier &identifier) override |
| | Load a table.
|
| |
| Result< std::shared_ptr< Table > > | RegisterTable (const TableIdentifier &identifier, const std::string &metadata_file_location) override |
| | Register a table with the catalog if it does not exist.
|
| |
An in-memory implementation of the Iceberg Catalog interface.
This catalog stores all metadata purely in memory, with no persistence to disk or external systems. It is primarily intended for unit tests, prototyping, or demonstration purposes.
- Note
- This class is not suitable for production use. All data will be lost when the process exits.