Este conteúdo foi traduzido por máquina para sua conveniência e a Huawei Cloud não pode garantir que o conteúdo foi traduzido com precisão. Para exibir o conteúdo original, use o link no canto superior direito para mudar para a página em inglês.
Computação
Elastic Cloud Server
Bare Metal Server
Auto Scaling
Image Management Service
Dedicated Host
FunctionGraph
Cloud Phone Host
Huawei Cloud EulerOS
Redes
Virtual Private Cloud
Elastic IP
Elastic Load Balance
NAT Gateway
Direct Connect
Virtual Private Network
VPC Endpoint
Cloud Connect
Enterprise Router
Enterprise Switch
Global Accelerator
Gerenciamento e governança
Cloud Eye
Identity and Access Management
Cloud Trace Service
Resource Formation Service
Tag Management Service
Log Tank Service
Config
Resource Access Manager
Simple Message Notification
Application Performance Management
Application Operations Management
Organizations
Optimization Advisor
Cloud Operations Center
Resource Governance Center
Migração
Server Migration Service
Object Storage Migration Service
Cloud Data Migration
Migration Center
Cloud Ecosystem
KooGallery
Partner Center
User Support
My Account
Billing Center
Cost Center
Resource Center
Enterprise Management
Service Tickets
HUAWEI CLOUD (International) FAQs
ICP Filing
Support Plans
My Credentials
Customer Operation Capabilities
Partner Support Plans
Professional Services
Análises
MapReduce Service
Data Lake Insight
CloudTable Service
Cloud Search Service
Data Lake Visualization
Data Ingestion Service
GaussDB(DWS)
DataArts Studio
IoT
IoT Device Access
Outros
Product Pricing Details
System Permissions
Console Quick Start
Common FAQs
Instructions for Associating with a HUAWEI CLOUD Partner
Message Center
Segurança e conformidade
Security Technologies and Applications
Web Application Firewall
Host Security Service
Cloud Firewall
SecMaster
Anti-DDoS Service
Data Encryption Workshop
Database Security Service
Cloud Bastion Host
Data Security Center
Cloud Certificate Manager
Blockchain
Blockchain Service
Serviços de mídia
Media Processing Center
Video On Demand
Live
SparkRTC
Armazenamento
Object Storage Service
Elastic Volume Service
Cloud Backup and Recovery
Cloud Server Backup Service
Storage Disaster Recovery Service
Scalable File Service
Volume Backup Service
Data Express Service
Dedicated Distributed Storage Service
Containers
Cloud Container Engine
SoftWare Repository for Container
Application Service Mesh
Ubiquitous Cloud Native Service
Cloud Container Instance
Bancos de dados
Relational Database Service
Document Database Service
Data Admin Service
Data Replication Service
GeminiDB
GaussDB
Distributed Database Middleware
Database and Application Migration UGO
TaurusDB
Middleware
Distributed Cache Service
API Gateway
Distributed Message Service for Kafka
Distributed Message Service for RabbitMQ
Distributed Message Service for RocketMQ
Cloud Service Engine
EventGrid
Dedicated Cloud
Dedicated Computing Cluster
Aplicações de negócios
ROMA Connect
Message & SMS
Domain Name Service
Edge Data Center Management
Meeting
AI
Face Recognition Service
Graph Engine Service
Content Moderation
Image Recognition
Data Lake Factory
Optical Character Recognition
ModelArts
ImageSearch
Conversational Bot Service
Speech Interaction Service
Huawei HiLens
Developer Tools
SDK Developer Guide
API Request Signing Guide
Terraform
Koo Command Line Interface
Distribuição de conteúdo e computação de borda
Content Delivery Network
Intelligent EdgeFabric
CloudPond
Soluções
SAP Cloud
High Performance Computing
Serviços para desenvolvedore
ServiceStage
CodeArts
CodeArts PerfTest
CodeArts Req
CodeArts Pipeline
CodeArts Build
CodeArts Deploy
CodeArts Artifact
CodeArts TestPlan
CodeArts Check
Cloud Application Engine
MacroVerse aPaaS
KooPhone
KooDrive

Inventário de bucket

Atualizado em 2022-11-24 GMT+08:00

Cenário de aplicação

