ну просто, вы путаете кучу всего.
1. если ваш клиент/субд нативно работают с Json - надо брать json.
2. если они не работают с ним и можно выбрать любой формат, надо вбирать эффективный.
Эффективный это обычно тот, с которым меньше всего возни при прочих равных. JSON дёшево и сердито. И его, если что, раз сериализация на лиск или в БД будет, можно и глазками посмотреть эффективно, в отличие от всякого бинарного