Unix Technical Forum

question about compression with IConnect

This is a discussion on question about compression with IConnect within the Informix forums, part of the Database Server Software category; --> Is anyone aware of any way of compressing the data using IConnect or any middleware? In our current environment, ...


Go Back   Unix Technical Forum > Database Server Software > Informix

FAQ Members List Calendar Search Today's Posts Mark Forums Read
  #1 (permalink)  
Old 04-20-2008, 01:09 PM
Vivien Kobayashi
 
Posts: n/a
Default question about compression with IConnect

Is anyone aware of any way of compressing the data using IConnect or
any middleware?

In our current environment, we have quite a few clients connected to
our 9.4 IDS via WAN.
The windows GUI client application is written in MFC which uses a DLL
that connects to the server using ESQL/C. The ESQL/C uses IConnect
version 2.81tc3.

The performance on the server is sufficient (CPU is usually 90% idle).
The performance for the LAN clients is sufficient; however, the
performance for the remote clients is not.

Our main MFC developer has performed experiments by writing his own
middle layer with compression instead of connecting using IConnect.
These experiments show that IConnect is a major bottleneck. While the
native speed of the WAN links is indeed slower than the LAN, the
experiements got the WAN performance level up to an accetptable level.
However, this was only an experiment, and not pursued to develop a full
solution due to the complexity and cost of the implementation. We've
then talked to IBM/Informix but it did not go anywhere. The primary
suggestion we got is to move from HDR to ER but the complication and
the cost of ER is not preferrable at this point.

Our version of ideal solution is that the IConnect layer can be
optimized, potentially with built-in compression. However, it seems
compression is available but only among the servers participated in the
ER. Why isn't it available to the client connection? has anybody knew
or written any middle layer for compression to deal with the WAN
traffic? Any suggestion is appreciated.

Thank you.

-Vivien Kobayashi

Digg this Post!Add Post to del.icio.usBookmark Post in TechnoratiFurl this Post!
Reply With Quote
  #2 (permalink)  
Old 04-20-2008, 01:09 PM
Clive Eisen
 
Posts: n/a
Default Re: question about compression with IConnect

Vivien Kobayashi wrote:
> Is anyone aware of any way of compressing the data using IConnect or
> any middleware?
>

<snip>
>
> Our version of ideal solution is that the IConnect layer can be
> optimized, potentially with built-in compression. However, it seems
> compression is available but only among the servers participated in the
> ER. Why isn't it available to the client connection? has anybody knew
> or written any middle layer for compression to deal with the WAN
> traffic? Any suggestion is appreciated.


Well - you COULD write a network listener in <fill in language of your
choice> to listen on the client machine and compress data and connect
over the network to it's twin that uncompresses at the far end and
passes onto IDS.

The Stevens volume 1 of Network Programming will have client server
examples and it will be trivial to pipe IO through <fill in compression
library of your choice>

Alternatively you could hack the source of netcat to compress<->decompress

Then your client connect to 'localhost' or some other server on the lan
and then the wan connection is compressed.

I would offer to quote you for the work but that would be bad netiquette!


--
Clive Eisen
CTO Hildebrand Group
Digg this Post!Add Post to del.icio.usBookmark Post in TechnoratiFurl this Post!
Reply With Quote
  #3 (permalink)  
Old 04-20-2008, 01:09 PM
Madison Pruet
 
Posts: n/a
Default Re: question about compression with IConnect

Vivien Kobayashi wrote:
> Is anyone aware of any way of compressing the data using IConnect or
> any middleware?
>
>
> Our main MFC developer has performed experiments by writing his own
> middle layer with compression instead of connecting using IConnect.
> These experiments show that IConnect is a major bottleneck. While the
> native speed of the WAN links is indeed slower than the LAN, the
> experiements got the WAN performance level up to an accetptable level.
> However, this was only an experiment, and not pursued to develop a full
> solution due to the complexity and cost of the implementation. We've
> then talked to IBM/Informix but it did not go anywhere. The primary
> suggestion we got is to move from HDR to ER but the complication and
> the cost of ER is not preferrable at this point.


I don't understand. IConnect is client/server connections. ER/HDR is
server-to-server.

Compression is useful mainly when the cost of compression is low
compared to the saved cost of network transmission. We put it in for ER
because with ER we are sending a lot of data to a lot of servers. Since
the transmission is going to be large blocks (complete transactions) and
we knew from testing that the savings would be significant, we added it
for ER. We didn't think that we would get as much savings with HDR
because we use logging compression and didn't think that we'd get good
savings.

For client server connections, the messages tend to be rather small, so
the benefit would be even less.

