Al 15/12/10 20:35, En/na VDR User ha escrit:
On Wed, Dec 15, 2010 at 9:21 AM, Luca Olivettiluca@ventoso.org wrote:
Instead of speculating I actually tried. I created a test database with the contents of my channels.conf (only containing the number, name, frequency, source, symbol rate and the vpid, I don't think adding all the fields would change the result considerably).
Why would you do a test and intentionally discard necessary data fields? If you're not going to run tests using _all_ the actual data, don't bother.
Because, without indexes, sqlite will do a linear scan, so, e.g., doubling the data per record, will roughly double the time, and the double of "imperceptible" is "too little to notice". But that anyway would be offset by using indexes and optimizing the data types (e.g. in my query I used strings for parameters and source, and those are very inefficient, intentionally so, just to show that sqlite wouldn't be a bottleneck).
Then you create indexes, not discard a big portion of necessary data.
Ok I created an index
create index transp on channels (freq, params, source, sr);
Now the reply to the query is immediate. Since I don't have time to create a proper table, I added a dummy column in order that each row has at least three times the amount of "necessary data". The reply is still immediate.
Bye