Usar 1 y 0 es una forma muy sensata y portátil de representar valores booleanos. Cualquier diferencia de tamaño entre e int y un tipo booleano nativo realmente hará poca o ninguna diferencia en el rendimiento de su aplicación o en el tamaño de KB de su base de datos.