Visualizzazione dei risultati da 1 a 9 su 9
  1. #1

    Confronto SQLServer e SQLServer versione Express

    Sto sviluppando un grosso applicativo che si appoggia ad un database di SQLServer. Dovrà funzionare in una piccola (5/6 postazioni) rete locale.
    Sto utilizzando la versione Express ma incontro dei rallentamenti non molto accettabili per cui avrei pensato di utilizzare, in questa fase dello sviluppo, la versione full di SQLServer, quella di prova con limite di tempo di 180 giorni. Ciò perchè ritengo che la versione full sia più performante (sbaglio ?).
    La differenza fra le due versioni si limita esclusivamente al fatto che la versione Express non supporta più di 1 GB ?
    Per la precisione la versione che sto scaricando è la "SQL Server 2017 locale".
    La domanda è: possono coesistere sullo stesso computer le 2 versioni ? In questa fase sto utilizzando un computer W10 ben dotato che serve sia da server che da client.
    Ossia installando (cosa che vorrei fare nelle prossime ore, una volta terminato il download di SQLServer a 180 giorni) la versione full sovrascriverò la versione Express ? Potrò tornare indietro disinstallando semplicemente SQL Server full ?
    Grazie per l'attenzione.
    Ultima modifica di giustavalla; 23-09-2018 a 05:16

  2. #2
    a parte la dimensione, full e express sono praticamente uguali per un utilizzo normale: io almeno non ho mai trovato differenze eclatanti. Puoi citare qualche numero ("rallentamenti non molto accettabili" non vuol dire niente )?

  3. #3
    I citati "rallentamenti non molto accettabili" sono stati da me misurati.
    A fronte di un codice originale (DAO e ADO e MSAccess) che visualizzava una delle tante schede in un tempo dell'ordine delle decine di ms mi son trovato, dopo una ottimizzazione delle query (solo ADO e SQL EXPRESS 2012), con tempi 10 volte superiori (circa). Utilizzando pesantemente le stored procedures le cose migliorano un po' ma non di molto: i tempi sono sempre superiori di 3 volte circa, in luogo di 10.
    Pensavo che SQLEXPRESS potesse avere "il freno a mano tirato" ma, se tu mi dici che le prestazioni di SQLServer full sono analoghe, dovrò ripensare pesantemente gran parte del db.
    Tra l'altro ho scoperto che esiste anche una versione di SQL Server "developer" la cui funzione, se esiste una versione "180 giorni", non mi è del tutto chiara.
    Aggiungo che un altro mio applicativo (ADO + SQLExpress), un po' più semplice del precedente (ma non di tanto) ha tempi di visualizzazione di schede "tipo" dell'ordine delle decine di ms, del tutto accettabili.

  4. #4
    Non ho detto che sono analoghe: ovvio che un full va meglio di un express, ma spesso contano più le macchine della versione. A parità di macchina mi sorprenderebbe vedere una query che su express impiega dieci volte tanto rispetto a full. Stessi indici su entrambe le versioni? Stesso disco, stessa RAM, stesso processore?

  5. #5
    Stessa macchina.
    Stessi indici (di cui uno primario), 20 tabelle, file bak di 42 MB, massimo numero di record di una tabella 180.000, 80 form, 5 moduli bas, 2 moduli di classe.
    Codice di partenza in VB6, DAO e ADO, MSAccess
    Codice rielaborato in VB6, ADO, SQL EXPRESS 2012
    Fattore di differenza 10 (circa) o più a sfavore della seconda soluzione.
    Il database di SQL Server è stato ricavato da un archivio MDB tramite l'utility apposita della Microsoft, utility poi buttata via perchè avevo il dubbio che si portasse dietro delle porcherie. Da allora in poi popolo il database SQLServer con del codice mio del genere, approssimativamente :
    cnn.Execute "DELETE FROM " & NomeTabella
    INSERT INTO " & NomeTabella & "(" & TuttiCampi & ") VALUES(" ........
    cnn.Execute
    Sempre per evitare di avere nel database delle "porcherie" ho anche scritto del codice che popolasse il db con istruzioni del tipo
    DROP TABLE NomeTabella
    CREATE TABLE NomeTabella ....
    INSERT INTO " & NomeTabella & "(" & TuttiCampi & ") VALUES(" ........
    Facendo attenzione (credo) che nell'istruzione CREATE TABLE ci fossero solo elementi di cui avevo assolutamente bisogno e non altri. Risultato: un lieve (forse) miglioramento.
    Solo ricorrendo alle stored procedures (e cercando di abolire quasi del tutto i recordset) sono riuscito ad ottenere un fattore di differenza uguale a 3 circa.
    Collegandosi mediante il medesimo programma da un altro computer, in rete locale, alla macchina su cui è installato sqlserver express, si ottengono (sempre approssimativamente) gli stessi tempi.

  6. #6
    aspetta aspetta. mi era sfuggito MSAccess... ma il confronto non era tra SQL Server Full e Express? Da dove sbuca Access con DAO?

  7. #7
    Ho scritto in un post precedente :
    A fronte di un codice originale (DAO e ADO e MSAccess) che visualizzava una delle ...
    Adesso ho ormai abbandonato MSAccess e DAO e lavoro con SQL Server. Il dubbio è: usare SQLServer Express oppure vale la pena di spender qualche soldo per comprare SQLServer full se, come mi dici, le prestazioni sono analoghe ?

  8. #8
    Ti ho detto che mi era sfuggito, ma resta comunque una cosa diversa dal titolo del thread. Comunque, non è un problema .

    Tornando alla questione principale, mi ripeto: a parte la dimensione, full e express sono praticamente uguali per un utilizzo normale: io almeno non ho mai trovato differenze eclatanti. E aggiungo: Non ho detto che sono analoghe: ovvio che un full va meglio di un express, ma spesso contano più le macchine della versione. A parità di macchina mi sorprenderebbe vedere una query che su express impiega dieci volte tanto rispetto a full.

    In più: esistono apposta le versioni di valutazione; se vuoi toglierti lo scrupolo, scaricala e provala.

    In più dell'in più: non so cosa tu stia sviluppando e come lo commercializzerai. Di solito si sviluppa con Express o con Developer, poi sta al cliente (e qui dipende dalle richieste dell'applicativo) usare Express o Full (non Developer).

    vedi qui
    https://www.microsoft.com/it-it/sql-server/sql-server-downloads per scaricare
    e qui https://docs.microsoft.com/it-it/sql...ql-server-2017 per comparare


  9. #9
    Utente di HTML.it
    Registrato dal
    Jan 2001
    Messaggi
    176
    Utilizzi Windows 10 come server? non hai un numero di richieste massime su IIS? dato che il sistema operativo non è una versione Server

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2024 vBulletin Solutions, Inc. All rights reserved.