First, thanks for your time. Sorry If I'm communicating poorly.
Imagine the sets describe locations: North America, USA, Georgia, Fulton County, Atlanta.
I might describe this relationship in a relationship table (I'm excluding the actual person and set tables and using names instead of Ids for clarity):
Parent Set | Child Set
============================
North America | USA
USA | Georgia
Georgia | Fulton County
Georgia | Dekalb County
Fulton County | Atlanta
Dekalb County | Decatur
Person | Set
================
Joe | Atlanta
Jane | Decatur
Now, I have an extremely frequent and latency-sensitive query that says "Give me all the people (or sets) under Georgia". My thought is to make this query really fast by projecting it into this shape:
Person | Contained By
==============
Joe | Atlanta
Joe | Fulton County
Joe | Georgia
Joe | USA
Joe | North America
Jane | Decatur
Jane | Dekalb County
Jane | Georgia
Jane | USA
Jane | North America
And then another one for SetsContainedBy.
Sadly, Using actual snowflake schema has two distinct disadvantages in my case, the first is that sets (and dimensions) are really dynamic, and that I can have sets be child to multiple other sets (for example, Atlanta actually lies in two counties, Fulton and Dekalb).
I hope that clarifies my goal, and why the recursion seems like an obvious win to a non-dba. Thanks again.