Looking for an expert in data modeling for a NoSQL database (Firebase). I am familiar with standard SQL, but would like to branch out into the NoSQL data structure for several projects. I have a very limited understanding of the noSQL approach, so i am looking for an expert to assist in walking me through this process so I can validate my data model is designed correctly from the start.
I have many complex projects, but here is a very basic summary of what I am trying to accomplish with noSQL structure:
USER TABLE - Username (email), password, name, etc.
MEMBERSHIP or ACCESS TABLE - table to control a list of memberships or access rights a user has to a GROUP. This basically serves as a link between the USER and GROUP. This is critical as I would need to manage things like a) who is the group administrator(s) and b) I may need to revoke access to a group.
GROUP TABLE - list the general information about the group like name, description, etc.
ITEMS TABLE - List of items that belong to the group.
In general, a user:
1) Creates a new account which adds them to the USER's table
2) Creates a new GROUP which creates a record in both the MEMBERSHIP and GROUP Tables. The user who created the group is by default classified as an Administrator and will have special privileges.
3) Creates ITEMS which are anything related to that specific group
4) Can invite other users to join the group (if they are an administrator) and can revoke memberships i.e. if they invited someone to access the group and then they decided they no longer needed access, we must be able to revoke their access i.e. make membership inactive.
I am attaching a very basic diagram. Please provide a few samples of your work or experience. I am ONLY look for a data model expert - not a software developer right now.