To add to the responses, we use SQLite for our main database which is
currently around 60GB in size, so size isn’t an issue for SQLite. I am
aware of other people with far, far larger SQLite databases. We did a
quick test and ran up to a couple of hundred DB’s of data in SQLIte
and it seemed fine.
We chose SQLite over other databases as
1. We didn’t need concurrency. All our data is written and read by a
single process.
2. Its very lightweight. We can move the database around by simply
copying the file which is fantastic for our use.
3. The speed is very, very fast. We haven’t found any significant
speed differences FOR OUR USE CASE between Sqlite and other ‘bigger’
databases. YMMV.
4. The support is top notch. I have brought and paid for govt scale
databases for governments and to be honest the support for SQLite is
just as good, and to be honest I would say better than Big Red or Big
Blue (and I used to work for Big Blue).
Thats not to say that SQLite is perfect, its not, however no database is
perfect as everyones usage is different. I certainly wouldn’t state
that SQLite is the answer to everyones problems and I can state with
absolute certainty that DB2 is also not the answer for every use.
We are moving into a different phase of our development and we are
investigating PostGIS for some of our work now, as that *MAY* be a
better tool for some of our more exotic spatial queries and analysis. No
reflection on SQLite but its a case of finding the right tool for the
right job. After saying that we *may* end up using SQLite for this area
as well.
Rob
Post by R SmithPost by a***@shuling.netHi,
I am just curious whether there is a performance comparison between SQLite
and SQL Server? Surely SQL Server will perform better on huge
database with
thousands of tables(more than 10GB size). But whether SQLite will perform
better on smaller database such as one database with one table that is less
than 1GB?
Thanks
Some other replies have hinted at this already, but to expand: The one
isn't faster than the other in all cases. There are ways in which
SQLite is much faster even on a 100GB database - the "Lite" in SQLite
doesn't mean database size - it pertains more to the available
function-set. It can handle the very large DB's just as well as any
other.
Where SQLite lacks (due to the "Lite"-ness) is in not having
user-access control, not having programmability (stored procedures and
functions, but then you can add custom functions to SQLite in C even,
which you can't easily do with the others, especially not with MSSQL).
The largest difference however, is that an SQLite connection operates
on (talks-to) a file, and the others usually talk to a server.
The main advantage of SQLite is that it can be used for an application
file format to your program, complete as if it was a database in
itself (which, actually, it is), and moreover, you can embed the
entire DB in your application and on your hardware etc - like the
billions of handheld devices, phones, tablets, etc. that uses SQLite
daily.
http://www.sqlite.org/whentouse.html
To answer your speed question - it depends on data shape, size, IO
access speeds, Memory on the generation machine etc. Import big
datasets in both MSSQL and SQlite, run some queries, chances are some
queries be slightly faster in SQLite, and some are slightly faster in
MSSQL. Single query performance is not really the driver of that
decision.
Cheers,
Ryan
_______________________________________________
sqlite-users mailing list
http://mailinglists.sqlite.org/cgi-bin/mailman/listinfo/sqlite-users