NEST - Network Storage Model for .Net

NEST is a data model for the storing and querying of structures organized as parent-child relations, in many ways similar as described by the Network Model


Key principles:

  • Parent can have multiple children. A child can have multiple parents.
  • Each connection is called Aggregate since the children it has can be seen as "defining" the parent. 
  • Connections and nodes do not carry any data.
  • Instead, actual data objects are stored as the lowest level child entity and are "atomic" i.e. where it is not necessary, or possible, to construct it from other children. These are called Leafs.


Features:

  •  There is no need to explicitly manage the traverse through the already stored connections in the network to query or find out where to attach new stored structures. This is abstracted away behind simple Store and Query methods on a user defined aggregate structure.
  • Fast querying.


Let us view a few examples and things will be clearer... :)

var film = new Aggregate("Film");

var title = new Aggregate("Title");

var leaf = new Leaf<string>().AddValue("Inception");


film.Add(title);

title.Add(leaf);


nestClient.Store(film);


var director = new Aggregate("Director");

var directorLeaf = new Leaf<string>().AddValue("Christopher Nolan");

film.Add(director);

director.Add(directorLeaf);


var nestClient = new Anode();

nestClient.Store(film);

Lorem ipsum dolor sit amet, consectetur adipisicing elit. Maiores ipsum repellat minus nihil. Labore, delectus, nam dignissimos ea repudiandae minima voluptatum magni pariatur possimus quia accusamus harum facilis corporis animi nisi. Enim, pariatur, impedit quia repellat harum ipsam laboriosam voluptas dicta illum nisi obcaecati reprehenderit quis placeat recusandae tenetur aperiam.

Lorem ipsum dolor sit amet, consectetur adipisicing elit. Maiores ipsum repellat minus nihil. Labore, delectus, nam dignissimos ea repudiandae minima voluptatum magni pariatur possimus quia accusamus harum facilis corporis animi nisi. Enim, pariatur, impedit quia repellat harum ipsam laboriosam voluptas dicta illum nisi obcaecati reprehenderit quis placeat recusandae tenetur aperiam.

Lorem ipsum dolor sit amet, consectetur adipisicing elit. Maiores ipsum repellat minus nihil. Labore, delectus, nam dignissimos ea repudiandae minima voluptatum magni pariatur possimus quia accusamus harum facilis corporis animi nisi. Enim, pariatur, impedit quia repellat harum ipsam laboriosam voluptas dicta illum nisi obcaecati reprehenderit quis placeat recusandae tenetur aperiam.