Ho alcune domande sulle chiavi primarie composite e la cardinalità delle colonne. Ho cercato sul web, ma non ho trovato nessuna risposta definitiva, quindi ci sto provando di nuovo. Le domande sono:Composito primario e cardinalità
Contesto: tabelle di preparazione OLAP di grandi dimensioni (50M - 500M), non NOSQL, non Columnar. MySQL e DB2
1) L'ordine delle chiavi in un PK è importante?
2) Se la cardinalità delle colonne varia notevolmente, è necessario utilizzarla per prima. Ad esempio, se ho CLIENT/CAMPAIGN/PROGRAM in cui CLIENT è altamente cardinale, CAMPAIGN è moderato, PROGRAM è quasi come un indice bitmap, quale ordine è il migliore?
3) Quale ordine è la migliore per Join, se v'è una clausola Where e quando non v'è la clausola Dove (per le viste)
Grazie in anticipo.
Grazie, quindi se mi unisco solo sul Cliente e Campagna, dovrei unirmi alla campagna (basso cardinalità) prima poi CLIENT (maggiore cardinalità) –
@srini: non c'è un "prima" e " ultimo "in un join, ti unisci sempre su entrambe le colonne allo stesso tempo. Queste colonne dovrebbero essere in testa all'indice '(client, campagna, programma)' affinchè l'unione sia efficiente. – Quassnoi
Spiacente, intendevo l'ordine per la clausola WHERE .. –