A noble goal but IMO make sure none of this is required, ie fields can be kept null or translation loading is done from a translation table back to a source table, so if the translation table is empty no additional time is spent on lookup.
We have enough trouble keeping a DB updated, this multiplies the work exponentially. Not sure how realistic it is.
Certainly, though, anything already loaded on startup can do an additional lookup for translation purposes without that much of an impact.
Perhaps objectxtranslation might be better?
SpellxTranslation (spellid, whatever text fields needed)
ItemXTranslation (idnb, ...)
MobXTranslation (name, ...)
This way the original table has no maintenance cost. In addition, if I add another mob names 'greater boogey' it immediately benefits from the name translation.