I've found gwenview to be awesome.

It may not have all the tagging stuff that you want (yet - I think
they are working on it) - but it's the best one I've seen for dealing
with large numbers of photos.

You can also easily integrate tools like krename into gwenview - which
is great for me, since I prefer to rename my photos, rather than tag
them.

It also lets you easily edit the metadata of the photos, which can
also be used for tagging.