Resulta que me pasa lo siguiente:
(Aclaro, que la base de datos no tiene muchos registros, pero espero que pronto tenga millones..

Tengo una tabla, donde guardo LOS ARTICULOS que tiene un USUARIO.
En total, hay unos 25 articulos disponibles. O sea que un usuario no puede tener mas de 25 articulos. Puede tener 0, 1, 2, etc, hasta 25.
La tabla tiene:
id_articulo
id_usuario
Usuarios, supongamos que tengo 1.000.000 (jaja.. me rio de mi.. tengo 2 nomas.. pero bueno... quiero empezar haciendo las cosas bien desde el comienzo).
La cuestion, es que SIEMPRE se va a buscar QUE ARTICULOS TIENE EL USUARIO: X.
Aunqueeeeeee, muchas muchas veces se va a buscar si X usuario tiene X articulo.
La consulta mas comun es: SELECT 1 FROM articulosdeusuarios WHERE id_usuario=123
Y una que aparecerá muchas veces tambien (pero menos que la anterior) es: SELECT 1 FROM articulosdeusuarios WHERE id_usuario=123 AND id_articulo=5
Como me recomiendan hacer los indices?
Sé que importa mucho si hago 2 indices separados, o uno complejo de id_usuario y id_articulo. y supongo que es diferente poner usuario y articulo, que poner: articulo y usuario.
Así que. estaría bueno resolver esta duda

Yo me formulo en la cabeza esta pregunta:
"Que le gustará mas al motor? que a la hora de realizar la busqueda, tenga que listar primero los articulos y luego buscar entre ellos el usuario X? o acomodar todo por X usuario y luego ver si tiene el articulo?"
Yo pienso que:
Si creo 2 indices, va a ocupar mucho espacio (o mucho mas de lo que podría ocupar con otro)
Si creo el indice: id_articulo+id_usuario o al revez, habrá el mismo tiempo de procesamiento para buscarlo, y ocuparán menos que el que dije aca arriba. Pero no estoy seguro