Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Use Waterline for database interface #5

Closed
TimMikeladze opened this issue Oct 14, 2016 · 2 comments
Closed

Use Waterline for database interface #5

TimMikeladze opened this issue Oct 14, 2016 · 2 comments
Labels

Comments

@TimMikeladze
Copy link
Member

TimMikeladze commented Oct 14, 2016

@gadicc What are your thoughts on using Waterline for our database code? This would allow us to forgo writing individual database adaptor packages like we had planned. Instead defining a model for our accounts data and relying on the end user to install the necessary waterline adaptor package for their database.

On the flip side, this would be putting all our eggs in one basket.

I'm leaning towards our original approach.

@TimMikeladze TimMikeladze changed the title Use Waterline for database store interface Use Waterline for database interface Oct 14, 2016
@gadicc
Copy link
Contributor

gadicc commented Oct 14, 2016

Hey, this is pretty cool, I hadn't come across it before.

I think probably my only gripe is that - as best I can tell from a quick lookthrough - it seems to favor SQL like storage. NoSQL database users will most likely prefer e.g. emails & service data to be stored as part of the user object (as arrays & dictionaries, respectively). Our current approach allows for each db connector to be responsible for how the data is stored, which is quite nice. It looks like they have embeddable documents on their roadmap.

We could possibly enjoy the best of both worlds. My thinking is:

  1. We have 3 adaptors done already with all the API we need, let's avoid unnecessary short term work.
  2. We could actually do a "waterline adaptor" to cover cases where we don't offer an "optimized" adaptor but waterline has one. Might be a good idea to do this for the next DB we want if the waterline adaptor is a good fit.
  3. For DBs that waterline doesn't have (like RethinkDB, despite what's happening there now), it's a lot easier to implement the few functions we need than implement a waterline adaptor for it.

So let's keep things as is but leave this open?

@TimMikeladze
Copy link
Member Author

Sounds good.

Aetherall pushed a commit that referenced this issue Mar 11, 2018
Aetherall pushed a commit that referenced this issue Mar 13, 2018
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

No branches or pull requests

2 participants