Level Extreme platform
Subscription
Corporate profile
Products & Services
Support
Legal
Français
Performance issues when querying shared data
Message
General information
Forum:
Visual FoxPro
Category:
Client/server
Environment versions
Visual FoxPro:
VFP 6
Miscellaneous
Thread ID:
01057091
Message ID:
01057357
Views:
7
I'm currently working with an application that uses updateable views extensively, and it performs fine. But I don't know what you mean when you say "... views also for reporting.".

But you mention "My first implementation...".
VFP takes some reading and practise to be well exploited. I guess the best advice I can offer at this time is to read the Help, and especially to sections on optimization (Rushmore, networked applications, etc). AND ASK HERE.

You will find that there are applications using multi-million records tables getting sub-second response, so it can be done. But it does take some care in creation/use of indexes.
One widely known problem is the one I mentioned, about having an idex on DELETED(). If you have a big table and very few records actually deleted then such an index can slow things down dramatically.

good luck. Persevere and you wuill be rewarded.


>My first implementation of a VFP application showed severe performance degradation when more users started using the table. After some soul searching the problem was discovered.
>I used updatable views also for reporting. After I created a a prg that wrote the results into a cursor the problems were gone.
>Are you using views? If so, are the updatable?
>
>Regards,
>Ron
>
>>Does the table have an index on DELETED() and, if so, what are the proportion of deleted records versus good records?
>>
>>good luck
>>
>>
>>>Hi Mike,
>>>
>>>Yes I can and I have by introducing a dummy where clause. It optimises and halves the time roughly 2 seconds.
>>>
>>>It would appear optimisation is the real issue. I can live with the slight difference, and I am hoping the customer will be happy with that.
>>>
>>>Cheers!
>>>
>>>Mathias
>>>>Hi Mathias
>>>>
>>>>>Hi All,
>>>>>
>>>>>I have had reports and a colleague has confirmed that a query takes significantly longer if the table being queried is open shared so:
>>>>>
>>>>>Select a.* from Customer a Into Cursor curCustomer where ??? && takes 2 seconds when I am the only user in the system
>>>>>
>>>>>The same query takes 5 seconds if the table customer is open by another user.
>>>>>
>>>>>No views involved
>>>>>
>>>>>Any ideas please?
>>>>
>>>>I just tried a small experiment. Querying a million record table for 10,000 results over the network - only me using the table .591 seconds. With a second user, .7 seconds. Of course my query is fully optimized. Caching will play a role.
>>>>
>>>>I would point out, that testing single user access versus multi-user access is not the issue. Most of the time, there will be multi-user access. The issue then is, can you get the query time down from 5 seconds at all?
Previous
Next
Reply
Map
View

Click here to load this message in the networking platform