Este tópico descreve como o ossfs 2.0 detecta arquivos e pastas em um bucket do Object Storage Service (OSS).
Principais diferenças entre o armazenamento de objetos e o armazenamento tradicional
O armazenamento de objetos usa um espaço de endereçamento plano para armazenar dados, ao contrário da estrutura hierárquica de pastas dos sistemas de arquivos tradicionais. As principais diferenças são:
Sem associação hierárquica: os buckets do OSS não têm o conceito de arquivos e pastas. Todos os dados são armazenados como objetos.
-
Diferenças nas convenções de nomenclatura:
Sistema de arquivos tradicional: um arquivo chamado 'a' e uma pasta chamada 'a/' não podem existir na mesma pasta.
Armazenamento de objetos: 'a' e 'a/' são dois objetos independentes. Eles podem coexistir e não têm associação lógica.
Mecanismo de simulação de sistema de arquivos do ossfs 2.0
Ao montar um bucket do OSS com o ossfs 2.0, o ossfs simula um sistema de arquivos da seguinte forma.
Construção da árvore de pastas: usa a barra (
/) como separador de caminho para criar uma estrutura de pastas virtual com base nos nomes dos objetos.Lógica de detecção: infere o tipo de objeto (arquivo ou pasta) ao analisar o separador
/no nome do objeto e as relações entre os subobjetos.
Princípios de detecção de objetos
Se você usar ferramentas como ossfs 1.0 e 2.0, ou produtos como o Cloud Storage Gateway (CSG) para montar um bucket do OSS, siga as convenções de nomenclatura de sistema de arquivos ao criar objetos. Não crie objetos com nomes que diferem apenas por uma barra no final, como a e a/.
|
Cenário |
Resultado da detecção |
Condição ou lógica |
|
O bucket contém apenas o objeto |
Arquivo |
Um único objeto sem a barra |
|
O bucket contém apenas o objeto |
Pasta |
Um objeto cujo nome termina com |
|
O bucket contém o objeto |
Pasta |
O objeto pai |
|
O bucket contém tanto o objeto |
Comportamento indefinido |
A nomenclatura dos objetos no bucket não segue as convenções de sistema de arquivos. |
|
O bucket contém os objetos |
Comportamento indefinido |
A nomenclatura dos objetos no bucket não segue as convenções de sistema de arquivos. |