Um inventário de bucket pode listar objetos em um bucket, salvar as informações do objeto relacionado em arquivos CSV, e entregar os arquivos CSV ao bucket especificado para armazenar arquivos de inventário de bucket. Desta forma, você pode facilmente gerenciar objetos em um bucket. Um bucket de origem também pode ser o bucket de destino.

  • Um arquivo de inventário de bucket pode conter as seguintes informações relacionadas a objetos: versões, tamanhos, classes de armazenamento tags, status de encriptação, e hora da última modificação.
  • Você pode encriptar os arquivos de inventário do bucket no modo SSE-KMS.
  • Você pode definir a frequência (diariamente ou semanalmente) para gerar arquivos de inventário de bucket.
  • Você também pode especificar um bucket para armazenar os arquivos de inventário de bucket gerados.

Restrições

  • Os estoques de períodos só podem ser gerados para períodos de OBS 3.0, mas podem ser armazenados em OBS 3.0 ou em OBS 2.0.
  • Um bucket pode ter no máximo 10 regras de inventário.
  • O bucket de origem (para o qual uma regra de inventário de bucket é configurada) e o bucket de destino (onde os arquivos de inventário gerados são armazenados) devem pertencer à mesma conta.
  • O bucket de origem e o bucket de destino devem estar na mesma região.
  • Os arquivos de inventário devem estar no formato CSV.
  • OBS pode gerar arquivos de inventário para todos os objetos em um bucket ou um grupo de objetos cujos nomes começam com o mesmo prefixo.
  • Se um bucket tiver várias regras de inventário, essas regras não devem se sobrepor.
    • Se um bucket já tiver uma regra de inventário para todo o bucket, novas regras de inventário que filtram objetos por prefixos não poderão ser criadas. Se você precisar de uma regra de inventário que cubra apenas um subconjunto de objetos no bucket, primeiro exclua a regra de inventário configurada para o bucket inteiro.
    • Se já existir uma regra de inventário que filtra objetos por um prefixo especificado, não será possível criar uma regra de inventário para o bucket inteiro. Para criar uma regra de inventário para o bucket inteiro, certifique-se de que o bucket não tenha outras regras de inventário que filtrem objetos por prefixos especificados.
    • Se um bucket já tiver uma regra de inventário que filtra objetos pelo prefixo de nome de objeto ab, o filtro de uma nova regra de inventário não poderá começar com a ou abc. Ou, você pode excluir a regra de inventário existente e criar uma nova que filtre objetos de acordo com suas necessidades.
  • Os arquivos de inventário de bucket podem ser encriptados somente no modo SSE-KMS.
  • A função de inventário de bucket é oferecida gratuitamente, mas os arquivos de inventário são cobrados pelo espaço de armazenamento usado.
  • A encriptação padrão não pode ser ativada para o bucket de destino configurado para armazenar arquivos de inventário.
  • Os arquivos de inventário são entregues ao bucket de destino por um usuário do sistema de OBS. Portanto, você precisa autorizar o usuário do sistema a permissão para gravar o bucket de destino.

Como um inventário de bucket é configurado?

Antes da configuração, você precisa entender brevemente o que é um bucket de origem ou um bucket de destino.
  • Bucket de origem: Um bucket de origem é o bucket para o qual um inventário é configurado. O inventário lista os objetos armazenados no bucket de origem.
  • Bucket de destino: Um bucket de destino é onde os arquivos de inventário gerados são armazenados. Um bucket de origem também pode ser o bucket de destino. Você pode especificar um prefixo de nome para um inventário. Em seguida, os arquivos de inventário gerados serão nomeados com o prefixo e salvos no diretório com o prefixo. Se você não especificar nenhum prefixo de nome para o inventário, os arquivos de inventário gerados serão armazenados no diretório raiz do bucket.
    • Restrições no bucket de destino
      • O bucket de destino e o bucket de origem devem pertencer ao mesmo locatário.
      • O bucket de destino e o bucket de origem devem estar na mesma região.
      • A política do bucket de destino deve conceder aos usuários do sistema de OBS a permissão para gravar objetos no bucket. Para obter detalhes sobre como autorizar essa permissão, consulte 1.
    • O bucket de destino contém os seguintes arquivos:
      • Uma lista de arquivos de inventário
      • O arquivo Manifest, que contém a lista de todos os arquivos de inventário sob uma determinada configuração de inventário. Para obter detalhes sobre o arquivo Manifest, consulte Arquivo de manifesto.

