Este tópico descreve como usar o Intelligent Media Management (IMM) para compactar um ou mais objetos armazenados no Object Storage Service (OSS), consultar o conteúdo de arquivos em um pacote e descompactar um pacote. A compactação e a descompactação são úteis em diversos cenários, como transmissão de dados, backup e arquivamento. Use a compactação e a descompactação para gerenciar e processar dados em um bucket de forma eficiente. Por exemplo, use esse recurso para melhorar a velocidade de transmissão de dados, reduzir o uso de armazenamento e facilitar o arquivamento e o compartilhamento de dados.
Visão geral do recurso
O IMM suporta a compactação e a descompactação de arquivos na nuvem, o que melhora a eficiência e simplifica o gerenciamento de arquivos. Use o IMM para compactar e descompactar objetos online no OSS.
Pré-requisitos
Crie um par de AccessKey. Para mais informações, consulte Create an AccessKey pair.
Ative o OSS, crie um bucket e faça upload de arquivos para ele. Para mais informações, consulte Upload files.
Ative o IMM. Para mais informações, consulte Activate IMM.
-
Crie um projeto no console do IMM. Para mais informações, consulte Create a project.
NotaTambém é possível chamar a operação CreateProject para criar um projeto. Para mais informações, consulte Create a project.
Chame a operação ListProjects para listar todos os projetos em uma região especificada.
Formatos suportados
O recurso de compactação suporta apenas operações de empacotamento.
O recurso de compactação suporta apenas o formato ZIP.
Os recursos de descompactação e visualização de pacotes suportam os formatos ZIP, RAR e 7z.
Observações
O sistema retém as informações das tarefas de compactação, leitura de pacotes e descompactação por 7 dias após a data de início. Após esse período, não é possível consultá-las. Use um dos seguintes métodos para consultar as informações da tarefa:
Chame a operação GetTask ou ListTasks para visualizar as informações da tarefa.
Ative o Message Service (MNS) na mesma região do Intelligent Media Management (IMM) e configure uma assinatura para receber notificações imediatas de tarefas. Para mais informações sobre o formato de notificação assíncrona, consulte Asynchronous notification message format. Para mais informações sobre o SDK do MNS, consulte Step 4: Receive and delete messages.
Ative o ApsaraMQ for RocketMQ na mesma região do IMM e crie uma instância do RocketMQ 4.0, um tópico e um grupo de consumidores para receber notificações imediatas de tarefas. Para mais informações sobre o formato de notificação assíncrona, consulte Asynchronous notification message format. Para mais informações sobre como usar o ApsaraMQ for RocketMQ, consulte Use HTTP SDKs to send and receive normal messages.
Ative e integre o EventBridge na mesma região do IMM para receber notificações imediatas de tarefas. Para mais informações, consulte Intelligent Media Management (IMM) events.
Compactação
Chame a operação CreateFileCompressionTask - Create a file compression task para compactar vários objetos em um bucket do OSS.
Informações de compactação
Projeto do IMM: test-project
-
Objetos a serem compactados:
oss://test-bucket/test-object1.jpg
oss://test-bucket/test-object2.jpg
oss://test-bucket/test-object3.jpg
oss://test-bucket/test-object4.jpg
Caminho de saída: oss://test-bucket/test-target-object.zip
Exemplo de solicitação
{
"ProjectName": "test-project",
"CompressedFormat": "zip",
"Sources": "[{\"URI\":\"oss://test-bucket/test-object1.jpg\"},{\"URI\":\"oss://test-bucket/test-object2.jpg\"},{\"URI\":\"oss://test-bucket/test-object3.jpg\"},{\"URI\":\"oss://test-bucket/test-object4.jpg\"}]",
"TargetURI": "oss://test-bucket/test-target-object.zip"
}
Exemplo de resposta
{
"TaskId": "FileCompression-7e3e2b8c-81bd-495f-a338-25b3762a****",
"RequestId": "C54C5888-9C96-5A35-AF73-ABD6EF15****",
"EventId": "164-1S6uXTYhUU4qAFCPOTcYdcb****"
}
Código de exemplo
Consultar o conteúdo do pacote
Chame a operação CreateArchiveFileInspectionTask - Create a package parsing task para consultar o conteúdo de um pacote no OSS.
Informações do pacote
Nome do projeto: test-project
Caminho do pacote: oss://test-bucket/test-target-object.zip
Caminho de saída: oss://test-bucket/test-target-object.json
Exemplo de solicitação
{
"ProjectName": "test-project",
"SourceURI": "oss://test-bucket/test-target-object.zip",
"TargetURI": "oss://test-bucket/test-target-object.json"
}
Exemplo de resposta
{
"TaskId": "ArchiveFileInspection-4a7c308a-5671-4d34-ba41-86a942d0****",
"RequestId": "20D23855-C9E6-5193-8939-3A8797E1****",
"EventId": "2AB-1S53L6FTdU6yMxkc1JgpwcV****"
}
Código de exemplo
Descompactação
Chame a operação CreateFileUncompressionTask - Create a decompression task para descompactar um pacote no OSS.
Informações de descompactação
Nome do projeto: test-project
Caminho do pacote: oss://test-bucket/test-target-object.zip
Objeto a ser descompactado: test-object1.jpg
Caminho de saída: oss://test-bucket/test-target-object
Exemplo de solicitação
{
"ProjectName": "test-project",
"SourceURI": "oss://test-bucket/test-target-object.zip",
"Target": "{\"URI\":\"oss://test-bucket/test-target-object\"}",
"SelectedFiles": "[\"test-object1.jpg\"]"
}
Exemplo de resposta
{
"TaskId": "FileUncompression-f31061ab-eaeb-469d-ac8f-9af10e5d****",
"RequestId": "20115435-9F59-58C0-8D15-E6ECC096****",
"EventId": "3B6-1S6ywKAB2ogXJnrzmk6tFUF****"
}
Código de exemplo
Faturamento
A descompactação de pacotes de arquivos gera os seguintes itens de faturamento no OSS e no IMM:
-
No OSS: Para mais informações sobre preços, consulte Preços do OSS.
API
Item de faturamento
Descrição
GetObject
Solicitações GET
Você paga taxas de solicitação com base no número de solicitações bem-sucedidas.
Tráfego de saída pela Internet
Se você chamar a operação GetObject usando um endpoint público, como oss-cn-hangzhou.aliyuncs.com, ou um endpoint de aceleração, como oss-accelerate.aliyuncs.com, pagará taxas de tráfego de saída pela Internet com base no tamanho dos dados.
Recuperação de objetos IA
Na recuperação de objetos IA, você pagará taxas de recuperação de dados IA com base no tamanho dos objetos IA recuperados.
Capacidade de recuperação de dados do Archive Direct Read
Na recuperação de objetos do Archive em um bucket com acesso em tempo real ativado, você pagará taxas de recuperação de dados do Archive com base no tamanho dos objetos do Archive recuperados.
Aceleração de transferência
Se você ativar a aceleração de transferência e usar um endpoint de aceleração para acessar seu bucket, pagará taxas de aceleração de transferência com base no tamanho dos dados.
-
No IMM: Para mais informações sobre preços, consulte IMM billing items.
ImportanteA partir das 11:00 de 28 de julho de 2025 (UTC+8), os serviços de compactação e descompactação de arquivos do IMM passarão de um modelo gratuito para um modelo pago. Para mais informações, consulte Anúncio de ajuste de faturamento do IMM.
API
Item de faturamento
Descrição
CreateFileCompressionTask
FileProcess
Você paga taxas de compactação com base no tamanho dos arquivos de origem a serem compactados.
CreateFileUncompressionTask
Você paga taxas de descompactação com base no tamanho dos arquivos descompactados.
CreateArchiveFileInspectionTask
FilePreview
Você paga taxas de visualização com base no tamanho do pacote a ser visualizado.
Perguntas frequentes
-
Como saber se a operação CreateFileCompressionTask terminou de criar um pacote?
Chame a operação GetTask - Query task information para consultar o status da tarefa ou use Example of asynchronous task lightweight message queue (formerly MNS) message processing para receber mensagens de sucesso de forma assíncrona.
-
Posso usar a operação CreateFileCompressionTask para compactar objetos de diferentes buckets do OSS em um único pacote?
Sim, você pode compactar objetos de diferentes buckets do OSS em um único pacote se tiver as permissões necessárias.