Re: PostgreSQL gaps wrt to java, and jdbc - Mailing list pgsql-jdbc

From Dave Cramer
Subject Re: PostgreSQL gaps wrt to java, and jdbc
Date
Msg-id CADK3HHJvpT1uSOnbAQ7SiudUyJwNKt_SY-nacJqxK2+PhY15iA@mail.gmail.com
Whole thread Raw
In response to Re: PostgreSQL gaps wrt to java, and jdbc  ("Markus KARG" <markus@headcrashing.eu>)
Responses Re: PostgreSQL gaps wrt to java, and jdbc  (Kevin Wooten <kdubb@me.com>)
List pgsql-jdbc



On 7 July 2015 at 16:46, Markus KARG <markus@headcrashing.eu> wrote:

No, unfortunately not, as there is a big difference between compression and binary transmission. See the following example:

 

<Some-Element xyz="345678,901">

               <Some-Other-Element abc="54321,876">

                              <Some-Value my-attribute="123456,789"/>

               </Some-Other-Element>

</Some-Element>

 

With compression, you can certainly get rid of the whitespace, and if the compression algorithms is better you even will have refs instead of element names, but that's it, mostly. What about the numbers? Still transfered untouched, as unique hence uncompressable. So lots of integers and decimals screws compression.

 

Binary transmission on the other hand will only need four bytes per integer. That makes twelve bytes for all the above attributes.


You would require oids (or some other way to decode) for numbers, boolean, strings, etc for each binary representation, no ?


Dave Cramer

dave.cramer(at)credativ(dot)ca
http://www.credativ.ca

 

 

From: davecramer@gmail.com [mailto:davecramer@gmail.com] On Behalf Of Dave Cramer
Sent: Dienstag, 7. Juli 2015 19:54
To: Markus KARG
Cc: List
Subject: Re: [JDBC] PostgreSQL gaps wrt to java, and jdbc

 

Looking at the backend code. One possibility is to just use compression to send it over?


Dave Cramer

dave.cramer(at)credativ(dot)ca
http://www.credativ.ca

 

On 6 July 2015 at 12:35, Markus KARG <markus@headcrashing.eu> wrote:

Binary represenation of XML and JSON instead of converting it to a String BEFORE transmission. Both JSON and XML essentially are graphs, and can be inflated with whitespace on the driver side AFTER transmission. Same in the other direction (deflate by transmitting binary object graph instead of whitespace-inflated String representation).

 

 

From: pgsql-jdbc-owner@postgresql.org [mailto:pgsql-jdbc-owner@postgresql.org] On Behalf Of Dave Cramer
Sent: Montag, 6. Juli 2015 14:15
To: List
Subject: [JDBC] PostgreSQL gaps wrt to java, and jdbc

 

I have been actively maintaining the driver off and on since 1999 or so. Recently we have had a flurry of activity and one of the things I noticed was the surprise that PostgreSQL didn't support X or did Y in some unexpected way. Sometimes we are a bit too complacent, and accept things the way they are.

 

I am wondering what could the server do better that would help JDBC?

 

Obviously streaming a column is one. Possibly rowid's. Anything else ?

 


Dave Cramer

 


pgsql-jdbc by date:

Previous
From: "Markus KARG"
Date:
Subject: Re: PostgreSQL gaps wrt to java, and jdbc
Next
From: Kevin Wooten
Date:
Subject: Re: PostgreSQL gaps wrt to java, and jdbc