Home Page
Articoli
Tips & Tricks
News
Forum
Archivio Forum
Blogs
Sondaggi
Rss
Video
Utenti
Chi Siamo
Contattaci
Username:
Password:
Login
Registrati ora!
Recupera Password
Home Page
Stanze Forum
SQL Server 2000/2005/2008, Express, Access, MySQL, Oracle
Info su provider mysql
giovedì 06 maggio 2004 - 11.04
Elenco Threads
Stanze Forum
Aggiungi ai Preferiti
Cerca nel forum
trinity
Profilo
| Guru
3.465
messaggi | Data Invio:
gio 6 mag 2004 - 11:04
Ragazzi sapete quale è il migliore è + potete provider di connessione diretta ai database mysql con vb net e ado.net? Non mi interessa che sia free o a pagamento. Basta che funzioni e che sia il migliore.
ciao e grazie
Brainkiller
Profilo
| Guru
7.999
messaggi | Data Invio:
gio 6 mag 2004 - 11:32
Trinity, non ce n'è uno migliore... ognuno tira l'acqua al suo mulino quindi se uno produce un Data Provider sicuramente è il suo il più veloce, potente ,ecc. però chiaramente ce ne sono anche altri.
E' come chiedere qual è la CPU più veloce ? Se chiedi a Intel sono le sue, se chiedi ad AMD sono le sue e così via. Come si fa allora per stabilirlo ?
Ti compri tutti i Data Provider che ci sono in circolazione e fai dei test/benchmark per stabilire il migliore. Del resto bisogna fare così come con le CPU.
Ho sentito però recentemente parlare di un molto buono data provider che trovi qui:
http://www.crlab.com/
cerdo a pagamento.
ciao
david
trinity
Profilo
| Guru
3.465
messaggi | Data Invio:
ven 7 mag 2004 - 10:37
Ti volevo chiedere una cosa, ma sostanzialmente che differenza c'è tra un provider mysql net come quello della corelab e l'odbc net ? mi potresti spiegare perchè ho dei dubbi.
ciao
Brainkiller
Profilo
| Guru
7.999
messaggi | Data Invio:
lun 10 mag 2004 - 00:09
L'ODBC è un'interfaccia API standard aperta per accedere a un database. L'applicazione che utilizza l'ODBC manda determinati comandi SQL al driver ODBC e questo li trasforma in comandi SQL da mandare al database sottostante. Quindi è un livello di astrazione aggiuntivo. Però passando da questo layer aggiuntivo hai un po' di perdita di performance. Infatti è stato sostituito con l'OLEDB che è una tecnologia Microsoft, sono in praticamente componenti COM che si collegano direttamente al database, sono molto più performanti.
Poi ci sono i .NET data provider, per esempio quello di MySQL che usa direttamente la libreria libmySQL.dll per accedere anch'essa direttamente al DB dando più prestazioni.
ciao
david
lake
Profilo
| Newbie
2
messaggi | Data Invio:
ven 14 mag 2004 - 01:28
Salve,
e' da molto che sono alla ricerca di un buon provider per connettermi con mysql.
System.Data.Odbc (free):
Abbastanza veloce nella connessione, abbastanza veloce a leggere pochi record. Lento con molti risultati da leggere.
ByteFX.Data.MySqlClient (free):
Ora siamo alla versione 0,76, ed è stato acquistato da mysql.
Le precenti versioni erano molto instabili, con molti fastidiosi bug (es cpu 100%) che lo rendevano inutilizzabile in un ambiente con molti utenti.
L'attuale versione ha un bug che rende inutilizzabile il pooling (lascia aperte le connessioni, rendendo di fatto la connessione molto lenta), abbastanza stabile.
Lento nel connettersi (se non si usa pooling), veloce con molti record.
MySQLDriverCS (free):
L'ho usato molto prima di passare a corelab.
Stabile ma anche lento nelle connessioni, veloce con molti record.
CoreLab.MySql (90):
E' il più veloce, vale sicuramente il prezzo della licenza.
Devo ancora testarlo in un ambiente di produzione, ma presto lo farò.
La connessione è molto veloce (quasi il doppio rispetto a odbc), velocissimo a leggere pochi e tanti record (da 3 a 4 volte rispetto agli altri driver nativi)
Ecco i risultati di alcuni test con una query del tipo: SELECT str FROM table WHERE ID > 20000 LIMIT 0,XXX;
100 Query consecutive singolo record
- [0.15 s] System.Data.Odbc
- [1.17 s] ByteFX.Data.MySqlClient
- [0.82 s] MySQLDriverCS
- [0.09 s] CoreLab.MySql
100 Query consecutive 10 record
- [0.32 s] System.Data.Odbc
- [1.62 s] ByteFX.Data.MySqlClient
- [0.48 s] ByteFX.Data.MySqlClient (Pooling=true)
- [0.93 s] MySQLDriverCS
- [0.18 s] CoreLab.MySql
100 Query consecutive 100 record
- [2.22 s] System.Data.Odbc
- [3.23 s] ByteFX.Data.MySqlClient
- [2.76 s] ByteFX.Data.MySqlClient (Pooling=true)
- [1.78 s] MySQLDriverCS
- [0.87 s] CoreLab.MySql
Comunque fate anche voi dei test poichè soprattutto per quanto riguarda bytefx ho ottenuto risultati molto contrastanti da macchina a macchina (in questi test lento, in altri molto più veloce di mysqldrivercs), sicuramente è un buon driver ma almeno per ora da non utilizzare in server affollati.
Spero che questo possa esservi stato di aiuto.
Saluti
Brainkiller
Profilo
| Guru
7.999
messaggi | Data Invio:
sab 15 mag 2004 - 01:08
Ciao lake,
benvenuto e complimenti peri benchmarks che hai fatto e la volontà con cui li hai fatti. Effettivamente non è cosa semplice provare 4 data providers diversi.
Se sei interessato e vuoi aggiungere qualche riga di commento e/o qualche grafico o altri dati relativi a operazioni di INSERT/DELETE/UPDATE con i differenti Data Providers, si può pubblicare il tuo contributo sottoforma di Tip o Articolo, separatamente o ad integrazione dell'articolo in Home Page.
ciao
david
lake
Profilo
| Newbie
2
messaggi | Data Invio:
sab 15 mag 2004 - 10:51
Con piacere.
Purtroppo sono stato costretto a fare questi testi quando ho notato che la cpu era quasi tutta impegnata a connettersi a mysql!!!
Non ho ancora fatto test con update comunque se vuoi ti posso mandare anche il codice per ripetere i test in locale, non è molto complicato....
trinity
Profilo
| Guru
3.465
messaggi | Data Invio:
mar 18 mag 2004 - 19:40
mandami i test e te li provo io con update in locale
ciao
Fabio
Torna su
Stanze Forum
Elenco Threads
Partecipa anche tu! Registrati!
Hai bisogno di aiuto ?
Perchè non ti registri subito?
Dopo esserti registrato potrai chiedere
aiuto sul nostro
Forum
oppure aiutare gli altri
Consulta le
Stanze
disponibili.
Registrati ora !