Configuring a Bucket Inventory

Use console de OBS ou chame a API para configurar um inventário de bucket. Se você configurar um inventário de bucket no console de OBS, uma política de bucket com a configuração de permissão necessária será gerada automaticamente para o bucket de destino. Se você chamar a API para configurar o inventário do bucket, precisará configurar manualmente a política do bucket para o bucket de destino.

  1. Adicione uma política de bucket para o bucket de destino.

    Uma política de bucket deve ser configurada para o bucket de destino para conceder aos usuários do sistema de OBS a permissão para gravar objetos no bucket de destino. O formato da política de bucket é o seguinte. Substitua destbucket pelo nome real do bucket de destino.

    {
    	"Statement": [
    		{
    			"Effect": "Allow",
    			"Sid": "1",
    			"Principal": {"Service": "obs"},
                            "Resource": ["destbucket/*"],
    			"Action": ["PutObject"]
    		}
    	]
    }
  1. Configure um inventário de buckets.

    Fornecemos várias ferramentas para configurar um inventário de buckets. Para mais detalhes, consulte Como usar essa função.

Conteúdo em um arquivo de inventário

O conteúdo em um arquivo de inventário pode ser configurado ao criar o inventário. Para obter detalhes sobre todos os campos possíveis, consulte Tabela 1.

Tabela 1 Metadados do objeto listados em um arquivo de inventário

Metadados

Descrição

Bucket

Nome do bucket de origem

Key

O nome de um objeto. Cada objeto em um bucket possui uma chave exclusiva. (Nomes de objetos no arquivo de inventário são codificados por URL usando o conjunto de caracteres UTF-8 e podem ser usados somente após serem decodificados.)

VersionId

ID de versão de um objeto. Se o valor de IncludedObjectVersions na configuração de inventário for Current, esse campo não será incluído no arquivo de inventário.

IsLatest

Se a versão do objeto for a mais recente, este parâmetro é True. (Se o valor de IncludedObjectVersions na configuração de inventário for Current, esse campo não será incluído no arquivo de inventário.)

IsDeleteMarker

Quando o controle de versão estiver ativado para o bucket de origem, se um objeto for excluído, um novo metadado de objeto será gerado para o objeto e o IsDeleteMarker dos metadados será definido como true. (Se o valor de IncludedObjectVersions na configuração de inventário for Current, esse campo não será incluído no arquivo de inventário.)

Size

Tamanho do objeto, em bytes.

LastModifiedDate

Data de criação do objeto ou data da última modificação

ETag

Resumo hexadecimal do objeto MD5. ETag é o identificador exclusivo do conteúdo do objeto. Ele pode ser usado para identificar se o conteúdo do objeto é alterado. Por exemplo, se o valor de ETag for A quando um objeto for carregado e o valor de ETag for alterado para B quando o objeto for baixado, isso indicará que o conteúdo do objeto foi alterado.

StorageClass

Classe de armazenamento de um objeto

IsMultipartUploaded

Indica se um objeto é carregado no modo multipart.

ReplicationStatus

Status de replicação entre regiões de um objeto

EncryptionStatus

Status da encriptação de um objeto

Nome do arquivo de inventário

O nome de um arquivo de inventário está no seguinte formato:

destinationPrefix /sourceBucketName / inventoryId/ yyyy-MM-dd'T'HH-mm'Z' /files/UUID_index .csv
  • destinationPrefix: O prefixo do nome do arquivo de inventário configurado ao criar a regra de inventário. Arquivos de inventário gerados sob a regra são nomeados após o prefixo, o que pode facilitar a classificação de arquivos de inventário. Se nenhum prefixo for especificado, o prefixo padrão será BucketInventory.
  • sourceBucketName: Nome do bucket de origem para o qual um inventário está configurado. Esse campo pode ser usado para diferenciar arquivos de inventário de buckets de origem diferentes, se esses arquivos de inventário forem salvos no mesmo bucket de destino.
  • inventoryId: Se um bucket de origem tiver várias regras de inventário cujos arquivos de inventário sejam salvos no mesmo bucket de destino, esse campo poderá ser usado para identificar regras de inventário diferentes.
  • yyyy-MM-dd'T'HH-mm'Z': Hora e data de início para a verificação do bucket de destino quando um arquivo de inventário é gerado. Os objetos carregados no bucket de origem após esse período podem não ser listados no arquivo de inventário.
  • UUID_index.csv: um dos arquivos de inventário

