-
-
Notifications
You must be signed in to change notification settings - Fork 716
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
Persistence layer #3
Comments
A quick look through the list of LevelUP modules reveals only https://github.com/calvinmetcalf/SQLdown for PostgreSQL and nothing for Cassandra. In any case, if we limit our persistence needs to what can be done through the LevelUP API, that could help us keep things simple AND open up for plugging in other storage backends down the road. Any downsides? Especially the people who has worked on the POC should weigh in on this. |
The database needs for Unleash are really limited. The thing to consider is the availability model we want for the persistence layer. Cassandra allow us to trade consistency for availability, where traditional DBs, like postgres, requires us to go with consistency over availability. LevelUP + postgres:
Cassandra on the other hand will give us:
I am open for both approaches, and think we should re-evaluate the choice made after MVP1 is delivered and we have to actual production experience. |
For reference on how to test against cassandra – https://github.com/michaelsembwever/cassandra-project/tree/meetup-2014-09-23/ |
@michaelsembwever That link is broken? Anyone interested in learning more about the level-* ecosystem should watch this talk. |
@ivarconr and I talked about the Nodeschool elective Level Me Up Scotty!. Maybe a good place to start to learn more about LevelUP. |
@jarib fixed link. |
moved from #6
This is something i don't understand, and i get the feeling that the definition of success in open-sourcing unleash hasn't been clearly enough defined. For FINN open-sourcing unleash should be about commoditising a cost-center. By designing a solution that provides flexibility for any persistence layer you are doing the opposite and committing yourself to having to support all persistence layers. While one might think that providing such flexibility will help in community building, it is a short-sighted approach and the opposite might in fact be true: that people see a product that isn't properly supported against the design it proposes and this discourages community growth. I would focus on the correct and MVP design for the cost-center at hand. |
The design should favor availability and partition tolerance over consistency. |
We are choosing postgresql for the MVP. The team has experience with postgresql and little to none with cassandra. We want to limit the amount of unknowns in the project, so we can deliver in reasonable time. |
#3817) …787)" This reverts commit 896b636. <!-- Thanks for creating a PR! To make it easier for reviewers and everyone else to understand what your changes relate to, please add some relevant content to the headings below. Feel free to ignore or delete sections that you don't think are relevant. Thank you! ❤️ --> ## About the changes <!-- Describe the changes introduced. What are they and why are they being introduced? Feel free to also add screenshots or steps to view the changes if they're visual. --> <!-- Does it close an issue? Multiple? --> Closes # <!-- (For internal contributors): Does it relate to an issue on public roadmap? --> <!-- Relates to [roadmap](https://github.com/orgs/Unleash/projects/10) item: # --> ### Important files <!-- PRs can contain a lot of changes, but not all changes are equally important. Where should a reviewer start looking to get an overview of the changes? Are any files particularly important? --> ## Discussion points <!-- Anything about the PR you'd like to discuss before it gets merged? Got any questions or doubts? -->
The developers are considering using Postgresql or Cassandra for the persistence layer because those databases are in the technology stack of Finn.no.
@jarib is looking into how we can use LevelUP
The text was updated successfully, but these errors were encountered: