[Python] Consiglio su DB da usare in un progetto django.

2014-04-06 Per discussione Gollum1
Presumo che in un progetto django il database sia residente sul server,
anche se si usa SQLite? Visto che per il mio progetto non devo memorizzare
i dati che vado ad elaborare, per i singoli utenti, SQLite andrebbe
benissimo, se fosse locale al computer ancora meglio... La mia intenzione
sarebbe di creare il un DB all'apertura della sessione, solo per facilitare
i calcoli, e poi distruggerlo al termine... Mentre sarebbe opportuno avere
un DB SQLite in sola lettura per altri dati generici usati per i calcoli,
comuni a tutti gli utenti.

Pensavo ai DB, invece di semplici file su testo formattati, perché dovrebbe
essere più semplice l'estrazione del singolo dato dal file, voi che ne
dite? È un modello che ha senso o mi vado a ficcare in qualche casino?

byez
-- 
Gollum1
___
Python mailing list
Python@lists.python.it
http://lists.python.it/mailman/listinfo/python


Re: [Python] Consiglio su DB da usare in un progetto django.

2014-04-06 Per discussione Daniele Varrazzo

On 2014-04-06 20:08, Gollum1 wrote:
Presumo che in un progetto django il database sia residente sul 
server,
anche se si usa SQLite? Visto che per il mio progetto non devo 
memorizzare

i dati che vado ad elaborare, per i singoli utenti, SQLite andrebbe
benissimo, se fosse locale al computer ancora meglio... La mia 
intenzione
sarebbe di creare il un DB all'apertura della sessione, solo per 
facilitare
i calcoli, e poi distruggerlo al termine... Mentre sarebbe opportuno 
avere
un DB SQLite in sola lettura per altri dati generici usati per i 
calcoli,

comuni a tutti gli utenti.

Pensavo ai DB, invece di semplici file su testo formattati, perché 
dovrebbe
essere più semplice l'estrazione del singolo dato dal file, voi che 
ne
dite? È un modello che ha senso o mi vado a ficcare in qualche 
casino?


Tutto è possibile, ma creare e distruggere un database per sessione non 
è la cosa più comune, per non parlare del fatto che django non ti 
consente di connetterti ad un numero arbitrario di database (uno per 
sessione) ma solo ad un numero prefissato in configurazione.


Secondo me o usi file temporanei o usi un database come si deve: per le 
mezze misure non hai infrastruttura di supporto.


-- Daniele
___
Python mailing list
Python@lists.python.it
http://lists.python.it/mailman/listinfo/python


Re: [Python] Consiglio su DB da usare in un progetto django.

2014-04-06 Per discussione Marco Giusti
On Sun, Apr 06, 2014 at 09:08:27PM +0200, Gollum1 wrote:
 Presumo che in un progetto django il database sia residente sul server,
 anche se si usa SQLite?

Quale server? Il termine è un po' generico e non permette di darti una
risposta.

Sqlite è una libreria, questo vuol dire che per interrogare il database
non hai bisogno di instaurare una comunicazione col dbms ma effettui
delle chiamate a funzione. Questo vuol dire che, escluso casi
particolari, il database si trova nella stessa macchina dove gira il
tuo programma. Quando hai detto server l'ho subito associato alla
macchina dove gira il tuo programma (django?)

 Visto che per il mio progetto non devo memorizzare
 i dati che vado ad elaborare, per i singoli utenti, SQLite andrebbe
 benissimo, se fosse locale al computer ancora meglio... La mia intenzione
 sarebbe di creare il un DB all'apertura della sessione, solo per facilitare
 i calcoli, e poi distruggerlo al termine... Mentre sarebbe opportuno avere
 un DB SQLite in sola lettura per altri dati generici usati per i calcoli,
 comuni a tutti gli utenti.
 
 Pensavo ai DB, invece di semplici file su testo formattati, perché dovrebbe
 essere più semplice l'estrazione del singolo dato dal file, voi che ne
 dite? È un modello che ha senso o mi vado a ficcare in qualche casino?

La cosa ha perfettamente senso e anzi, Sqlite ti permette di creare
facilmente un database che risiede completamente in memoria,
velocizzando le operazioni. Quando ti connetti al database, usa
:memory: come parametro:

sqlite3.connect(:memory:)

Io nella tua situazione non avrei dubbi.

Ciao
M.
___
Python mailing list
Python@lists.python.it
http://lists.python.it/mailman/listinfo/python


Re: [Python] Consiglio su DB da usare in un progetto django.

2014-04-06 Per discussione Gollum1
Il 06/apr/2014 21:54 Daniele Varrazzo p...@develer.com ha scritto:

 On 2014-04-06 20:08, Gollum1 wrote:

 Presumo che in un progetto django il database sia residente sul server,
 anche se si usa SQLite? Visto che per il mio progetto non devo
memorizzare
 i dati che vado ad elaborare, per i singoli utenti, SQLite andrebbe
 benissimo, se fosse locale al computer ancora meglio... La mia intenzione
 sarebbe di creare il un DB all'apertura della sessione, solo per
facilitare
 i calcoli, e poi distruggerlo al termine... Mentre sarebbe opportuno
avere
 un DB SQLite in sola lettura per altri dati generici usati per i calcoli,
 comuni a tutti gli utenti.

 Pensavo ai DB, invece di semplici file su testo formattati, perché
dovrebbe
 essere più semplice l'estrazione del singolo dato dal file, voi che ne
 dite? È un modello che ha senso o mi vado a ficcare in qualche casino?


 Tutto è possibile, ma creare e distruggere un database per sessione non è
la cosa più comune, per non parlare del fatto che django non ti consente di
connetterti ad un numero arbitrario di database (uno per sessione) ma solo
ad un numero prefissato in configurazione.

 Secondo me o usi file temporanei o usi un database come si deve: per le
mezze misure non hai infrastruttura di supporto.

Ok... Allora è da escludere SQLite, per via della concorrenza... Un unico
DB in cui metto i dati ad uso generico e delle tabelle ad hoc in cui
registro i dati di sessione che poi cancello alla fine della sessione
stessa...

Magari devo prevedere un garbage collector per la pulizia di eventuali
sessioni chiuse impropriamente.

byez
-- 
Gollum1
___
Python mailing list
Python@lists.python.it
http://lists.python.it/mailman/listinfo/python


Re: [Python] Consiglio su DB da usare in un progetto django.

2014-04-06 Per discussione Enrico Bianchi

On 04/06/2014 10:09 PM, Gollum1 wrote:


Ok... Allora è da escludere SQLite, per via della concorrenza... Un
unico DB in cui metto i dati ad uso generico e delle tabelle ad hoc in
cui registro i dati di sessione che poi cancello alla fine della
sessione stessa...

Se escludi SQLite, dai un'occhiata a Firebird. Sicuramente e` molto di 
piu` di quello che ti serve, ma ha il vantaggio di occupare meno risorse 
rispetto a PostgreSQL o a MySQL



Magari devo prevedere un garbage collector per la pulizia di eventuali
sessioni chiuse impropriamente

Firebird supporta le global temporary tables, che sembrerebbero ottime 
per il tuo caso:


http://www.firebirdsql.org/refdocs/langrefupd25-ddl-table.html

Enrico
___
Python mailing list
Python@lists.python.it
http://lists.python.it/mailman/listinfo/python