I've only been using Umbraco for a week but feel I'm getting a good grasp of the architecture and how to use it. One recurring topic that comes up is whether we should be storing data in SQL Tables or using Content to store and manage data. Do you have any recommendations on when each should/shouldn't be used?
My understanding is that Content is best for user-provided / user-managed data, while SQL tables may be better for member-provided / member-managed / system generated data? Also, content has a hierachy which may or may not be suited to certain data structures but may be better suited that a table structure.
Any thoughts, recommendations or experience on this would be appreciated.
What kind of content do you have in mind? If for instance you have a small product-database that you would want to make easy to administer through the Umbraco backoffice I would probably go with a custom section where the data can be fetched from another table in the database or from within another database for instance.
So I guess you can say that if something is suitable editing as web-content, then it should go in Umbraco. If it's something that does not make sense to store in a CMS then it might be worth considering integrating it in another way like using a custom section (If it makes sense to have a UI for manipulating the data inside of Umbraco) or simply fetch the data within a custom model and expose it to the view using a custom controller.
We recently worked on a project where we had the concept of a package and to that package you could add models with photos which were media items.
Intially we used umbraco for storing the packages, worked fine however once it went out into wild and with amount of packages being created and data being added to package we were starting to see lag on the front end. So we moved out the packages in to db table which gave us a really big boost on site speed which for client was critical.
Thanks for the feedback guys. It'll really help avoid headaches in the future for me.
An example of what we've got is an event management system, where I was debating whether an event should be a content item or a record in a table. Over time there could be a large number of events (1000-10000) and I was thinking this will be hard to manage via the UI and may slow down the web site.
Database Table Vs Content
Hello Umbraco Veterans,
I've only been using Umbraco for a week but feel I'm getting a good grasp of the architecture and how to use it. One recurring topic that comes up is whether we should be storing data in SQL Tables or using Content to store and manage data. Do you have any recommendations on when each should/shouldn't be used?
My understanding is that Content is best for user-provided / user-managed data, while SQL tables may be better for member-provided / member-managed / system generated data? Also, content has a hierachy which may or may not be suited to certain data structures but may be better suited that a table structure.
Any thoughts, recommendations or experience on this would be appreciated.
Hi Ben and welcome to our :)
What kind of content do you have in mind? If for instance you have a small product-database that you would want to make easy to administer through the Umbraco backoffice I would probably go with a custom section where the data can be fetched from another table in the database or from within another database for instance.
Tim Geyssens has an example of this here http://www.nibble.be/?p=440
So I guess you can say that if something is suitable editing as web-content, then it should go in Umbraco. If it's something that does not make sense to store in a CMS then it might be worth considering integrating it in another way like using a custom section (If it makes sense to have a UI for manipulating the data inside of Umbraco) or simply fetch the data within a custom model and expose it to the view using a custom controller.
I hope this makes sense.
/Jan
Ben,
We recently worked on a project where we had the concept of a package and to that package you could add models with photos which were media items.
Intially we used umbraco for storing the packages, worked fine however once it went out into wild and with amount of packages being created and data being added to package we were starting to see lag on the front end. So we moved out the packages in to db table which gave us a really big boost on site speed which for client was critical.
Regards
Ismail
Thanks for the feedback guys. It'll really help avoid headaches in the future for me.
An example of what we've got is an event management system, where I was debating whether an event should be a content item or a record in a table. Over time there could be a large number of events (1000-10000) and I was thinking this will be hard to manage via the UI and may slow down the web site.
is working on a reply...