Unix Technical Forum

[ANN] New PBXT/MyBS release enables JDBC-based BLOB streaming!

This is a discussion on [ANN] New PBXT/MyBS release enables JDBC-based BLOB streaming! within the MySQL General forum forums, part of the MySQL category; --> Hi All, I have just released PBXT 0.9.90 and MyBS version 0.5.03. PBXT is a transactional storage engine for ...


Go Back   Unix Technical Forum > Database Server Software > MySQL > MySQL General forum

Register FAQ Members List Calendar Search Today's Posts Mark Forums Read
  #1 (permalink)  
Old 02-28-2008, 07:01 AM
Paul McCullagh
 
Posts: n/a
Default [ANN] New PBXT/MyBS release enables JDBC-based BLOB streaming!

Hi All,

I have just released PBXT 0.9.90 and MyBS version 0.5.03. PBXT is a
transactional storage engine for MySQL (http://www.primebase.com/xt),
and MyBS is a storage engine that enables streaming of BLOB data
directly in and out of a MySQL database (http://www.blobstreaming.org) .

For this release I have completed changes to the MySQL Connector/J
5.0.7, to allow BLOB data to be transparently stored and retrieved
from the MyBS BLOB repository. The new version of the driver is
called MySQL Connector/J SE (streaming enabled).

Uploading a BLOB is as simple as using setBinaryStream() or setBlob()
on INSERT. By using getBinaryStream() or getBlob() after a SELECT you
get direct access to the data stream coming from the repository. More
information and some examples are provided in the documentation at:
http://www.blobstreaming.org/documentation.

To try this out you need to install the latest versions of PBXT and
MyBS. Both are available from: http://www.blobstreaming.org/download.

Binary versions of the storage engines are also available for MySQL
5.1.22 running on 32-bit Linux and x86 Mac OS X. The modified version
of the JDBC source code is included in the MyBS source code
distribution, but the driver can also be downloaded here: http://
http://www.blobstreaming.org/downloa....0.7se-bin.jar.

I have included a small test program, TestJDBC.java, as part of the
JDBC driver. So once you have installed the engines, you can test
BLOB streaming as follows:

java -cp mysql-connector-java-5.0.7se-bin.jar TestJDBC

TestJDBC connects to a local MySQL server, creates a PBXT table and
tests INSERT and SELECT of rows containing BLOBs. The program also
serves as an example of how to do BLOB streaming with JDBC.

To get started quickly, the most important things to note are:

* Set EnableBlobStreaming=true in your JDBC connection URL.
* Streamable BLOBs can only be stored in LONGBLOB columns in PBXT
tables.
* Use setBinaryStream(), setAsciiStream or setBlob() and specify the
length to upload a BLOB.

As usual, any comments, questions or bug reports can be sent directly
to me: paul-dot-mccullagh-at-primebase-dot-com. Make sure you put the
word PBXT or MyBS in the e-mail title to make it through my spam
filter!

Best regards,

Paul

Digg this Post!Add Post to del.icio.usBookmark Post in TechnoratiFurl this Post!
Reply With Quote
  #2 (permalink)  
Old 02-28-2008, 07:01 AM
Chad MILLER
 
Posts: n/a
Default a scheme for the future mysql-protocol, Re: [ANN] New PBXT/MyBS release enables JDBC-based BLOB streaming!


On 19 Oct 2007, at 04:35, Paul McCullagh wrote:

> For this release I have completed changes to the MySQL Connector/J
> 5.0.7, to allow BLOB data to be transparently stored and retrieved
> from the MyBS BLOB repository. The new version of the driver is
> called MySQL Connector/J SE (streaming enabled).


That's a beautiful hack, Paul.

Of course, you know what I'm going to say, but most of your readers
weren't at MySQLCamp-US-East where I proposed it: We can use this
experience to change mysql-proxy, as a stepping stone to making the
next mysql protocol (labled "p+1" below) that has (at least)
streaming built-in:

now: client -> server

next: client (p+1) -> proxy => server + mybs
& : client -> proxy -> server (p+1)
& : client (p+1) -> server (p+1)

so, older versions of client and server could speak to newer versions
of server and client, perhaps with proxy as an intermediary.

Alas, this is a long-term dream. I'm not proposing it for anyone
soon, but it's fun to think about.

- chad

--
Chad Miller, Software Developer chad@mysql.com
MySQL Inc., www.mysql.com
Orlando, Florida, USA 13-20z, UTC-0400
Office: +1 408 213 6740 sip:6740@sip.mysql.com



-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.6 (Darwin)

iD8DBQFHGNlG/peCpMTxrLsRAkEmAJsF4gp7mI8/7Z4ejMsg6zOqe0wlPACfZp79
5yAMfMp6b7VoF686yqiQ4Kc=
=Kd5p
-----END PGP SIGNATURE-----

Digg this Post!Add Post to del.icio.usBookmark Post in TechnoratiFurl this Post!
Reply With Quote
  #3 (permalink)  
Old 02-28-2008, 07:01 AM
Paul McCullagh
 
Posts: n/a
Default Re: a scheme for the future mysql-protocol, Re: [ANN] New PBXT/MyBS release enables JDBC-based BLOB streaming!

Hi Chad,

Yes, I agree. This is a really good idea. I think that it makes a lot
of sense to make streaming part of the standard MySQL protocol.

Your suggestion solves the problem that always comes with a
transition to a new protocol.

On Oct 19, 2007, at 6:20 PM, Chad MILLER wrote:

> On 19 Oct 2007, at 04:35, Paul McCullagh wrote:
>
>> For this release I have completed changes to the MySQL Connector/J
>> 5.0.7, to allow BLOB data to be transparently stored and retrieved
>> from the MyBS BLOB repository. The new version of the driver is
>> called MySQL Connector/J SE (streaming enabled).

>
> That's a beautiful hack, Paul.
>
> Of course, you know what I'm going to say, but most of your readers
> weren't at MySQLCamp-US-East where I proposed it: We can use this
> experience to change mysql-proxy, as a stepping stone to making the
> next mysql protocol (labled "p+1" below) that has (at least)
> streaming built-in:
>
> now: client -> server
>
> next: client (p+1) -> proxy => server + mybs
> & : client -> proxy -> server (p+1)
> & : client (p+1) -> server (p+1)
>
> so, older versions of client and server could speak to newer
> versions of server and client, perhaps with proxy as an intermediary.
>
> Alas, this is a long-term dream. I'm not proposing it for anyone
> soon, but it's fun to think about.
>
> - chad
>
> --
> Chad Miller, Software Developer chad@mysql.com
> MySQL Inc., www.mysql.com
> Orlando, Florida, USA 13-20z, UTC-0400
> Office: +1 408 213 6740 sip:6740@sip.mysql.com
>
>


Digg this Post!Add Post to del.icio.usBookmark Post in TechnoratiFurl this Post!
Reply With Quote
Reply


Thread Tools
Display Modes

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

vB code is On
Smilies are On
[IMG] code is On
HTML code is Off
Trackbacks are On
Pingbacks are On
Refbacks are On
Forum Jump


All times are GMT. The time now is 03:04 PM.


Powered by vBulletin® Version 3.6.5
Copyright ©2000 - 2008, Jelsoft Enterprises Ltd.
SEO by vBSEO 3.2.0
www.UnixAdminTalk.com