Yes, it will create high load for the basic WordPress installation. To be able to have a functioning site you will have to employ caching. If the site is static in nature then using caching plugins like super-cache or w3tc can be enough, but if you can't use any of them because the site is very dynamic you will have to cache the menu in your code and do something like
In your theme's functions.php file add
add_action('save_post','regenrate_menu_cache'); // regenerate the cache when a new page might have been added
add_action('delete_post','regenrate_menu_cache'); // regenerate the cache when a page might have been deleted
function regenrate_menu_cache() {
$menu = wp_nav_menu(array("echo" => false,"menu" => "my_menu")); // get the HTML that is generated for the menu
update_option('my_menu_cache',$menu); // and store it in the DB as an option
}
in your theme's header.php file replace the menu generation code with
echo get_option('my_menu_cache');
The drawback with this code is that each time a post/page/attachment etc is saved you recalculate the menu which might make saving slower, so you might want the recalculation to be limited to only when a page on menu is changed.
Side note: With so many pages in hierarchy the pages admin might become slow.