liveBook · Manning

FeatureStore

As explained in Graph Neural Networks in Action

FeatureStore is a PyTorch Geometric interface or object for storing and retrieving features associated with graph nodes or other graph entities.

FeatureStore is a PyTorch Geometric interface or object for storing and retrieving node features from a remote backend. It separates feature storage from graph structure, which is handled by GraphStore, so graph-learning datasets can scale beyond local memory. section 7.9

A remote FeatureStore implementation typically handles:

  • Connecting to a database that stores node features, such as a key-value database. section 7.9
  • Implementing CRUD operations for feature data. section 7.9
  • Serving features to a sampler and NodeLoader during mini-batch training. section 7.9
  • Managing large, varying-sized, and differently typed node features while preserving efficiency and correctness. section 7.9.1

GeoGrid remote feature storage

GeoGrid stores graph structure in Neo4J and node features such as location type and historical traffic data in RocksDB. Its FeatureStore implementation requires secure database integration, CRUD behavior, and testing across varying feature sizes and types. section 7.9.1

Listing 7.3 Loader object using remote backend
loader = NodeLoader(
    data=(feature_store, graph_store),
    node_sampler=node_sampler,
    batch_size=20,
    input_nodes='paper',
)

for batch in loader:
    <training loop>

Use a FeatureStore together with a GraphStore as the NodeLoader data source, then let a node sampler produce batches for the training loop. section 7.9

How Graph Neural Networks in Action covers it

How deep it goes
Explains database integration, CRUD responsibilities, sampling, latency, and testing, but does not specify a concrete FeatureStore API.
Examples
Uses RocksDB for GeoGrid node features, with Neo4J for graph structure and NodeLoader for training batches.
What it assumes
Assumes familiarity with graph data, remote databases, PyTorch Geometric loaders, and graph sampling.
What you can do after
Build it from scratch by connecting a database, implementing CRUD operations, testing feature variation, and integrating NodeLoader.
How it connects
Connects FeatureStore with GraphStore, remote backends, graph samplers, NodeLoader, key-value databases, and graph databases.

Related concepts

This explainer was generated by Manning's knowledge graph from the text of Graph Neural Networks in Action. The section links point to the parts of the book it draws on.