Brian Aker wrote:
Hi!

On Nov 7, 2008, at 5:42 PM, Mats Kindahl wrote:

BLOBs should not be sent in-band. Instead, just a BLOB locator should be sent (e.g., a URL) and then the storage engine, server main, or whatever, can open a connection and feed the blob into the correct place directly instead of copying in into the receiver buffer and then feeding that to the storage engine (usually
by copying it).

The problem with this is that the server is not built to accommodate this (and it would be a massive rewrite to change it). We have no specific was to version blobs internally and they are generated at row request for the request. Any sort of "grab later" would not guarantee that it was the same blob (or that the blob even continued to exist). If someone wants this sort of behavior they need to need to normalize their schema in a manner to support it.

Is this the best solution? No. It would be a massive overhaul to change the way row retrieval works though to support it. Even then, most engines probably couldn't do it. I think it would be nice to find a way to optionally support it if an engine could do it, but that is a different issue (and can be solved without really messing with the protocol by much).


Even if it is inconvenient, it is the way to go. Why send a 50MB PDF to the client if the client isn't going to actually request it?

From the very dawn of the Blob Era, blobs we designed and intended to set sent out of band. Little ones, sure, send 'em along 'cause the extra trip isn't worth it. Big ones? No question -- wait for someone to ask.

Philosophically, I'm not sure than inconvenience should be a major consideration when considering architectures. If drizzle could delay blob materialization to the last possible nanosecond in hope it would need to, drizzle would be a great deal more application friendly.

Traditionally, somebody says, "But, Jim, our users don't store big blobs anyway." If case this question is raised, the immediate answer is "because they've been trained not to."

In the spirit of "yes, we can", I suggest that somebody turn his or her fertile brain to the question of deferring blob materialization. Maybe it isn't the boogy bug Brian thinks it is (unfortunately, I think it probably is).

--
Jim Starkey
President, NimbusDB, Inc.
978 526-1376


_______________________________________________
Mailing list: https://launchpad.net/~drizzle-discuss
Post to     : [email protected]
Unsubscribe : https://launchpad.net/~drizzle-discuss
More help   : https://help.launchpad.net/ListHelp

Reply via email to