1. A method for updating a first navigation database that stores blocks comprising at least one record that specifies a source object of the first navigation database, comprising: obtaining a second navigation database comprising blocks that correspond to the blocks of the first navigation database, where each block comprises at least one record that specifies a source object, and where the second navigation database differs from the first navigation database in at least one of the source objects of the second navigation database; compiling source objects of the first navigation database to generate derived objects of the first navigation database; compiling a subset of the source objects of the second navigation database to generate derived objects of the second database, the subset comprising source objects of the second navigation database that differ from the corresponding source objects specified in the first navigation database; comparing the blocks of the first navigation database with the corresponding blocks of the second navigation database to determine blocks of the second navigation database that differ from the corresponding blocks of the first navigation database; and generating an update package for the first navigation database comprising the blocks of the second navigation database that differ from the corresponding blocks of the first navigation database.