Asesoría con índice SQL

Hola, antes que nada quisiera agradecer de antemano la atención prestada a esta pregunta. 
Básicamente, quisiera que me asesoraran para poder decidir qué me es más conveniente hacer.
Tengo una tabla de pagos con algunos cientos de miles de registros, que crece a raíz de uno o 2 millones de registros por año. Resulta que por unos cambios en el proceso, nos vemos en la necesitad de modificar la estructura de base de datos,  pues se requiere expedir facturas electrónicas.
Los folios con los que se expedirán dichas facturas se componen de una serie (un caracter) y un número consecutivo muy grande (empezando en el 5 millones), obteniendo al final un folio como "A5000001" . Por cuestiones propias del área donde trabajo, es necesario realizar búsquedas en base a ese folio
La pregunta es, cómo me conviene más realizar la estructura de tabla y posteriormente realizar un índice para agilizar la búsqueda de información?
Tengo 2 ideas... La primera es crear un campo para la serie de tipo CHAR(1) y otro para el número consecutivo de tipo BIGINT, para posteriormente crear un índice compuesto sin duplicados. La segunda es crear un solo campo VARCHAR(8), para posteriormente crear un índice sin duplicados.
No omito mencionar que sé que una consulta con un WHERE campo1=12345 es mucho mas rápida que una con un WHERE campo1='12345', pero básicamente me queda duda del rendimiento que tendría crear un índice combinado en una tabla con gran cantidad de datos, pues eso afectaría además de las búsquedas... Las inserciones y actualizaciones. 
NOTA. He manejado consultas sobre campos VARCHAR(9) con tablas de hasta 2 millones de registros y la respuesta es bastante buena, pero quisiera conocer más al respecto.
Si no es mucha molestia, podrían explicarme los pro y contra de cada caso?

Añade tu respuesta

Haz clic para o