Зависит от того, что вы ставите во главу угла.
Если производительность, то все равно в итоге придете к частичной денормализации.
Ваш пример с translateAuthor - если запросов к статьям очень много, то есть смысл сохранить имя автора прямо в таблице статьи, чтобы не лезть отдельным запросом за ним.
А если немного - то и хрен с ним. Чувствуете? Все от задачи зависит.
И еще есть PostgreSQL и hstore ;)