Hello Rogrigo,
 I'll take a shot at a response to this, bearing in mind there are quite a
few salient details you haven't
yet provided in this post.

 --As a principle, I'd recommend keeping  your solutions architecture as
simple as possible,
and use either PostgreSQL or SQLite, but not both, barring really good
reasons to the contrary.

--Integrating MPI (MPICH2 etc) with any relational database begs for very
careful partitioning of the
problem and the workflows used to address the problem; yes, storing
computational results in a
either SQLite or PostgreSQL makes perfect sense, but I'd look for clear
process-boundaries and
checkpoint/milestone events (say, after a salvo of concurrent tasks have
been synchronized) to perform your
updates to any database, and assure that any application I/O buffers are
completely flushed when
integrating any relational database within any parallel or concurrent
application.  PostgreSQL is
similar to many other sophisticated RDBMS in that it maintains its own
internal, multi-level caches.

--Bear in mind, I'm a huge fan of SQLite for many applications, but its a
question of balancing its
relative strengths and weaknesses over PostgreSQL, and of course, assessing
which environment you
know better as well (or which you could learn the necessary subtlies, if you
don't really know either).
If PostgreSQL serves some roles that you find SQLite cannot easily serve,
I'd just go with an all PostgreSQL
solution. I suspect you'll have plenty of other technical and scientific
areas of your work to ascertain the
correctness of (and possibly debug), than to have to also take on the added
complexity of understanding
the interaction effects of two different SQL engines, if a problem emerges.

--I would say it is "possible" to "employ SQLite" in an MPI application, but
again, I think it depends a
lot on how you are structuring your particular problem. If the runtime
platform is "dual-core", I presume
you're at least planning to deploy on  (2) cores concurrently, but there are
different mechanisms in
MPI addressing for addressing multi-core architectures (on the same CPU and
memory bus) than those
addressing parallelism via interconnects between many separate CPU/memory
buses (or blades, racks etc).
Absent more information on your execution architecture, I'm guessing you're
looking at some sort
of multi-threaded (or multi heavy-weight process) design on a master bus.
If so, you'll definitely want
to factor in some very deterministic thread synchronization relative to when
you perform writes to
any database, whether it is SQLite or PostgreSQL. Generally speaking,
concurrent reads on a backing
store (SQL database) are often not as critical to schedule, but still bear
careful consideration if you use
these to trigger the start of a subsequent parallel process gang.

OK, I'll stop there, but just wanted to address the question in overview.
Some of the others on this list
may be able to address this from a more SQLite centric perspective. good
luck.

Joe

On Tue, Jun 2, 2009 at 10:33 AM, Rodrigo Faccioli <
faccioli.postgre...@gmail.com> wrote:

> Hello,
>
> I'm very new user about SQLite. I'm working with Structural Bioinformatics
> and everybody knows that this area requires a lot of computational
> resources. So, I'm developing an Evolutionary Algorithms (EA) for some
> protein analysis (I don't know what will do exactly, because I've just
> started my PhD).
>
> However, I know that I'll work with C++ and mpi. I've worked with
> PostgreSQL
> and Python with SQLAlmy and I've enjoyed. I've known about sqlite in
> SQLAlmy
> website. I'm enjoying the sqlite although I have a question about sqlite
> and
> mpi application.
>
> Is it possible to employ sqlite in mpi application? Example: I have a
> computer which is a dual-core and my program works with mpi. Its goal is to
> calculate and store it on text file. So, I want to change from text file to
> SQLite.
>
> Another question refers to PostgreSQL and SQLite. I've read that SQLite
> doesn't work with client-server applications. So, if my first question was
> correctly, I have the idea using SQLite and PostgreSQL. The goal of
> PostgreSQL is to attend my web-service applications and SQLite goal is to
> store the results of calculation. It's clean that PostgreSQL will store the
> results were created by my program which works with SQLite. Therefore, I
> would know good way to work PostgreSQL and SQLite.
>
> I thanks for any help.
>
> Regards,
>
> Rodrigo Antonio Faccioli
> _______________________________________________
> sqlite-users mailing list
> sqlite-users@sqlite.org
> http://sqlite.org:8080/cgi-bin/mailman/listinfo/sqlite-users
>

-----------------------------------------------------------------------
Joseph Glassy
Lead Software Engineer (contractor)
NASA Measures (Freeze/Thaw),Rm CFC 424
CFC, Univ. Montana, Missoula, MT 59812
and:
Research Analyst/Programmer
University of Montana NSF EPSCoR Program
Missoula, MT 59812
_______________________________________________
sqlite-users mailing list
sqlite-users@sqlite.org
http://sqlite.org:8080/cgi-bin/mailman/listinfo/sqlite-users

Reply via email to