Arquivo de manifesto

Se houver um grande número de objetos em um bucket, vários arquivos de inventário podem ser gerados para uma única configuração de inventário. Leva algum tempo para gerar esses arquivos. Por exemplo, se houver objetos 200.000 em um bucket, levará cerca de 1,5 minutos para gerar todos os arquivos de inventário. Uma ou duas horas após todos os arquivos de inventário serem gerados, um arquivo manifest.json será gerado. O arquivo manifest.json contém informações sobre todos os arquivos de inventário gerados desta vez, incluindo:

  • sourceBucket: nome do bucket de origem
  • destinationBucket: nome do bucket de destino
  • version: versão do inventário
  • fileFormat: formato dos arquivos de inventário
  • fileSchema: campos de metadados do objeto contidos nos arquivos de inventário
  • files:: lista de todos os arquivos de inventário
  • key: nome do arquivo de inventário
  • size: tamanho de um arquivo de inventário, em bytes
  • inventoriedRecord: número de registros contidos em um arquivo de inventário
O seguinte é um exemplo de um arquivo manifest.json simples.
{
        "sourceBucket":"user001",
        "destinationBucket":"bucket001",
        "version":"2019-01-03",
        "fileFormat":"CSV",
        "fileSchema":"Bucket,Key,Size,LastModifiedDate,ETag,StorageClass,IsMultipartUploaded,ReplicationStatus,EncryptionStatus",
        "files":[
                {
                        "key":"inventory/user001/test_id/2019-01-03T12-28Z/files/0000016813AF58E66806C1E2D7F15155_1.csv",
                        "size":6705647390,
                        "inventoriedRecord":70585762,
                }
        ]
}

O nome de um arquivo de manifest é o seguinte (para obter detalhes sobre cada campo, consulte Nome do arquivo de inventário):

destinationPrefix /sourceBucketName /inventoryId /yyyy-MM-dd'T'HH-mm'Z' /manifest.json

Como um usuário é notificado quando os arquivos de inventário são gerados?

Você pode habilitar SMN (o serviço de notificação de mensagens) para o bucket de destino. Ao fazer isso, você pode receber mensagens SMS ou e-mails sempre que os arquivos de inventário e o arquivo de manifest são gerados. Para obter mais informações sobre SMN, consulte Notificação de evento.

A seguir, um exemplo simples de configuração de SMN. destinationPrefix/sourceBucketName indica o prefixo do arquivo de manifest. destinationPrefix é o prefixo de nome configurado para arquivos de inventário, e sourceBucketName é o bucket de origem para o qual o arquivo de inventário está configurado. O manifest.json é o sufixo do arquivo manifest.

<NotificationConfiguration>
  <TopicConfiguration>
    <Id>01</Id>
    <Filter>
      <Object>
        <FilterRule>
          <Name>prefix</Name>
          <Value>destination-prefix/source-bucket</Value>
        </FilterRule>
        <FilterRule>
          <Name>suffix</Name>
          <Value>manifest.json</Value>
        </FilterRule>
      </Object>
    </Filter>
    <Topic>urn:smn:southchina:11aa22bb:notification</Topic>
    <Event>ObjectCreated:Put</Event>
  </TopicConfiguration>
</NotificationConfiguration>

Como usar essa função

Você pode configurar inventários de buckets usando console de OBS, as API, ou os SDK.

Ferramenta

Referência

Console de OBS

Configurar inventário de um bucket

Os SDK

OBS suporta kits de desenvolvimento de software (os SDK) em vários idiomas. Para obter detalhes, consulte o guia do desenvolvedor correspondente na página Visão geral de SDK.

As API

Configuração de inventários de bucket

Usamos cookies para aprimorar nosso site e sua experiência. Ao continuar a navegar em nosso site, você aceita nossa política de cookies. Saiba mais

Feedback

Feedback

Feedback

0/500

Conteúdo selecionado

Envie o conteúdo selecionado com o feedback