Navigation Menu

Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Create compressed blob sub-types [CORE1077] #1499

Open
firebird-automations opened this issue Jan 3, 2007 · 3 comments
Open

Create compressed blob sub-types [CORE1077] #1499

firebird-automations opened this issue Jan 3, 2007 · 3 comments

Comments

@firebird-automations
Copy link
Collaborator

Submitted by: m_Th (m_th)

Votes: 2

Create a way (using blob sub-types - which allow using the blob filters engine, for example) to allow users to store transparently compressed data on server. This is usefull for gaining speed due to fewer data which must be read from the disk but, because the data is (de)compressed on the fly the BLOB predicates (LIKE and the family) still work. IMHO, this is a very good improvement for text data and for blobs from the system tables.

@firebird-automations
Copy link
Collaborator Author

Commented by: @AlexPeshkoff

I don't understand why was it added as a feature request. Blob filters work in firebird for a long-long time. Just write your compress/decompress filter, define needed blob sub-type - and go.
What am I missing here?
Certainly, storing compressed BLOB data in system tables may be a feature request, but I doubt you've meant it. And anyway it is not clear from your request.

@firebird-automations
Copy link
Collaborator Author

Commented by: m_Th (m_th)

Theoretically you're right. But in practice no one will do it, IMHO. Giving what documentation is available for doing such a thing, how many users knows where to search for, how many users have the required programming skills to do it (remember that the percent of the users which knows C/C++ is very small in Fb user base) in order to know to do it, to have VS or gcpp or, better, both - to know the Firebird's calling conventions and structures, to have the time to do / test / mantain a cross-platform version both for the filter and for the compressing engine, renders the probability to have such a feature towards to 0 (zero). And the worse of all things is the user's perception that the BLOB filters are something 'esotheric' and 'dark'. The harderst thing is to change the way of thinking of your user base. And now we need to expand this user base not to scary them. We need distinguishing features not to tell something like: "Ok, here are the sources, compile them as you wish, you have somewhere in the source tree the SQZ.cpp. you can fix also a BLOB filter if you want compression, but it's your bussiness how to code, test and deploy it". For you, instead, which are a skilled C++ developer and know the internals of Fb a wrapper arround SQZ.cpp engine is very easy to do. It will be reliable, cross-platform, and "auto registering" in all databases - a feature which users often ask (ie. to have embedded functions / global UDF aso.). That's why I proposed this. Unfortunatelly the outside world doesn't have your skills and their TCO (total cost of ownership) and TTM (time to market) doesn't permit them to deal with such things. We need to minimize these, if we can afford.

hth.

@firebird-automations
Copy link
Collaborator Author

Modified by: @pcisar

Workflow: jira [ 11453 ] => Firebird [ 14559 ]

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

1 participant