>
> Our version of ideal solution is that the IConnect layer can be
> optimized, potentially with built-in compression. However, it seems
> compression is available but only among the servers participated in the
> ER. Why isn't it available to the client connection? has anybody knew
> or written any middle layer for compression to deal with the WAN
> traffic? Any suggestion is appreciated.
>
> Thank you.
>
> -Vivien Kobayashi
>

Digg this Post!Add Post to del.icio.usBookmark Post in TechnoratiFurl this Post!
Reply With Quote
  #4 (permalink)  
Old 04-20-2008, 01:10 PM
Vivien Kobayashi
 
Posts: n/a
Default Re: question about compression with IConnect

Recap from the email,

>I don't understand. IConnect is client/server connections. ER/HDR is
>server-to-server.


What IBM was saying is if we make all servers local to the clients
which would improve the clients performance. I agree this might be
true, ex: instead of using 3Mbps bandwidth connecting to our server in
California, UK users will definitely see a lot of speed improvement if
the server is local to them with LAN speed(100/1000Mbps).


>Compression is useful mainly when the cost of compression is low
>compared to the saved cost of network transmission. We put it in for ER
>because with ER we are sending a lot of data to a lot of servers. Since
>the transmission is going to be large blocks (complete transactions) and
>we knew from testing that the savings would be significant, we added it
>for ER. We didn't think that we would get as much savings with HDR
>because we use logging compression and didn't think that we'd get good
>savings.


>For client server connections, the messages tend to be rather small, so
>the benefit would be even less.



Well, I think that depends on the return of the queries.. the main
table has a lot of columns (some clobs but mostly text, ideal for
compression) and the transmission between server and client is not
insignificant. We already know when the server and the clients are
connected via LAN, the performance is great; but not when the network
bandwidth is limited. I agree compression might be expensive for some;
however, it seems we have excessive power of server which is
shoe-shining most of time. So why not doing something useful, say
compression/decompression. Just a thought.

Thanks for your comments.

-Vivien Kobayashi

Madison Pruet wrote:
> Vivien Kobayashi wrote:
> > Is anyone aware of any way of compressing the data using IConnect or
> > any middleware?
> >
> >
> > Our main MFC developer has performed experiments by writing his own
> > middle layer with compression instead of connecting using IConnect.
> > These experiments show that IConnect is a major bottleneck. While the
> > native speed of the WAN links is indeed slower than the LAN, the
> > experiements got the WAN performance level up to an accetptable level.
> > However, this was only an experiment, and not pursued to develop a full
> > solution due to the complexity and cost of the implementation. We've
> > then talked to IBM/Informix but it did not go anywhere. The primary
> > suggestion we got is to move from HDR to ER but the complication and
> > the cost of ER is not preferrable at this point.

>
> I don't understand. IConnect is client/server connections. ER/HDR is
> server-to-server.
>
> Compression is useful mainly when the cost of compression is low
> compared to the saved cost of network transmission. We put it in for ER
> because with ER we are sending a lot of data to a lot of servers. Since
> the transmission is going to be large blocks (complete transactions) and
> we knew from testing that the savings would be significant, we added it
> for ER. We didn't think that we would get as much savings with HDR
> because we use logging compression and didn't think that we'd get good
> savings.
>
> For client server connections, the messages tend to be rather small, so
> the benefit would be even less.
>
> >
> > Our version of ideal solution is that the IConnect layer can be
> > optimized, potentially with built-in compression. However, it seems
> > compression is available but only among the servers participated in the
> > ER. Why isn't it available to the client connection? has anybody knew
> > or written any middle layer for compression to deal with the WAN
> > traffic? Any suggestion is appreciated.
> >
> > Thank you.
> >
> > -Vivien Kobayashi
> >


Digg this Post!Add Post to del.icio.usBookmark Post in TechnoratiFurl this Post!
Reply With Quote
  #5 (permalink)  
Old 04-20-2008, 01:10 PM
Fernando Nunes
 
Posts: n/a
Default Re: question about compression with IConnect

