Why does ZFS (and possibly some other file systems out there) tend to use an "uberblock" on top of imaps? Why can't there just be multiple imaps instead of the uberblock?
The ZFS Uberblock is the root of a giant dynamic tree whose leaves contain data.
Most other file systems use instead a superblock (and copies of it) and a static collection of fixed size inode maps.
There are no inode maps with ZFS, inode equivalents (dnodes) are dynamically created and destroyed.