I carry a knife so I am bias.
The crucial element is how quickly you can get to it ( mace, knife, rabid terrier, etc) and how well you can use it.
There are many improvised weapons that may be "better" than mace or a knife.
If you are gonna carry it in your hand, even a good pen or pencil can be effective ( in the right hands), same goes for keys for example.
If you are gonna kept it on your pocket, make sure you can get it out in a crisis.
Psalms 144:1
Praise be my Lord my Rock,
He trains my hands for war, my fingers for battle !