Sto scrivendo un'applicazione finanziaria basata su query. Permette all'utente di scrivere equazioni complicate (proprio come la parte WHERE di una query SQL) e trovare le aziende che soddisfano tali criteri.
Per quanto sopra, attualmente ho più di 500 colonne nella tabella del database (ogni colonna rappresenta un campo finanziario).
Esempio di colonne sono: company_name, sales_annual_00, sales_annual_01, sales_annual_02, sales_annual_03, sales_annual_04, protit_annual_00, profit_annual1 ... (oltre 500 di tali colonne).
Il numero di righe è di circa 5000.
In futuro, vorrei aumentare ulteriormente il numero di colonne / campi finanziari.
Per quanto sopra vorrei ricevere assistenza per quanto riguarda:
1) Qual è il miglior approccio alla progettazione del database? Va bene avere questo numero di colonne?
2) Come può essere normalizzato? (L'utente può utilizzare uno di questi campi nei criteri di ricerca).
3) È accettabile attenersi a MySQL, oppure i moderni database basati su documenti come MongoDB dovrebbero essere migliori per questo?
P.S. (Aggiornamento): Sto usando MySQL fino ad ora e un esempio di utilizzo è in: link In sopra ci sono circa 500 campi / colonne per creare la tua query, tuttavia, cerco di aumentarlo ulteriormente in futuro.