Google adiciona compactação Brotli para fornecer atualizações OTA Android mais rápidas

click fraud protection

O Google está adicionando suporte para o algoritmo de compactação Brotli para fornecer atualizações OTA do Android mais rápidas. O Google já usa Brotli para downloads de aplicativos da Play Store

O tamanho de uma atualização OTA não é algo que a maioria das pessoas realmente pense, já que as atualizações geralmente baixar automaticamente em segundo plano por WiFi, mas na verdade é um grande problema no servidor fim. Salvar até mesmo alguns megabytes de dados pode fazer uma enorme diferença, uma vez que os ganhos são multiplicados por potencialmente centenas de milhares de usuários. Para esse fim, o Google tem sido trabalhando para trazer isso é Brotli algoritmo de compressão para Android para atualizações OTA mais rápidas.

O que é o algoritmo de compressão Brotli?

Brotli é um algoritmo de compressão desenvolvido por um poucos funcionários do Google isso melhora significativamente a taxa de compressão em relação a outros algoritmos, como o GZIP, ao mesmo tempo que demonstra uma velocidade de descompressão impressionante. A desvantagem é que a compactação de arquivos com o algoritmo Brotli é bastante lenta, por isso geralmente é evitada ao compactar conteúdo dinâmico.

Referências de compressão. Fonte: Jeroen Ooms

Por outro lado, qualquer conteúdo estático, como paginas web são adequados para serem compactados por meio do algoritmo Brotli. Isso inclui arquivos de aplicativos baixados da Google Play Store. Como há bem mais 2 bilhões de dispositivos Android por aí, eliminar até mesmo pequenas quantidades de dados ao fornecer um arquivo de patch da Play Store pode resultar em ganhos massivos para o Google. O algoritmo de Brotli, quando usado para Downloads de aplicativos da Play Store, salva usuários 1,5 petabytes (1,5 milhão de gigabytes) de dados por dia.

Algoritmo de compactação Brotli versus GZIP para downloads da Play Store. Créditos: Blog do estudante do Google

Como o Brotli melhorará as atualizações OTA?

Agora, as atualizações OTA não são fornecidas aos usuários com tanta frequência quanto uma atualização de aplicativo da Play Store, mas tendem a ser muito maiores em comparação. Por exemplo, um pacote OTA completo antes da compactação pode ter 2 GB de tamanho. Quantos dados podem ser salvos de um pacote OTA?

Um desenvolvedor LineageOS para o Motorola Moto G4 relata que eles conseguiram economize 50 megabytes em uma construção não oficial. Considerando o fato de que a construção média do LineageOS do Moto G4 é de cerca de 350 megabytes, isso é uma melhoria bastante dramática. Se até 10 MB de dados forem salvos em cada OTA, a redução geral na largura de banda pode ser significativa, já que o Google precisa fornecer o pacote de atualização para centenas de milhares de usuários.

Além disso, como o Brotli também traz velocidades de descompressão aprimoradas, isso também significa que as atualizações OTA podem ser aplicadas mais rapidamente. As atualizações OTA são enviadas para cada dispositivo como um arquivo, portanto, antes que os patches possam ser feitos via bsdiff, o arquivo precisa ser descompactado. Como a descompactação do Brotli é bastante rápida, isso significa que a descompactação do arquivo também será rápida, resultando em uma correção mais rápida dos arquivos do sistema.

No entanto, os usuários de dispositivos com esquemas de partição A/B, como Google Pixel/Pixel 2, Essential Phone, Razer Phone, Força Moto Z2, e Xiaomi Mi A1 provavelmente não notará essa melhoria específica, pois as atualizações são aplicadas perfeitamente na partição inativa em segundo plano. Ainda assim, mesmo para esses dispositivos, o pacote menor de atualização OTA devido à compactação Brotli resultará em largura de banda reduzida para o usuário.


Agradecimentos ao moderador aposentado do fórum XDA/desenvolvedor reconhecido cibojenix pela dica!