About Databases...

Peter A. Schott paschott at no.yahoo.spamm.com
Tue Mar 15 15:52:16 EST 2005


Have to agree with others here - get a good database backend.

MSSQL/Oracle - good choices commercially.
	Both of these offer good feature sets and have a lot of support from users.
However, they are commercial apps and not necessarily free.  (You can play with
MS SQL Server in the Developer edition for $50 if you're interested - full
feature set with minor throttling to keep from being used in production.)

MySQL - fast, but not completely relational.  This may or may not matter to you.
For what it does, it is very fast.

PostGreSQL - good feature set, open source.  Not sure on speed, but it should
run natively on Unix, Linux, and Win32 (not sure about BSD or others).

There are quite a few others - these just come to mind off the top of my head.

I'd tend to stay away from a file-based system because people tend to want some
form of report off of data like this pretty quickly.  Files may be fast, but
they're not easy to get data from.


As others have suggested, take a little time or pull in a consultant if
necessary to learn SQL and build a good database to store this.  You may not
even need heavy normalization at first, though I'd keep in mind that repetitive
data may be best stored in lookup tables.

Putting this into a database will also give you access to some of the advanced
set-based operations that database engines tend to be very good with.



As for your questions:  Numerics tend to be base types in most DB platforms.
They tend to take up less space than character values and can be operated on
mathematically without much trouble.  I'd tend towards numeric as opposed to
float if you need accuracy.

With the right code in the backend modules/classes, you should be able to link
anything you need to objects in the database.

Best of luck,
-Pete Schott

andrea_gavana at tin.it wrote:

> Hello NG,
> 
>    I am still quite a newbie with Python (I intensely use wxPython, anyway).
> I would like to know what are, in your opinions, the best/faster databases
> that I could use in Python (and, of course, I should be able to "link" everything
> with a wxPython GUI)? Specifically, I work on Reservoir Simulation, and
> usually I have to store a discrete/huge amount of data (it depends on the
> oil field). As you may have understood, I know almost NOTHING about databases
> ;-)
> In general, my data will be numeric (floats, integers). Will a binary storage
> (if it is possible) reduce the size of the DB? And what about speed in storing/retrieving
> data?
> 
> Thank you a lot for every suggestion.
> 
> Andrea.
> 




More information about the Python-list mailing list