parquetdb.graph.parquet_graphdb.ParquetGraphDB¶
- class ParquetGraphDB(storage_path: str | Path, node_store_types: Dict[str, Type[NodeStore]] | None = None, edge_store_types: Dict[str, Type[EdgeStore]] | None = None, verbose: int = 1)¶
A manager for a graph storing multiple node types and edge types. Each node type and edge type is backed by a separate ParquetDB instance (wrapped by NodeStore or EdgeStore).
- __init__(storage_path: str | Path, node_store_types: Dict[str, Type[NodeStore]] | None = None, edge_store_types: Dict[str, Type[EdgeStore]] | None = None, verbose: int = 1)¶
- Parameters:
storage_path (str) – The root path for this graph, e.g. ‘/path/to/my_graph’. Subdirectories ‘nodes/’ and ‘edges/’ will be used.
Methods
__init__(storage_path[, node_store_types, ...])add_edge_generator(generator_func[, ...])Register a user-defined callable that can read from node stores, and then create or update edges as it sees fit.
add_edge_store(edge_store)add_edge_type(edge_type)Create (or load) an EdgeStore for the specified edge_type.
add_edges(edge_type, data, **kwargs)add_generator_dependency(generator_name[, ...])Add dependencies for a generator.
add_node_generator(generator_func[, ...])add_node_store(node_store[, overwrite, ...])add_node_type(node_type)Create (or load) a NodeStore for the specified node_type.
add_nodes(node_type, data, **kwargs)construct_table(data[, schema, metadata, ...])delete_edges(edge_type[, ids, columns])delete_nodes(node_type[, ids, columns])edge_exists(edge_type)edge_is_empty(edge_type)generator_consistency_check()get_edge_store(edge_type)get_generator_dependency_graph(generator_name)get_generator_type(generator_name)get_node_store(node_type)get_nodes(node_type[, ids, columns])list_edge_types()list_node_types()node_exists(node_type)node_is_empty(node_type)normalize_all_edges(normalize_kwargs)normalize_all_nodes(normalize_kwargs)normalize_edges(edge_type)normalize_nodes(node_type[, normalize_kwargs])read_edges(edge_type[, ids, columns])read_nodes(node_type[, ids, columns])remove_edge_store(edge_type)remove_edge_type(edge_type)remove_node_store(node_type)remove_node_type(node_type)run_edge_generator(generator_name[, ...])run_node_generator(generator_name[, ...])Execute a previously registered custom node-generation function by name. :Parameters: * generator_name (str) -- The unique name used when registering the function. * generator_args (Dict) -- Additional arguments passed to the generator function. * generator_kwargs (Dict) -- Additional keyword arguments passed to the generator function.
summary([show_column_names])update_edges(edge_type, data, **kwargs)update_nodes(node_type, data, **kwargs)Attributes
n_edge_typesn_edges_per_typen_node_typesn_nodes_per_type