1. A computing system comprising: a client; and a server configured to stream application upgrades to the client; wherein the client is configured to: determine that an upgrade to an application currently installed on the client is available; receive a first map from the server that corresponds to an upgraded version of the application, wherein the upgraded version of the application includes a first data block and a second data block that differ from corresponding first and second data blocks in the application currently installed on the client; determine which data blocks of the upgraded version of the application are needed for execution on the client, wherein said determining includes determining that the first data block is needed and the second data block is not needed; compare the first map to a second map that corresponds to the application currently installed on the client to determine that one or more of the data blocks of the upgraded version of the application that are needed for execution on the client are not present in the application currently installed on the client; and request the one or more data blocks from the server, wherein the one or more data blocks include the first data block, wherein the client is configured to not request the second data block from the server.