Vivien Kobayashi wrote:
> Is anyone aware of any way of compressing the data using IConnect or
> any middleware?
>
> In our current environment, we have quite a few clients connected to
> our 9.4 IDS via WAN.
> The windows GUI client application is written in MFC which uses a DLL
> that connects to the server using ESQL/C. The ESQL/C uses IConnect
> version 2.81tc3.
>
> The performance on the server is sufficient (CPU is usually 90% idle).
> The performance for the LAN clients is sufficient; however, the
> performance for the remote clients is not.
>
> Our main MFC developer has performed experiments by writing his own
> middle layer with compression instead of connecting using IConnect.
> These experiments show that IConnect is a major bottleneck. While the
> native speed of the WAN links is indeed slower than the LAN, the
> experiements got the WAN performance level up to an accetptable level.
> However, this was only an experiment, and not pursued to develop a full
> solution due to the complexity and cost of the implementation. We've
> then talked to IBM/Informix but it did not go anywhere. The primary
> suggestion we got is to move from HDR to ER but the complication and
> the cost of ER is not preferrable at this point.
>
> Our version of ideal solution is that the IConnect layer can be
> optimized, potentially with built-in compression. However, it seems
> compression is available but only among the servers participated in the
> ER. Why isn't it available to the client connection? has anybody knew
> or written any middle layer for compression to deal with the WAN
> traffic? Any suggestion is appreciated.
>
> Thank you.
>
> -Vivien Kobayashi
>


Are you sure your application is doing the right thing?
An example: Zip Code and it's description. If your application gets all the Zip-description table, waiting for the user to fill in the Zip Code to show the description it can lead to heavy data exchange between the client and the server... If it makes the query after getting the zip code from the user, it may have a slight delay, but the data exchanged will be much less.

The question you should ask is: The data that the user sees on screen justifies the slowness of the application? Did they use local or remote cursors...? etc.
I don't think you've posted the bandwidth of the WAN links, but compare that with the visible data on the application screen and decide if it's reasonable...

I recall a case where a customer was using MS environments, and there were some options (local/remote cursors if I recall correctly) that could make a huge difference...


Regards.

--
Fernando Nunes
Portugal

http://informix-technology.blogspot.com
My email works... but I don't check it frequently...
Digg this Post!Add Post to del.icio.usBookmark Post in TechnoratiFurl this Post!
Reply With Quote
  #6 (permalink)  
Old 04-20-2008, 01:10 PM
Eric Rowell
 
Posts: n/a
Default Re: question about compression with IConnect

Starship Solutions has a product that does a secure DR for Informix
and I know they where looking at adding or had added compression to
speed transfer. I'm not aware of any tool that does the server to
server compression.



Eric B. Rowell


On 9/28/06, Fernando Nunes <spam@domus.online.pt> wrote:
> Vivien Kobayashi wrote:
> > Is anyone aware of any way of compressing the data using IConnect or
> > any middleware?
> >
> > In our current environment, we have quite a few clients connected to
> > our 9.4 IDS via WAN.
> > The windows GUI client application is written in MFC which uses a DLL
> > that connects to the server using ESQL/C. The ESQL/C uses IConnect
> > version 2.81tc3.
> >
> > The performance on the server is sufficient (CPU is usually 90% idle).
> > The performance for the LAN clients is sufficient; however, the
> > performance for the remote clients is not.
> >
> > Our main MFC developer has performed experiments by writing his own
> > middle layer with compression instead of connecting using IConnect.
> > These experiments show that IConnect is a major bottleneck. While the
> > native speed of the WAN links is indeed slower than the LAN, the
> > experiements got the WAN performance level up to an accetptable level.
> > However, this was only an experiment, and not pursued to develop a full
> > solution due to the complexity and cost of the implementation. We've
> > then talked to IBM/Informix but it did not go anywhere. The primary
> > suggestion we got is to move from HDR to ER but the complication and
> > the cost of ER is not preferrable at this point.
> >
> > Our version of ideal solution is that the IConnect layer can be
> > optimized, potentially with built-in compression. However, it seems
> > compression is available but only among the servers participated in the
> > ER. Why isn't it available to the client connection? has anybody knew
> > or written any middle layer for compression to deal with the WAN
> > traffic? Any suggestion is appreciated.
> >
> > Thank you.
> >
> > -Vivien Kobayashi
> >

>
> Are you sure your application is doing the right thing?
> An example: Zip Code and it's description. If your application gets all the Zip-description table, waiting for the user to fill in the Zip Code to show the description it can lead to heavy data exchange between the client and the server... If it makes the query after getting the zip code from the user, it may have a slight delay, but the data exchanged will be much less.
>
> The question you should ask is: The data that the user sees on screen justifies the slowness of the application? Did they use local or remote cursors...? etc.
> I don't think you've posted the bandwidth of the WAN links, but compare that with the visible data on the application screen and decide if it's reasonable...
>
> I recall a case where a customer was using MS environments, and there were some options (local/remote cursors if I recall correctly) that could make a huge difference...
>
>
> Regards.
>
> --
> Fernando Nunes
> Portugal
>
> http://informix-technology.blogspot.com
> My email works... but I don't check it frequently...
> _______________________________________________
> Informix-list mailing list
> Informix-list@iiug.org
> http://www.iiug.org/mailman/listinfo/informix-list
>

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 09:50 AM.


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