Ze swojego doświadczenia powiem, że najczęściej pracuję z bazą MySQL w połączeniu z node, ale to nie ma teraz znaczenia. Dane trzymam w odpowiednio zaprojektowanych tabelach, ale bardzo intensywnie korzystam też z widoków, co ułatwia mi pobieranie danych w back-endzie aplikacji i pozwala nawet na pewne modyfikacje w samej strukturze bazy bez wpływu na back-end.
Bazy noSQL są fajne, ale jeśli nie zależy Ci na mocnych powiązaniach między tabelami czyli relacjach. Na przykład powiem Ci, że nie wyobrażam sobie pisać choćby systemu CRM bez dobrodziejstwa relacyjności. Co więcej np. baza MySQL pozwala na wykonanie dodatkowych zabezpieczeń chociażby przed przypadkową próbą usunięcia rekordów, które są powiązane z innymi.
Bazy noSQL są jednak bardzo fajne tak jak piszesz, w przypadku prostych kolekcji. Ale pod pojęciem prostych mam na myśli brak relacyjności, a nie prostą strukturę danych (bo ta akurat może być złożona).
Wszystko zatem jak widać do różnych zastosowań. Na przykład nie chciałbym pisać aplikacji księgowej/fakturującej bez bazy relacyjnej ale to moje subiektywne zdanie.
Nie wypowiem się też co do wydajności na dużej ilości danych. MySQL jest bardzo fajną bazą, ale trzeba dobrze zaprojektować jej strukturę, indekacje itp. aby faktycznie działała szybko przy dużym obciążeniu. Nie mniej jednak w większości prostych projektów np. dla małych firm myślę, że kwestia różnic w wydajności nie będzie najistotniejszym argumentem.