For something in between, I'd recommend Tangram. Why? It's object-relational; it has a schema language with features like links, foreign keys, and link tables; it has a relational database storage engine that allows Perl structures to persist in a SQL-compliant database; and, my favorite, on demand references that lazily load data as needed. See: