Pagina 3 di 4 primaprima 1 2 3 4 ultimoultimo
Visualizzazione dei risultati da 21 a 30 su 37
  1. #21
    Utente di HTML.it
    Registrato dal
    Dec 2010
    Messaggi
    268
    Originariamente inviato da franzauker
    capisco cosa intendi... però ti assicuro che per esperienze se le tabelle non sono indicizzate a dovere si rallentano le query. tieni conto che viene fatta una query in join

  2. #22
    e se provo a convertire tutto su sql server?
    Andrò meglio, vero?
    Sì sì. se puoi passare a SQL Server secondo me dovresti essere a posto...

    se costruisci bene le tabelle con gli indici al posto giusto non dovresti avere nessun problema di prestazione (anche con tabelle di centinaia di migliaia di record) né di limite di connessione...
    uso il condizionare perché io di SQL Server non ho quasi esperienza, però almeno è un vero database

  3. #23
    va bene ragazzi, appena converto tutto analizziamo insieme la velocità

    Comunque, sto creando una sorta di yahoo answer, e yahoo answer ha circa 45.000 record per le domande.
    Io non credo che arriverò a quel numero, ma ora sto facendo i test con 50.000 record per stare sicuri
    Response.Write("Tonyhhkx Programmer32");

  4. #24
    Utente di HTML.it
    Registrato dal
    Jan 2011
    Messaggi
    1,469


    non esiste un modo efficiente per paginare le righe ritornate (se per efficiente intendiamo "magico"), o meglio ci vuole un tipo di indice particolare per il kesimo elemento più grande (esiste per motori specializzati, non mi risulta nè per sql server nè per mysql)
    ---
    La presentazione "a pagine" è inerentemente inefficiente; l'esistenza di un indice ti consente di ordinare le righe, ma nulla più.
    O meglio puoi avere risposte "magiche" per il minimo e il massimo, ma non per la paginazione.

    Quindi puoi
    1) eliminare la paginazione
    2) avere un linguaggio sufficientemente potente da mettere in cache un intero db (=> ma ti serve una macchina davvero potente)
    3) studiare un metodo "furbo" per marcare le righe, così da fare interrogazioni a range (non il massimo della vita, ma con gli indici tipicamente btree risparmi un po' di attraversamento di foglie)
    4) fregartene. considera però che le interrogazioni del tipo limit x,y (su mysql) non sono per nulla efficienti

  5. #25
    Originariamente inviato da franzauker


    non esiste un modo efficiente per paginare le righe ritornate (se per efficiente intendiamo "magico"), o meglio ci vuole un tipo di indice particolare per il kesimo elemento più grande (esiste per motori specializzati, non mi risulta nè per sql server nè per mysql)
    ---
    La presentazione "a pagine" è inerentemente inefficiente; l'esistenza di un indice ti consente di ordinare le righe, ma nulla più.
    O meglio puoi avere risposte "magiche" per il minimo e il massimo, ma non per la paginazione.

    Quindi puoi
    1) eliminare la paginazione
    2) avere un linguaggio sufficientemente potente da mettere in cache un intero db (=> ma ti serve una macchina davvero potente)
    3) studiare un metodo "furbo" per marcare le righe, così da fare interrogazioni a range (non il massimo della vita, ma con gli indici tipicamente btree risparmi un po' di attraversamento di foglie)
    4) fregartene. considera però che le interrogazioni del tipo limit x,y (su mysql) non sono per nulla efficienti
    Quello che dice franzkuker è indubbiamente vero...

    però le soluzioni proposte sono un tantino drastiche IMHO
    perché rinunciare alla paginazione? solo perché lato DB è inefficiente?

    Il fatto è che là fuori è pieno di siti che la usano anche con migliaia e migliaia di record dietro...
    Ora un conto è usare Access e avere tempi biblici di attesa, un conto è usare SQL Server ed essere mediamente inefficienti..

    In fondo, se la paginazione è inefficiente lato DB vorrà dire che cercherai di renderla più efficiente lato web server, usando qualche caching framework messo a disposizione dal tuo linguaggio di script (come ad esempio può essere APC in ambito PHP), o studiandoti qualche altro trucchetto...

    in bocca al lupo
    Philbert

  6. #26
    Utente di HTML.it
    Registrato dal
    Jan 2011
    Messaggi
    1,469
    oltre al punto 4) c'è anche il 5), ma non per sql server, bensì per mysql.

    ovvero il setlimit di sphinx

  7. #27
    "Ora un conto è usare Access e avere tempi biblici di attesa, un conto è usare SQL Server ed essere mediamente inefficienti."

    con mediamente inefficenti che intendi?
    Diciamo che per avere una maggiore velocità non dovrei paginare niente ma è un peccato.
    Essendo che sarà la prima volta che lavorerò con sql server chiedo ne vale davvero la pena passare a sql server o mi arrangio con access? (per quello che voglio ottenere)
    Response.Write("Tonyhhkx Programmer32");

  8. #28
    Originariamente inviato da tonyhhkx
    Essendo che sarà la prima volta che lavorerò con sql server chiedo ne vale davvero la pena passare a sql server o mi arrangio con access? (per quello che voglio ottenere)
    Ascolta, tonyhhkx non è che ne vale la pena....è INDISPENSABILE!
    Non puoi gestire la mole di dati di un sito simile a yahoo answers con Access...ma ti rendi conto ?

    è come se dicessi: devo tagliare una quercia; vale davvero la pena passare a una sega da boscaiolo o mi arrangio con la limetta da unghie?
    Ora io non ti dico di usare una sega elettrica circolare tipo Oracle 11g, ma almeno una una sega da boscaiolo come SQL Server è il minimo

  9. #29
    Originariamente inviato da philbert
    Ascolta, tonyhhkx non è che ne vale la pena....è INDISPENSABILE!
    Non puoi gestire la mole di dati di un sito simile a yahoo answers con Access...ma ti rendi conto ?

    è come se dicessi: devo tagliare una quercia; vale davvero la pena passare a una sega da boscaiolo o mi arrangio con la limetta da unghie?
    Ora io non ti dico di usare una sega elettrica circolare tipo Oracle 11g, ma almeno una una sega da boscaiolo come SQL Server è il minimo
    va bene ho capito la differenza userò sql server
    Response.Write("Tonyhhkx Programmer32");

  10. #30
    hem ragazzi sto avendo una serie di problemi con sql server

    per esempio, io al page load controllavo se l'utente era connesso in questo modo:

    Codice PHP:
     if (Page.User.Identity.Name != "")
            {
                
    lgHome.Visible false;
                
    registrazione.Visible false;
                
    lblUtente.Text "Benvenuto " Page.User.Identity.Name.ToString();
                
    lblUtente.Visible true;
                
    rbLogOut.Visible true;
              } 
    se quindi un utente era connesso visualizzava il benvenuto.

    Ora è sempre connesso anche se faccio

    Codice PHP:
    FormsAuthentication.SignOut(); 
    mi spiegate bene come dovrei comportarmi con questo database?
    Response.Write("Tonyhhkx Programmer32");

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 © 2026 vBulletin Solutions, Inc. All rights reserved.