If you want to build your own custom nav menu you should be extending the Walker_Nav_Menu
class, not the Walker
class.
When building a custom menu walker the $db_fields
should be what the default Walker_Nav_Menu
class has:
$db_fields = array ('parent' => 'menu_item_parent', 'id' => 'db_id');
When building the navigation link for a menu item, the parent
field maps to the _menu_item_menu_item_parent
post meta field if the menu item has a parent.
The db_id
maps to the post ID
of the menu item.
Check out wp_setup_nav_menu_item()
for good reference to better understand what is happening. https://developer.wordpress.org/reference/functions/wp_setup_nav_menu_item/