Delta update

A delta update is an update that only requires the user to download the code that has changed, not the whole program. It can significantly save time and bandwidth. The name is drawn from the fact that the Greek letter delta, Δ or δ, is used to denote change in mathematical sciences.

Example

Any app that is ready for updating can be updated faster and more efficiently due to this new system. If, for example, a game that is 300 megabytes is updated with a new racetrack that adds an additional two megabytes to the application's size, only two megabytes will be downloaded instead of 302 megabytes.

Uses

Linux

Fedora Linux has supported binary delta updates by default using the yum presto plugin since June 2009.[1] This functionality has been inherited by Fedora-derived operating systems, including RedHat Enterprise Linux and its variant, CentOS. Debian Linux supports delta binary updates through the debdelta[2] project, although this functionality is not enabled by default.

Notably, Ubuntu Linux tried to implement Debian's debdelta in 2011,[3] but efforts were dropped in May of that year.

Windows

Windows Update has supported delta updates since Windows XP which are called express installation files. On redistributing updates, Windows Server Update Services has supported delta updates since Windows Server 2003.[4]

FreeBSD

FreeBSD has supported delta updates using portsnap[5] since November 2005.[6] Given FreeBSD's traditional stance of focusing on source code updates, no method of delta binary updates currently exists.

Google

Google refers to delta updates as "smart updates." This has been implemented in Google's Android operating system devices that run on Android 2.3 or above. Google engineers have estimated that smart updates would be only about the third of the size of a full update on average.

Google's open source project Chromium requires frequent updates to narrow the window of vulnerability.[7] It uses a more aggressive diffing algorithm called "courgette" [8] to reduce diff size of two binary executable files, which reduces the diff patch from 6.7% to 0.76% for one version update.[9] The technology helped Chrome to push its updates to 100% users in less than 10 days.

App APK updates in Android's Play Store use bsdiff, a new efficient delta update algorithm introduced in 2016. [10]

Apple iOS

Apple's iOS is also capable of delta updates for operating system and application updates making users reducing bandwidth usage and reliance on the iTunes desktop software to download and apply updates. [11]

Over-the-air software updates

Over-the-air (OTA) software updates have been used widely across many mobile devices; Apple iOS, Google Android, Microsoft Windows Phone 8, and BlackBerry 10.

References

  1. "Fedora Features/Presto".
  2. "debdelta at the Debian Project".
  3. "UbuntuDebdeltaSupport".
  4. "Determine Bandwidth Options to Use for Your Deployment".
  5. "Secure FreeBSD ports tree updating".
  6. "FreeBSD 6.0-RELEASE Announcement".
  7. "Smaller is faster (and safer too),".
  8. "Software Updates: Courgette".
  9. "Software Updates: Courgette".
  10. Google Play’s new delta algorithm reduces size of Android app updates
  11. "Technical Q&A QA1779: Reducing Download Size for iOS App Updates". developer.apple.com. Retrieved 2015-07-07.


This article is issued from Wikipedia. The text is licensed under Creative Commons - Attribution - Sharealike. Additional terms may apply for the media files.