Questions about nodes, trees, & best practices

I'm fairly new to Umbraco and am just blown away by the power and
customization that it offers. Really an amazing system. However, with
that freedom, I realize comes a lot more options to screw up.

I am a developer for a college and have the task of redeveoping the
entire college site on a new CMS ( I have chosen Umbraco ). I am
currently in the planning stage and have a couple questions on best
practices.

1. How does a large content tree impact backoffice performance? What suggestions would you give for a very large site?

2. I've seen mention of 'data nodes'. Apparently, content nodes that
do not display pages? I've found very little on this, but would like to
know to what they are referring to and how they are used.

3. Being a college we'll have a variety of content that belongs to
individual departments as well as the college as a whole. I'm at a loss
on how to structure these in the system.

Example:Staff bios, campus events, news articles, etc.
Departments will want to display staff bios on their individual deptmant
pages, but the college will also need an all encompassing staff page.
Obvisouly, we'd like to avoid duplicate data, so what would be the best
approach to this?

a. Have a 'staff' folder in the parent of the tree which contains all
staff members? The doc type would have an identifier that connects a
staff member to a department. The department would then just have to
create a page with a doc type that pulls in members from their
department. However, there are a few problems with this. 1. All editors
would be able to edit the staff members of a department they may not
belong too (not ideal). 2. The tree maybe be a little confusing without
having the bios under their departments tree node.

b. Departments have the option of creating a Staff page and
individual bios under the department node. The problem here is that
there wouldn't be an easy way to have an all encompassing staff page. We
couldn't just pull from all the departments, because not all
departments will have a staff page (leading to a lack of data). Then
there'd be duplicate data (and possiblities of inconsistancies between
each instance) if we did both options.

The example of staff bios holds true for events, news releases, and other instances.

Hi Dan,Congratulations on selecting Umbraco. It really is an outstanding CMS.I will try to answer your questions.

1. I have used Umbraco on sites with tens of thousands of nodes with no performance issues.For extremely large sites, you will make things easier on yourself by organizing nodes into "folders".What I am referring to are not really file system folders but "container" content nodes that act as the parent to other nodes.To do this, create a docType and select other docTypes as "allowed child nodeTypes" (on the Structure tab for the docType).

(Note: keep in mind while researching Umbraco - concepts are often referred to by multiple names. For example, "Node", "Content Node", "Content Item", "Tree Node" -- all mean the same thing.)

2. "Data Nodes" are simply content nodes that do not have a template associated with them so they are never rendered as web pages.Being content nodes, if published, their properties are still available to other web pages or to code modules.Some people use this approach to store site configuration data and then reference the nodes in code and read their properties.

3. As for your staff folders, option (a) sounds reasonable. You may want to research how to set user permissions as a way of addressing the problems you mention.

@David, thanks a lot. It's starting to make more sense. Couple other questions to clearify:

That's really reassuring about the performance on large sites. I think we should be fine. You mention a doctype that acts as a 'folder'. How does that play out if a user navigates directly to the folder? The navigation is based off of the tree, so if there is no template associated with that folder node, what does the user see? Is there an 'index' node of some sort? Is the user directed to the first node in that folder node?

I guess the question is the same for data nodes. Since they don't have templates, what happens if a user directly navigates to them?

Hi Dan,For your question about what happens "if a user navigates directly to the folder", I'm assuming you're talking about a visitor to the Web site.Most of the time a Web site visitor will never navigate to a "folder node" because they shouldn't know the URL. You wouldn't publish the url in, say, the nav menu of the site.If they happen to guess the url of a node with no template assigned, they would just get a 404.

That said, some sites do have templates for the "folder" nodes if it makes sense for that to be the launching point for the child nodes.So a node can be both a parent of child nodes - like a folder - and still have a template associated with it. An example is if you have a listing (as links) of all the child nodes contained in that folder.Other than that you would commonly see such a listing of those child nodes on the home page or elsewhere depending on the situation.

Note: I have found it useful to be aware of the terms used for the different types of individuals who interact with the site and Umbraco:Visitors - anonymous people on the Web site who aren't logged inMembers - people on the Web site who are logged in (see the "Members" section in Umbraco)Users - people logged into Umbraco who are interacting with Umbraco's back office UI (see the "Users" section in Umbraco)

Our.umbraco.com is the community mothership for Umbraco, the open source asp.net cms. With a friendly forum for all your questions, a comprehensive documentation and a ton of packages from the community.
This site is running
Umbraco version 7.15.1