Valori serializzati o tabella separata, che è più efficiente?

2

Ho un modello di Rails email_condition_string con una colonna word in esso. Ora ho un altro modello chiamato request_creation_email_config con le seguenti colonne

  1. admin_filter_group: riferimenti
  2. vendor_service: riferimenti
  3. email_condition_string: riferimenti

email_condition_string ha molti request_creation_email_config e request_creation_email_config appartiene a email_condition_string .

Al posto di questo modello, un mio collega suggerisce che memorizzare la parola all'interno dello stesso modello dei valori separati da virgole sia più efficiente della memorizzazione come modello separato. Va bene?

    
posta Aravind 02.06.2014 - 14:59
fonte

1 risposta

1

Dipende davvero da come pensi di usarlo più tardi.

Sei comunque una migrazione (e alcune modifiche al codice di c) dal cambiare questa soluzione da una all'altra. Quindi sceglierei qualsiasi cosa, e poi lo confronterò in un modo in cui i tuoi utenti usano davvero il sistema.

Ancora meglio: crea un profilo dell'app e cerca prima i colli di bottiglia, invece di ottimizzandolo prematuramente .

Se usi PostgreSQL o Oracle un'altra opzione è quella di usare il tipo di array invece della stringa serializzata. Potrebbe essere più efficiente con l'indicizzazione di questo tipo. Oppure potresti voler usare la soluzione di ricerca full-text più tardi.

Per riassumere - dipende da come si utilizzano questi dati e quanto è grande il set di dati.

    
risposta data 08.11.2015 - 03:57
fonte

Leggi altre domande sui tag