The Umbraco data model is supported by a number of relational databases. Out of the box, the data layer supports Vista DB, SQL CE, SQL Server, and MySQL databases. As of this writing, it does not support Oracle. Having the properties stored in a relational database makes persisting data convenient and provides developers with an industry standard for working with data. The Umbraco backoffice works directly with the installed database when saving and retrieving content nodes, media items, document types, users, and more. Because the authoring environment will not receive thousands of requests by hundreds of users at the same time, interacting directly with the database is not a performance consideration. If you had a very high-trafficked backoffice, you could run Umbraco in a distributed load-balanced environment. Chapter 13 briefly covers this topic.

Even though the supported databases are all multi-threaded, with thousands of requests coming in at the same time, the serving of content would eventually be hampered, resulting in a slow-responding website—not a desired outcome. Umbraco has a way to resolve this issue by providing the content and media items via a file-based, in-memory XML cache. This cache allows for much faster access to the structured data, and the dependency on making trips to a database is no longer there. It also allows the content management system (CMS) to separate published versus unpublished content because only published nodes will ...

Get Umbraco User's Guide now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.