Skip to content

Additional functionality #14

@lonnietc

Description

@lonnietc

Hello,

I have been searching for a basic Graph database (Golang) so that I can learn from as well as work on expanding for a project that I am doing now and yours has GREAT potential.

I am wondering about some of your API methods for the nodes and edges like create nodes, properties, and relationships, and did see:

--- DATABASE ----
api.CreateDatabase - takes two parameters: database title and db mode ("local", "distributed")
api.SwitchDatabase - parameter is database title. Switches only if database exist.
api.DropDatabase - parameter is database title. Drops database if it exists.

--- NODE ----
api.CreateNode - parameter is title/label of node. Creates new node and writes it into database.
api.GetNode - parameter is id of searched node. Returns pointer on node, which is searched by id.
api.DeleteNode  - parameter is id of node, which should be deleted. Sets node as deleted in database.

--- RELATIONSHIPS ---
api.CreateRelationship - takes three parameters: pointer on two nodes, which are in relationships and title of relationship. Method created a new relationship for two nodes.

--- PROPERTIES ---
api.CreatePropertyForNode - takes four parameters: pointer on node, title of property, type of property value and value itself. Value type could be the following: 0 - integer, 1 - double, 2 - string. Method creates a property for a given node.

api.CreatePropertyForRelationship - same parameters as in previous method. Creates a property for given relationship.

but did not see anything for:

api.DeleteRelationship
api.ModifyRelationship

api.DeletePropertyForNode
api.ModifyPropertyForNode

api.DeletePropertyForRelationship 
api.ModifyPropertyForRelationship 

Also, it seems that the db mode ("local", "distributed") can be of these 2 types, but I am not clear on the distributed mode and how that is used or how well that scales.

The project that I am working on is a type of P2P Graph Database that can scale well and also allow for multiple graphs to be concurrently used.

Could you please comment on some of these questions as I have some more ideas but would like to learn more about what you have implemented and how to use it fully, if possible.

Best Regards and have a great day

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions