Login ProductsSalesSupportDownloadsAbout |
Home » Technical Support » ElevateDB Technical Support » Support Forums » ElevateDB SQL » View Thread |
Messages 1 to 6 of 6 total |
sensitive query and locate performance... |
Tue, Sep 13 2011 6:20 AM | Permanent Link |
Stefano Monterisi | Hi Tim,
in upgrade from DBISAM to EDB I have "crashed" against Devexpress incremental search in cxgrid (no locate) and solved it with a code change... Now, I want a very high performant locate on EDB query so I have this question: A Locate on EDB sensitive query (order by...) can use index in engine so it can performe fast index seek, or it scroll the entire query result? (I hope the answer is the first, but I think that you tell me the second one I want to obtain fast incremental searches on a query (select ... where... order by....) instead of a table. Any hint? Good job. Stefano Monterisi Documento senza titolo Stefano Monterisi - monterisi@sesamoweb.it Sesamo Software S.p.A. Via Adamello, 2 71042 Cerignola (Fg) Tel.: +39 0885 416969 - 421501 - 421502 - 416392 Fax: +39 0885 444925 Filiale Via Premuda, 3 00195 Roma Tel.: +39 06 3220238 Fax: +39 06 32646539 www.sesamoweb.it D.L. 30 giugno 2003 n. 196 e D.L. 24 dicembre 2003 n. 354 (tutela dei dati personali) ------------------------------------------------------------------------------------------------------ INFORMAZIONI STRETTAMENTE CONFIDENZIALI Questo messaggio di posta elettronica contiene informazioni di carattere confidenziale rivolte esclusivamente al destinatario sopra indicato. E' vietato l'uso, la diffusione, distribuzione o riproduzione da parte di ogni altra persona. Nel caso aveste ricevuto questo messaggio di posta elettronica per errore, siete pregati di segnalarlo immediatamente al mittente e distruggere quanto ricevuto (compresi i file allegati) senza farne copia. Qualsivoglia utilizzo non autorizzato del contenuto di questo messaggio costituisce violazione dell'obbligo di non prendere cognizione della corrispondenza tra altri soggetti, salvo più grave illecito, ed espone il responsabile alle relative conseguenze. ------------------------------------------------------------------------------------------------------ CONFIDENTIALLY NOTICE This e-mail transmission may contain legally privileged and/or confidential information. Please do not read it if you are not the intended recipient(S). Any use, distribution, reproduction or disclosure by any other person is strictly prohibited. If you have received this e-mail in error, please notify the sender and destroy the original transmission and its attachments without reading or saving it in any manner. Questo messaggio prima dell'invio è stato controllato con Kaspersky Antivirus 6.0 |
Tue, Sep 13 2011 9:04 AM | Permanent Link |
Uli Becker | Stefano,
> A Locate on EDB sensitive query (order by...) can use index in engine so it > can performe fast index seek, or it scroll the entire query result? Sure it does, and if all indexes are set properly you shouldn't have any problems. Please be aware that you should define your index "CaseInsensitive" if you want to use a CaseInsensitive search. The collation has always to match! You can test your query in EDBManager by opening a new query window and checking "Request Execution Plan" in the Options panel. After executing your query you can see everything in detail. If an index is *not* set properly, you'll see a row scan there and get the right hint. Example: Filtering --------- The following filter condition was applied to the MyTable table: "MyDate" < CURRENT_DATE() Row scan (MyTable): 18756 rows, 11253600 bytes estimated cost Hint: Create index (MyTable) on column "MyDate" for possible better performance Hope that helps. Regards Uli |
Tue, Sep 13 2011 12:18 PM | Permanent Link |
Stefano Monterisi | Hi Uli, thanks for help,
but please note that I don't talk about quering operation, but a "locate" on query result...... Thanks! Stefano "Uli Becker" <johnmuller54@googlemail.com> ha scritto nel messaggio news:D3128FD0-7C26-4E75-A3D4-0E2027EF774C@news.elevatesoft.com... > Stefano, > >> A Locate on EDB sensitive query (order by...) can use index in engine so >> it can performe fast index seek, or it scroll the entire query result? > > Sure it does, and if all indexes are set properly you shouldn't have any > problems. > > Please be aware that you should define your index "CaseInsensitive" if you > want to use a CaseInsensitive search. The collation has always to match! > > You can test your query in EDBManager by opening a new query window and > checking "Request Execution Plan" in the Options panel. After executing > your query you can see everything in detail. > If an index is *not* set properly, you'll see a row scan there and get the > right hint. > > Example: > > Filtering > --------- > > The following filter condition was applied to the MyTable table: > > "MyDate" < CURRENT_DATE() > > Row scan (MyTable): 18756 rows, 11253600 bytes estimated cost > > Hint: Create index (MyTable) on column "MyDate" for possible better > performance > > Hope that helps. > > Regards Uli > |
Wed, Sep 14 2011 3:34 AM | Permanent Link |
Roy Lambert NLH Associates Team Elevate | Stefano
Your response to Uli's post was pretty much the same as mine, but then I thought about it and he's right. However, to expand it a bit further my understanding is that there are two possibilities with a query - either sensitive or insensitive. With a sensitive result its essentially treated as a table so you have access to the underlying indices. With an insensitive result the only "index" available is the one used to order the result set. One of Uli's main points (not very well stated) is that the ORDER BY has to match exactly an existing index otherwise the query will be insensitive hence the comment about testing in EDBManager. In addition to that its easy enough to set up a little test bed to see exactly what does happen and what timings you can achieve. Roy Lambert [Team Elevate] |
Wed, Sep 14 2011 10:45 AM | Permanent Link |
Stefano Monterisi | Hi Roy,
all I want to hear is that "With a sensitive result its essentially treated as a table so you have access to the underlying indices"..... Uli's consideration are welcome and rights, ok! Many thanks, for you and for Uli Roy, I have another problem in porting DBISAM to EDB with Devexpress grids (I have to change logic in incremental search, etc..). Now, In query result the vertical scrolling bar don't respect record position but it present the "3 state". How I can obtain the corrett position in the grid on the scrollbar? Thanks in advance! Stefano Monterisi "Roy Lambert" <roy@lybster.me.uk> ha scritto nel messaggio news:C3B47FE7-C604-4BE9-A7DD-649C1E7D83D9@news.elevatesoft.com... > Stefano > > > Your response to Uli's post was pretty much the same as mine, but then I > thought about it and he's right. However, to expand it a bit further my > understanding is that there are two possibilities with a query - either > sensitive or insensitive. With a sensitive result its essentially treated > as a table so you have access to the underlying indices. With an > insensitive result the only "index" available is the one used to order the > result set. > > One of Uli's main points (not very well stated) is that the ORDER BY has > to match exactly an existing index otherwise the query will be insensitive > hence the comment about testing in EDBManager. > > In addition to that its easy enough to set up a little test bed to see > exactly what does happen and what timings you can achieve. > > Roy Lambert [Team Elevate] > > |
Wed, Sep 14 2011 11:20 AM | Permanent Link |
Roy Lambert NLH Associates Team Elevate | Stefano
>Roy, I have another problem in porting DBISAM to EDB with Devexpress grids >(I have to change logic in incremental search, etc..). >Now, In query result the vertical scrolling bar don't respect record >position but it present the "3 state". How I can obtain the corrett position >in the grid on the scrollbar? You can't. Way back with ElevateDB Tim asked if people would prefer performance with the three state bar or having the bar right but slowing things down. We went for speed. Roy Lambert [Team Elevate] |
This web page was last updated on Tuesday, April 30, 2024 at 03:55 PM | Privacy PolicySite Map © 2024 Elevate Software, Inc. All Rights Reserved Questions or comments ? E-mail us at info@elevatesoft.com |