An Interest In:
Web News this Week
- April 1, 2024
- March 31, 2024
- March 30, 2024
- March 29, 2024
- March 28, 2024
- March 27, 2024
- March 26, 2024
September 24, 2021 08:53 am GMT
Original Link: https://dev.to/siodb/schemaless-sql-database-for-strong-and-lasting-back-end-5d26
Schemaless SQL database for strong and lasting back end
Benefits of the solution
- Schemaless structures maintain in the code
- Your documents stored as relational tables transparently
- Performance and efficiency of relational database
- Easier to maintain in the long term
- Consume much fewer resources (cheaper in the cloud)
Examples
Single document - code side
var doc = { email: "[email protected]", firstname: "Dwain", lastname: "Jonhson", username: "dwainjonhson" }; doc.save(); collection("users").find({username: "dwainjonhson"}); /* { trid : 2, // auto id generation email: "[email protected]", firstname: "Dwain", lastname: "Jonhson", username: "dwainjonhson" } */
Single document - Database side
> select * from users;TRID EMAIL FIRST_NAME LAST_NAME USERNAME------ --------------------------- -------------- ------------- -------------- 2 dwain.jonhson@gmail.com Dwain Jonhson dwainjonhson
Nested documents - code side
var doc = { email: "[email protected]", firstname: "Dwain", lastname: "Jonhson", username: "dwainjonhson", phones: [{ alias: "home", number: "+1-202-555-0143" },{ alias: "mobile", number: "+1-202-555-0156" }] }; doc.save(); collection("users").find({username: "dwainjonhson"}); /* { trid : 2, // auto id generation email: "[email protected]", firstname: "Dwain", lastname: "Jonhson", username: "dwainjonhson" phones: [{ trid : 1, // auto id generation alias: "home", number: "+1-202-555-0143" },{ trid : 2, // auto id generation alias: "mobile", number: "+1-202-555-0156" }] } */
Nested documents - database side
> select * from users;TRID EMAIL FIRST_NAME LAST_NAME USERNAME------ --------------------------- -------------- ------------- -------------- 2 dwain.jonhson@gmail.com Dwain Jonhson dwainjonhson-- Nested phone documents automatically organized in table with the proper relationship.> select * from users_phones;TRID USERD_TRID ALIAS NUMBER----------- ----------- ----------------- ------------------------ 1 2 home +1-202-555-0143 2 2 mobile +1-202-555-0156
Conclusion
Push your document in the database without any worries about restructuring them later. Made all the modifications that you didn't predict because wasn't part of the initial requirements. And do this afterward with the comfort of SQL. Finally, reduce the cloud cost due to the resource consumption involved with traditional NoSQL databases.
This concept allows you to code fast with your data objects as documents (like Mongodb) while benefiting transparently from the relational databases (like PostgreSQL) .
Any questions? Please comment below :)
Original Link: https://dev.to/siodb/schemaless-sql-database-for-strong-and-lasting-back-end-5d26
Share this article:
Tweet
View Full Article
Dev To
An online community for sharing and discovering great ideas, having debates, and making friendsMore About this Source Visit Dev To