Widzę dwie główne tabele:
- family - zawierająca podstawowe informacje o poszczególnych rodzinach (nazwisko, miasto itd.)
- people - zawierająca informacje o poszczególnych osobach (imię, nazwisko, data urodzenia itd.)
W tabeli people proponuję wprowadzić strukturę drzewek IP, dzięki czemu będziesz mieć dostęp do wszystkich przodków oraz rodzica bez większego problemu. No i jeszcze prawdopodobnie warto by zapisywać w osobnej tabeli do jakich rodzin należy dana osoba (relacja wiele do wielu).
Struktura drzewa będzie podstawą w takiej bazie.