Visualizzazione dei risultati da 1 a 10 su 13

Hybrid View

  1. #1
    Mi riferivo all'utente che ha posto la domanda.

    Nel tuo esempio? Avrei inserito un ID al posto del nome e tabellizzato il nome
    1) evita ridondanza
    2) risparmio di memoria

    non credo sia un errore.


    Tra l'altro le forme non sono molte di più...o se sì quali?!??! Ne conosco 5 la 4 e la 5 non necessarie per questo ne ho indicate 3 (le classiche che come dici si studiano).

    Quindi secondo me non normalizzare non va bene ma con moderazione, forse questo volevi dire?.

    Come fai a dire di non normalizzare?

    ciao
    Ultima modifica di VanessaInfo; 06-06-2015 a 14:37

  2. #2
    Utente di HTML.it L'avatar di MySQL
    Registrato dal
    May 2015
    Messaggi
    729
    Quote Originariamente inviata da VanessaInfo Visualizza il messaggio
    Mi riferivo all'utente che ha posto la domanda.

    Nel tuo esempio? Avrei inserito un ID al posto del nome e tabellizzato il nome
    1) evita ridondanza
    2) risparmio di memoria

    non credo sia un errore.


    Tra l'altro le forme non sono molte di più...o se sì quali?!??! Ne conosco 5 la 4 e la 5 non necessarie per questo ne ho indicate 3 (le classiche che come dici si studiano).

    Quindi secondo me non normalizzare non va bene ma con moderazione, forse questo volevi dire?.

    Come fai a dire di non normalizzare?

    ciao
    1) avresti sbagliato, perchè la normalizzazione del cliente avrebbe fatto sì che nel momento in cui, ad esempio, cambia indirizzo, tutti i vecchi documenti avrebbero preso il NUOVO indirizzo.
    Questo è il classico esempio di come NON comprendere la semantica del problema porta, applicando pedissequamente le regolette, a fare un disastro
    2) per la normalizzazione francamente non ho molta voglia di fare il piccolo corso di basi di dati, vedo che stai già cominciando a scoprire che non sono 3
    3) non ho mai asserito "non normalizzare"
    Ho scritto, ed è cosa ben diversa, che non è NECESSARIO normalizzare (la domanda del post).
    Aggiungo poi è NECESSARIO normalizzare BENE, cosa che non è affatto sinonimo (l'ho appena dimostrato con l'esempio classico precedente)
    4) il "risparmio di memoria", ad esempio, non esiste proprio, poichè i database moderni utilizzano PAGINE di dimensione fissa (es. 4K, 16K, molto più raramente 64K), quindi paradossalmente finquando resti dentro una singola pagina non hai alcun beneficio nel senso di risparmio o meno di memoria. Così tanto per mostrare come un approccio scolastico sia lontano da uno concreto
    5) sempre sotto questo profilo saprai benissimo che una macchina moderna, anzi un telefonino, può gestire database talmente immensi da essere fantascienza fino a pochissimi anni fa. E che un hard disk da 6terabyte ormai si trova per duecento euro nel negozietto sotto casa, sufficiente per memorizzare i dati di una multinazionale.

    Quindi riassumendo è (altra metafora che ho letto, molto carina a mio avviso) come il freno a mano.
    A scuola guida insegnano che serve come freno di stazionamento. Nelle corse di rally serve... per curvare.

  3. #3
    Quote Originariamente inviata da MySQL Visualizza il messaggio
    1) avresti sbagliato, perchè la normalizzazione del cliente avrebbe fatto sì che nel momento in cui, ad esempio, cambia indirizzo, tutti i vecchi documenti avrebbero preso il NUOVO indirizzo
    ..

    Quindi riassumendo è (altra metafora che ho letto, molto carina a mio avviso) come il freno a mano.
    A scuola guida insegnano che serve come freno di stazionamento. Nelle corse di rally serve... per curvare.

    Chi l'ha detto che i vecchi prendono il nuovo indirizzo?
    Quel problema si risolve lato programmazione non lato db.

    Quello che dice optime è vero come anche io avevo riportato, ad esempio se uno volesse essere proprio "scolastico" arriverebbe a smembrare i dati e dover fare il join di N tabelle per avere un dato, questo sì è esagerato...come dicevo con moderazione...e dopo attenta valutazione...

    Tra l'altro non sai con chi parli e secondo te sto studiando ora... ("vedo che stai già cominciando a scoprire che non sono 3").

    Io invece siccome non ti conosco e, nonostante la mia (poca) esperienza, penso che altri possano saperne più di me e quando non la pensano come me o (come nel tuo caso) mi dicono cose contrarie cerco di capire...non faccio il presuntuoso.

  4. #4
    Utente di HTML.it L'avatar di MySQL
    Registrato dal
    May 2015
    Messaggi
    729
    Quote Originariamente inviata da VanessaInfo Visualizza il messaggio
    Chi l'ha detto che i vecchi prendono il nuovo indirizzo?
    Lo dico io
    Quel problema si risolve lato programmazione non lato db.
    Non direi
    Io invece siccome non ti conosco e, nonostante la mia (poca) esperienza, penso che altri possano saperne più di me e quando non la pensano come me o (come nel tuo caso) mi dicono cose contrarie cerco di capire...non faccio il presuntuoso.
    Siccome neppure tu mi conosci, linkarmi qualche guida per principianti ed asserire "forse non ti è chiaro..." quando direi che la situazione è opposta non è esattamente un modo gradevole di porsi.

    Certo sono consapevole che molto spesso s'insegna in modo dogmatico, come se in una certa situazione si debba sempre e comunque fare una certa cosa, senza preoccuparsi del perchè, o percome, o se ci sono altre strade, migliori o peggiore.

    La normalizzazione è un esempio classico in cui si applica un metodo nato per risolvere un problema (memorizzazione dei dati su schede di carta perforate con buchini o nuclei in ferrite o quello che si usava) in un panorama informatico totalmente diverso rispetto a quello di oggi, e soprattutto sotto ipotesi rigorose che quasi mai vengono trattate (l'aspetto semantico).

    Talvolta si trovano professori coi (...controxxi...) invece spiegano e precisano pregi e difetti, quando e come e perchè (io evidentemente son stato fortunato sotto questo profilo, mica ho avuto la scienza infusa).

    L'esempino di sopra non è farina del mio sacco (anzi è una domanda con cui mi hanno aperto il deretano all'orale), ma è grandemente esplicativo di un esempio semplice e comprensibile dove la dipendenza funzionale SEMBRA essere eliminabile (algebricamente), ma non lo è (semanticamente).

    Poi c'è tutto l'argomento delle prestazioni, che l'utente optime ha introdotto, e che senza dubbio ha un suo peso, anzi si potrebbe aggiungere anche il problema odierno di un database distribuito (ma non credo sia relativo alla domanda dell'utente, e quindi non vi ho accennato).

    Torno quindi alla risposta iniziale: puoi fare benissimo un database denormalizzato che funziona perfettamente, anche meglio di uno normalizzato.
    E viceversa, se vogliamo completare.
    Ultima modifica di MySQL; 07-06-2015 a 12:55

  5. #5
    Quote Originariamente inviata da MySQL Visualizza il messaggio
    Lo dico io
    Non direi

    Siccome neppure tu mi conosci, linkarmi qualche guida per principianti ed asserire "forse non ti è chiaro..." quando direi che la situazione è opposta non è esattamente un modo gradevole di porsi.

    Ripeto (detto anche sopra) che era rivolto all'utente che ha posto la domanda.

    Non ti ho quotato il che significa che non rispondevo a te.

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