Icon View Thread

The following is the text of the current message along with any replies.
Messages 1 to 8 of 8 total
Thread Network performance issue on multiple connections
Wed, Sep 7 2011 7:13 AMPermanent Link

Mathias Gerlach

Hi,

I'm using the lastest version of DBISAM and have a performance issue with large tables (15.000 records).

I've two machines. Database is local on machine 1.

The SELECT query of all records from machine 2 needs 5 seconds if no other machine is using the database. If another user is connected to the database the same query needs 25 seconds.

I use file access to the tables (no DBISAM server). Both machines run under Windows 7 Prof. and are connected with 100MB.

Is there anything I can do (accept switching to DBISAM Server)?

Thank you
Mathias



Attachments: dbisam.png
Wed, Sep 7 2011 7:21 AMPermanent Link

Mathias Gerlach

Mathias Gerlach wrote:

Hi,

I'm using the lastest version of DBISAM and have a performance issue with large tables (15.000 records).

I've two machines. Database is local on machine 1.

The SELECT query of all records from machine 2 needs 5 seconds if no other machine is using the database. If another user is connected to the database the same query needs 25 seconds.

I use file access to the tables (no DBISAM server). Both machines run under Windows 7 Prof. and are connected with 100MB.

You can find an screenshot attached. The left peak shows the query when no other user is connected to the database and the right if another user has opened the table.

Is there anything I can do (accept switching to DBISAM Server)?

Thank you
Mathias
Wed, Sep 7 2011 7:42 AMPermanent Link

Roy Lambert

NLH Associates

Team Elevate Team Elevate

Mathias


If you search through these newsgroups you'll find that its a fairly common question. The nasty part is that the answer is there's nothing you can do since its down to Windows not DBISAM. Very roughly if only one person has a file open Windows will treat it differently than if two or more people are accessing the file. Effectively think of exclusive vs shared usage.

All you can do is make the queries as efficient as possible.


Roy Lambert [Team Elevate]

ps 15k records isn't that big - one of mine is 198k
Wed, Sep 7 2011 2:23 PMPermanent Link

Tim Young [Elevate Software]

Elevate Software, Inc.

Avatar

Email timyoung@elevatesoft.com

Mathias,

<< Is there anything I can do (accept switching to DBISAM Server)? >>

Unfortunately, no.  As Roy indicated, if you search the support forums on
"opportunistic locking", you'll get an idea of the problem:

http://www.elevatesoft.com/forums?action=search&category=dbisam&keywords=opportunistic
locking&searchbody=True

The problem seems to keep getting worse with every new iteration of the SMB
protocol, also (Windows Vista and 7 use the new SMB2 protocol).

--
Tim Young
Elevate Software
www.elevatesoft.com
Fri, Sep 30 2011 1:53 PMPermanent Link

Serge Chelli

Hi Tim,

I have exactly the same problem with an aaplication using dbisam 3.

Can you confirm me that the performence will be better if I use dbisam 4 ou elevateDB please ?

Thanks

Serge
Mon, Oct 3 2011 9:51 AMPermanent Link

Tim Young [Elevate Software]

Elevate Software, Inc.

Avatar

Email timyoung@elevatesoft.com

Serge,

<< I have exactly the same problem with an aaplication using dbisam 3.

Can you confirm me that the performence will be better if I use dbisam 4 ou
elevateDB please ? >>

If you're referring to the issue of reduced performance on any second or
subsequent connection to the database table(s) over a direct, shared-file
connection, then the answer is no, DBISAM 4 or ElevateDB will not help in
this respect.  The performance issue is related to how the SMB (Server
Message Block) protocol works under Windows.  The single connection
performance is actually "fake", in that it doesn't represent the actual
network performance since much of the data is being cached locally on the
accessing computer and not actually read/written over the network to the
server.

--
Tim Young
Elevate Software
www.elevatesoft.com
Sat, Oct 22 2011 12:44 PMPermanent Link

Serge Chelli

Hi,

Can I have a better performance if I am using client/server version of dbisam3 insteed of peer to peer ?

Serge

"Tim Young [Elevate Software]" wrote:

Serge,

<< I have exactly the same problem with an aaplication using dbisam 3.

Can you confirm me that the performence will be better if I use dbisam 4 ou
elevateDB please ? >>

If you're referring to the issue of reduced performance on any second or
subsequent connection to the database table(s) over a direct, shared-file
connection, then the answer is no, DBISAM 4 or ElevateDB will not help in
this respect.  The performance issue is related to how the SMB (Server
Message Block) protocol works under Windows.  The single connection
performance is actually "fake", in that it doesn't represent the actual
network performance since much of the data is being cached locally on the
accessing computer and not actually read/written over the network to the
server.

--
Tim Young
Elevate Software
www.elevatesoft.com
Mon, Oct 31 2011 8:46 AMPermanent Link

Tim Young [Elevate Software]

Elevate Software, Inc.

Avatar

Email timyoung@elevatesoft.com

Serge,

<< Can I have a better performance if I am using client/server version of
dbisam3 insteed of peer to peer ? >>

Yes, you will see better performance that way also.  However, just be aware
that DBISAM 3 is fairly old and there aren't any bug fixes available for it
anymore.

--
Tim Young
Elevate Software
www.elevatesoft.com
Image