В сообщении от Friday 25 July 2008 12:16:39 Roger Binns написал(а):
> Alexey Pechnikov wrote:
> > May be on FS layer?
>
> I specifically said VFS which is SQLite functionality - see
> http://www.sqlite.org/c3ref/vfs.html and
> http://www.sqlite.org/c3ref/io_methods.html

Thanks, last link may be helpful for me.

> > Yes, I'm using SQLite on servers.
>
> Just because you call it a server doesn't make it "server" hardware :-)
> When you pay the big bucks you get memory that can detect and correct
> errors, cpus run in lockstep with failure detection, multiple paths to
> storage devices, raid and similar technologies on the storage subsystem
> etc.  Standard PCs have none of this.

I have server hardware with mirror raid, ECC RAM etc. But hardware and OS is 
not ideal.

> > Database servers such as Oracle or PostgreSQL have transactions log and
> > restore log.
>
> Those logs are effectively duplicates of the data or ways of
> reconstructing the data.  SQLite has a transaction log for the last
> transaction only and only while it is progress.

Can I get full log of sql statements for to sent it other network or store to 
outher device? I may to get a part of this info by using "authorizer" method:

SQLITE_DELETE sqlite_master {} main {}
SQLITE_DROP_TABLE events {} main {}
SQLITE_DELETE events {} main {}
SQLITE_DELETE sqlite_master {} main {}
SQLITE_READ sqlite_master tbl_name main {}
SQLITE_READ sqlite_master type main {}
SQLITE_UPDATE sqlite_master rootpage main {}
SQLITE_READ sqlite_master rootpage main {}
SQLITE_UPDATE sqlite_master rootpage main {}
SQLITE_READ sqlite_master rootpage main {}
SQLITE_INSERT sqlite_master {} main {}
SQLITE_CREATE_TABLE events {} main {}
SQLITE_UPDATE sqlite_master type main {}
SQLITE_UPDATE sqlite_master name main {}
SQLITE_UPDATE sqlite_master tbl_name main {}
...

May be I must reimplement authorizer function? Now this best for security, of 
course.

> > How can I provide restore mechanisms for SQLite database?
>
> You need to sit down and work out how much your data is worth, what you
> want to protect against, how often bad things happen and how much you
> are prepared to pay.  Food for thought:
>
> http://www.acmqueue.org/modules.php?name=Content&pa=showpage&pid=504
> http://lwn.net/Articles/290141/
> http://www.newscientist.com/blog/technology/2008/03/do-we-need-cosmic-ray-a
>lerts-for.html
> http://en.wikipedia.org/wiki/Transmission_Control_Protocol#Error-free_data_
>transfer

Thanks, I'll read the links.

> You can't have 100% reliability as well as free (hardware and software).
>  You can aim for 99 point some number of nines, but the more nines you
> have the more expensive it gets exponentially.

Yes, but I'm prefer thinking about data integrity in good time.

> In the real world, you will find that SQLite is suitably reliable for a
> large number of people and projects, taking
> http://www.sqlite.org/lockingv3.html#how_to_corrupt into account.

I'm successfully using SQLite from 2005 year and now I want to know how to use 
SQLite in mission-critical applications.

> If you are more paranoid than that then write a SQLite VFS module that
> effectively does custom file level 'raid'. Duplicate data as many times
> as you want (don't forget to send it over the network as well for other
> machines to check).  You'll also want to check multiple copies on reads
> in case one is corrupt.

Well, I think it may be good idea.

_______________________________________________
sqlite-users mailing list
sqlite-users@sqlite.org
http://sqlite.org:8080/cgi-bin/mailman/listinfo/sqlite-users

Reply via email to