As instâncias do DSW em grupos de recursos públicos e dedicados têm armazenamento padrão limitado e dados não permanentes. Para expandir o armazenamento, ative a persistência de dados ou compartilhar informações, monte um dataset ou um caminho de armazenamento na instância.
Os dados no disco em nuvem são apagados se você excluir a instância ou se ela permanecer parada por mais de 15 dias.
Os dados no disco do sistema são apagados após a instância ser parada ou excluída.
Montagem de dataset vs. montagem direta de caminho de armazenamento
Se precisar de armazenamento de longo prazo ou colaboração em equipe, monte um dataset. Se precisar apenas de armazenamento para tarefas temporárias ou expansão rápida, monte diretamente um caminho de armazenamento.
Recurso | Montar um dataset | Montar um caminho de armazenamento diretamente |
Serviços de nuvem compatíveis | OSS, NAS e CPFS | |
Gerenciamento de versões | Compatível com gerenciamento de versões e aceleração de dados. | Incompatível com gerenciamento de versões. |
Compartilhamento de dados | Permite compartilhamento entre várias instâncias. | Limitado à instância atual. |
Complexidade operacional | Exige crie e configure um dataset. | Exige apenas montar o caminho de armazenamento diretamente. |
Casos de uso | Armazenamento de longo prazo, colaboração em equipe e requisitos de alta segurança. | Tarefas temporárias e necessidades de expansão rápida de armazenamento. |
Montagem na inicialização vs. montagem dinâmica
Há dois métodos de montagem disponíveis: montagem na inicialização e montagem dinâmica.
Montagem na inicialização: Configurada ao crie ou alterar as configurações de uma instância. Essa ação exige reiniciar a instância para entrar em vigor.
Montagem dinâmica: Usa o PAI sdk em uma instância em execução e não exige reinicialização.
Limitações
Caminho único: O caminho de montagem de cada dataset deve ser exclusivo.
Limite de escrita: Evite operações frequentes de escrita em diretórios de montagem do OSS. Isso pode causar degradação de desempenho ou falhas nas operações.
Restrição do Git: Não há suporte a operações do Git em diretórios de montagem do OSS. Execute comandos do Git em diretórios locais ou outros caminhos não montados.
Limitações da montagem dinâmica
Acesso somente leitura: A montagem dinâmica oferece suporte apenas a acesso de leitura e não permite operações de escrita. É adequada para cenários que exigem montagem rápida ou acesso temporário somente leitura.
Tipo de armazenamento: A montagem dinâmica é compatível apenas com OSS e NAS.
Recursos indisponíveis: Atualmente, a montagem dinâmica não é compatível com recursos Lingjun.
Montagem na inicialização
Para montar na inicialização, use as opções Dataset Mounting ou Mount storage na página de configuração da instância. Reinicie a instância para que as alterações entrem em vigor.
Montar um dataset
-
Crie um dataset
Faça login no PAI console. No painel de navegação à esquerda, escolha AI Asset Management > Dataset. Na página exibida, crie um dataset personalizado ou público. Para mais informações, consulte Criar e gerencie datasets.
-
Monte o dataset
Na página de configuração da instância DSW, localize o parâmetro Dataset Mounting. Acesse esta página ao crie uma instância ou clique em Change Settings em uma existente. Clique em Custom, selecione o dataset criado e insira um Mount Path.
Observações sobre a montagem de dataset personalizado:
Dataset CPFS: Ao configure um dataset CPFS, a VPC da instância DSW deve ser a mesma do sistema de arquivos CPFS. Caso contrário, a criação da instância falhará.
Dataset NAS: Ao configure um dataset NAS, configure a rede e selecione um grupo de segurança.
Uso de grupo de recursos dedicado: Ao usar um grupo de recursos dedicado, o primeiro dataset deve ser do tipo NAS. Esse dataset será montado tanto no caminho especificado quanto no diretório de trabalho padrão do DSW em
/home/admin/workspace.
Montar um caminho de armazenamento diretamente
Esta seção usa a montagem de um caminho de armazenamento OSS como exemplo.
-
Crie um bucket do OSS
Ativar o OSS e crie um bucket.
ImportanteA região do bucket deve ser a mesma da região do PAI. Não é possível alterar a região de um bucket após sua criação.
-
Monte o caminho do OSS
Na página de configuração da instância DSW (aberta ao crie uma instância ou clicando em Change Settings para uma instância existente), localize o parâmetro Mount storage. Clique em OSS, selecione o caminho do bucket OSS criado e insira um Mount Path. O campo Advanced Configurations está vazio por padrão. Configure-o conforme necessário. Para mais informações, consulte Configuração avançada de montagem.
Montagem dinâmica
A montagem dinâmica permite montar um dataset ou caminho de armazenamento usando o PAI sdk dentro de uma instância DSW em execução, sem necessidade de reinicialização.
Pré-requisitos
-
Instale o PAI Python sdk. No Terminal da instância DSW, execute o comando abaixo. É necessário Python 3.8 ou superior.
python -m pip install pai>=0.4.11 -
Configure as credenciais de acesso para que o sdk acesse o PAI.
Método 1: Configure a instância DSW para usar a função padrão do PAI ou uma função RAM personalizada. Abra a página de configuração da instância, clique em Show More na parte inferior e selecione uma função RAM para a instância. Para mais informações, consulte Configure uma função RAM para uma instância DSW.
-
Método 2: Configure manualmente usando a ferramenta de linha de comando fornecida pelo PAI Python sdk. No Terminal, execute o seguinte comando para configure os parâmetros de acesso. Para ver um exemplo, consulte Inicialização.
python -m pai.toolkit.config
Exemplos
-
Montar no caminho padrão
Os dados são montados no caminho de montagem padrão dentro da instância. Para imagens oficiais pré-construídas de instâncias, o caminho padrão é
/mnt/dynamic/.from pai.dsw import mount # Mount an OSS path. mount_point = mount("oss://<YourBucketName>/Path/Data/Directory/") # Mount a dataset. The input parameter is the dataset ID. # mount_point = mount("d-m7rsmu350********")
-
Montar em um caminho específico
A montagem dinâmica exige que os dados sejam montados em um caminho específico (ou subdiretório) dentro do container. Obtenha o caminho de montagem dinâmica usando a API fornecida pelo sdk.
from pai.dsw import mount, default_dynamic_mount_path # Get the default mount path of the instance. default_path = default_dynamic_mount_path() mount_point = mount("oss://<YourBucketName>/Path/Data/Directory" , mount_point=default_path + "tmp/output/model")
-
Montar NAS dinamicamente
from pai.dsw import mount, default_dynamic_mount_path # Get the default mount path of the instance. default_path = default_dynamic_mount_path() # Mount NAS. The NAS endpoint and the instance must be in the same VPC. Replace <region> with the region ID, such as cn-hangzhou. mount("nas://06ba748***-xxx.<region>.nas.aliyuncs.com/", default_path+"mynas3/") -
Visualize todas as configurações de montagem na instância
from pai.dsw import list_dataset_configs print(list_dataset_configs()) -
Desmontar dados
from pai.dsw import mount, unmount mount_point = mount("oss://<YourBucketName>/Path/Data/Directory/") # The input parameter is the mount path, which is the MountPath value returned by list_dataset_configs. # After running the unmount command, it takes a few seconds for the change to take effect. unmount(mount_point)
Configuração avançada de montagem
Ao configure uma montagem, defina parâmetros avançados para adaptar-se a diferentes cenários, como leitura/escrita rápida, escrita incremental e acesso somente leitura, otimizando assim o desempenho.
Visualize configurações de montagem
Abra a instância DSW e, no Terminal, execute os seguintes comandos para verifique se os datasets NAS e OSS foram montados com sucesso.
# View all mounts
mount
# Query NAS mount paths
mount | grep nas
# Query OSS mount paths
mount | grep oss
Uma saída semelhante à abaixo indica que o dataset foi montado com sucesso.
(base) /mnt/workspace> mount | grep nas
xxx /dsw01/ on /mnt/workspace type nfs (rw,relatime,vers=3,rsize=1048576,wsize=1048576,namlen=255,hard,nolock,noresvport,proto=tcp,timeo=600,retrans=2,sec=sys,mountaddr=xxx,mountvers=3,mountport=2049,mountproto=tcp,local_lock=all,addr=xxx)
xxx /dsw01/ on /mnt/data_nas type nfs (rw,relatime,vers=3,rsize=1048576,wsize=1048576,namlen=255,hard,nolock,noresvport,proto=tcp,timeo=600,retrans=2,sec=sys,mountaddr=xxx,mountvers=3,mountport=2049,mountproto=tcp,local_lock=all,addr=xxx)
xxx:/dsw01/ on /home/admin/workspace type nfs (rw,relatime,vers=3,rsize=1048576,wsize=1048576,namlen=255,hard,nolock,noresvport,proto=tcp,timeo=600,retrans=2,sec=sys,mountaddr=xxx,mountvers=3,mountport=2049,mountproto=tcp,local_lock=all,addr=xxx)
(base) /mnt/workspace>
(base) /mnt/workspace> mount | grep oss
jindo-fuse on /mnt/data_oss type fuse.jindo-fuse (rw,nosuid,nodev,relatime,user_id=0,group_id=0,allow_other)
(base) /mnt/workspace>
O dataset NAS está montado nos diretórios /mnt/data_nas, /mnt/workspace e /home/admin/workspace. Dentre estes, /mnt/data_nas é o caminho de montagem especificado durante a criação da instância DSW, enquanto os outros dois são os diretórios de trabalho padrão do DSW onde o primeiro dataset NAS é montado. Desde que seu volume NAS e serviço funcionem normalmente, seus dados e códigos permanecerão armazenados de forma persistente.
O dataset OSS está montado no diretório /mnt/data_oss da instância DSW.
Perguntas frequentes
P: Arquivos OSS montados não visíveis no JupyterLab
Isso ocorre porque o navegador de arquivos do DSW mostra o diretório de trabalho da instância por padrão, geralmente /mnt/workspace. O caminho de montagem especificado para o OSS (por exemplo, /mnt/data) não está sob o diretório de trabalho padrão, portanto não aparece no navegador de arquivos.
Soluções:
Acesso via código: Seus arquivos foram realmente montados com sucesso. No seu código, use o caminho completo de montagem para acessá-los, como em
open('/mnt/data/my_file.csv').Alterar o ponto de montagem: Para visualize os arquivos facilmente na interface, defina o caminho de montagem como um subdiretório dentro do diretório de trabalho ao configure a montagem, como
/mnt/workspace/my_oss_data. Após concluir a montagem, seus arquivos OSS estarão visíveis na pastamy_oss_datado navegador de arquivos.Acesso via Terminal: No Terminal do DSW, use o comando
cd /mnt/datapara acesse o diretório de montagem e use comandos comolspara visualize e gerencie arquivos.
P: Como resolver erros de conexão de montagem OSS?
Esse erro indica que a conexão de montagem entre a instância DSW e o OSS foi perdida. As possíveis causas e soluções são:
Problema de permissão da função RAM: Verifique se a função RAM configurada para sua instância DSW tem permissão para acessar o OSS (por exemplo,
AliyunPAIDLCAccessingOSSRole). Permissões insuficientes são uma causa comum de falha na leitura do OSS.Recursos insuficientes para o serviço de montagem: Durante operações intensivas de leitura/escrita aleatória ou manipulação de grande volume de arquivos pequenos, o processo
ossfsouJindoFuseresponsável pela montagem pode falhar devido a erro de falta de memória (OOM). Nas Configurações Avançadas da montagem, desative o cache de metadados ou aumente a alocação de memória. Para mais informações, consulte JindoFuse.-
Restaurar a conexão:
Para montagem na inicialização, a maneira mais simples de restaurar a conexão é reiniciar a instância DSW. O sistema restabelecerá automaticamente a montagem.
Alternativamente, execute um comando de montagem dinâmica usando o PAI sdk para remontar o caminho sem reiniciar a instância.
P: Quais tipos de dados são compatíveis com montagem?
O DSW é compatível com o uso de serviços de armazenamento em nuvem como OSS, NAS e CPFS por meio da criação de um dataset ou montagem direta de um caminho de armazenamento.
Alibaba Cloud Drive não é compatível: Atualmente, o DSW não oferece suporte à montagem direta de um Alibaba Cloud Drive pessoal. Recomenda-se armazenar os dados que precisam ser processados no OSS.
Montagem de tabelas MaxCompute não é compatível: Dados de tabelas do MaxCompute (antigo ODPS) não podem ser "montados" em um diretório DSW como um sistema de arquivos. Leia e escreva esses dados no código do DSW usando o sdk ou API fornecidos pelo PAI. Para mais informações, consulte Usar PyODPS para ler e escrever tabelas MaxCompute.
P: Como garantir persistência e migração de dados?
O disco do sistema de uma instância DSW fornece armazenamento temporário. Em grupos de recursos públicos, os dados são apagados se a instância ficar parada por mais de 15 dias. Em grupos de recursos dedicados, os dados no disco do sistema são apagados assim que a instância é parada ou excluída.
Para armazenar dados e códigos de forma persistente ou migrá-los entre instâncias, use armazenamento externo.
Solução de persistência: Salve todos os dados importantes, códigos e modelos em um caminho OSS ou NAS montado. Assim, mesmo que a instância DSW seja excluída, todos os seus ativos permanecerão seguros em seu próprio OSS ou NAS.
Solução de migração: Quando precisar migrar dados de uma instância DSW para outra, basta montar o mesmo caminho OSS ou NAS na nova instância. Este é o método mais prático de migração de dados.
P: Exportar dados de uma instância DSW com falha
Se uma instância DSW não conseguir iniciar devido a recursos insuficientes ou outros motivos, os dados em seu disco do sistema não são perdidos imediatamente. Tente os seguintes métodos para exportar os dados:
Alterar a especificação da instância e reiniciar: Na página de lista de instâncias, clique em "Change Settings", selecione outra especificação de instância disponível e reinicie a instância. A alteração de especificações não causa perda de dados no disco do sistema. Assim que a instância iniciar com sucesso, faça backup imediato dos seus dados para o OSS ou NAS.
Trocar a região ou zona de disponibilidade: Se a região atual estiver com recursos insuficientes e seus dados já estiverem armazenados externamente, tente crie uma nova instância e montar o mesmo armazenamento OSS/NAS para recuperar os dados.
Contatar o suporte técnico: Se os métodos acima não resolverem o problema, abra um ticket para o suporte técnico solicitar assistência.
Se receber uma notificação informando que "O disco do sistema será liberado em X dias", inicie a instância alterando as especificações ou por outros meios para fazer backup dos seus dados antes do prazo final.
Documentação relacionada
Para mais perguntas frequentes, consulte Perguntas frequentes do DSW