I’ll add a little caveat though. If a query hits lots of rows and thus the optimizer decides to do a full table scan (or a partition scan), the database could still end up having to read the blobs from disk, only omitting them in the returned results. So there may still be performance-related reasons to keep such blobs in separate entities (or elsewhere), depending on the specific RDBMS and it’s configuration.
> Am 29.11.2019 um 07:07 schrieb Lon Varscsak <lon.varsc...@gmail.com>: > > Yeah, it's a great idea. > > On Thu, Nov 28, 2019 at 6:06 AM Maik Musall <m...@selbstdenker.ag> wrote: > >> +1 sounds very useful to simplify the data model here and there >> >>> Am 27.11.2019 um 13:06 schrieb Michael Gentry <blackn...@gmail.com>: >>> >>> I just happened across an article on Hibernate which talks about lazy >>> attributes. (A recent addition, I think.) This essentially allows you >> to >>> flag an attribute/column as lazy and it'll be excluded from the original >>> SELECT query, but if you call the getter it will then fetch it in. This >> is >>> convenient for BLOB-type data that might happen to be in a main table >> with >>> other attributes (such as MIME types, file sizes, file names, etc). >>> >>> Thoughts on maybe adding this feature to Cayenne? I can imagine there'd >> be >>> a "Lazy" column in Cayenne Modeler for the attributes to control/identify >>> them. >>> >>> Thanks, >>> >>> mrg >> >>