Apresentando a compatibilidade com o Netezza Native Cloud Object Storage (NCOS)

Ilustração digital de ícone de nuvem com linhas para stacks de armazenamento

Autores

Brajesh Pandey

STSM, Chief Architect, Netezza

IBM

Daniel Hancock

IBM

Principal Data and AI Specialist, Worldwide Technical Sales

Harish Mara

Senior Backend Developer

IBM

Kiran Kumar Gahlot

QA/Test Developer

Samuel Patterson

Senior Software Engineer

Shawn Rackley

Software Development

O Netezza deu um grande salto na jornada de modernização ao introduzir a compatibilidade com o Native Cloud Object Storage diretamente no mecanismo.

Esse novo e poderoso recurso permite que os usuários criem tabelas de usuário no formato de dados Netezza em object storage compatível com S3, liberando um novo nível de escalabilidade, flexibilidade e relação custo/benefício.

Por que isso é importante

Esse aprimoramento é mais do que um simples upgrade técnico; é uma mudança estratégica que posiciona o Netezza para aproveitar totalmente os benefícios das arquiteturas nativas da nuvem. Ao integrar o object storage nativamente, o Netezza permite:

  • Escalabilidade maciça: o object storage pode crescer praticamente sem limites, tornando-o ideal para cargas de trabalho de big data.
  • Relação custo/benefício: custos de armazenamento mais baixos em comparação com o block storage tradicional.
  • Compartilhamento e reduplicação de dados: colaboração mais fácil e redundância reduzida.
  • Maior durabilidade e resiliência: tolerância a falhas integrada em todas as regiões de nuvem.

Uma hierarquia de armazenamento híbrido

Esse novo recurso complementa o a compatibilidade existente do Netezza com o block storage , formando uma hierarquia de armazenamento híbrido. Agora, os usuários podem fazer a transição de cargas de trabalho de block para object storage sem dificuldades, possibilitando um caminho de migração mais tranquilo para implementações nativas da nuvem.

Esse modelo híbrido é um divisor de águas para clientes que buscam otimizar o desempenho e os custos e, ao mesmo tempo, modernizar a infraestrutura de dados.

Arquitetura e modernização

Atualmente, o Netezza está disponível nas principais plataformas de nuvem, como AWS e Azure, como ofertas de SaaS e Bring Your Own Cloud (BYOC). Essas plataformas de nuvem fornecem object storage barato, escalável e altamente capaz. Por exemplo, o AWS S3 é um serviço popular de object storage que pode ser implementado por meio de uma conta de nuvem da AWS e escala extremamente bem, mantendo o custo mínimo. Também é possível configurar os buckets de armazenamento para controle de versão, redundância e controle de acesso.

Com a abordagem de armazenamento híbrido, os clientes podem, opcionalmente, especificar o tipo de armazenamento para uma tabela durante a criação. Se nenhum tipo de armazenamento for definido no DDL, o Netezza selecionará automaticamente um com base nas configurações padrão do banco de dados ou na configuração padrão do sistema, que são configuráveis.

O Netezza continua a ser construído sobre os conceitos de computação distribuída e arquitetura MPP. 

O tipo de armazenamento é opaco no front-end do NPS. Isso significa que o usuário deve poder consultar as tabelas e participar delas sem se preocupar com o tipo de armazenamento subjacente.

Modernização do mecanismo de armazenamento do Netezza

O Netezza oferece armazenamento de objetos e continua a ser compatível com o block storage para facilitar a transição de dados e cargas de trabalho do block storage para o object storage. Depois que o object storage é configurado, o cliente pode escolher o tipo de armazenamento das tabelas recém-criadas. Os dados podem ser copiados conforme a necessidade entre o object storage e o block storage usando SQL simples.

Os usuários devem criar um bucket separado para cada instância do NPS. 

Nomenclatura e exclusão de objetos de tabelas

Cada objeto armazenado no armazenamento de objetos segue um formato de prefixo estruturado:

 “/nps/<instance name>/<dbuuid>/<dsid>”.

O object storage contém objetos correspondentes às tabelas e metadados. Cada fatia de dados tem seus próprios objetos de metadados. Os metadados são armazenados em um grande buffer para melhorar a latência de E/S.

Na object storage do Netezza, objetos obsoletos, como os resultantes de tabelas descartadas, truncadas ou preparadas, são rastreados usando uma lista de objetos de exclusão. Essa lista é gerada durante essas operações. Em seguida, um limpador de lixo assíncrono é responsável por executar a exclusão real desses objetos do armazenamento de objetos.

Isso significa que o Netezza lida automaticamente com a limpeza em segundo plano, garantindo um gerenciamento de armazenamento eficiente sem a necessidade de intervenção manual.

Cache SSD local

Para aproveitar o desempenho e reduzir os custos operacionais, o object storage do Netezza utiliza o cache local. Essa camada de cache oferece baixa latência e alta taxa de transferência. Uma implementação de cache personalizada foi desenvolvida especificamente para o mecanismo de armazenamento do Netezza, permitindo iteração rápida e forte integração com a arquitetura específica do Netezza.

Principais destaques do object storage para usuários do Netezza

A integração do object storage nativo do Netezza traz benefícios poderosos aos usuários, sem interromper os fluxos de trabalho ou as aplicações existentes. Veja a seguir as principais vantagens:

  1. Nenhuma mudança nas aplicações do cliente: as aplicações desenvolvidas para block storage continuam a funcionar sem dificuldades com o object storage; não são necessárias alterações de código ou reconfiguração.
  2. Compatibilidade total com SQL: toda a sintaxe, ferramentas e funcionalidades operacionais do Netezza SQL funcionam de forma idêntica com as tabelas do object storage; os usuários têm uma experiência consistente em ambos os tipos de armazenamento.
  3. Maior escalabilidade: aproveita a escalabilidade inerente do Cloud Object Storage para capacidade e IOPS; ideal para cargas de trabalho crescentes e grandes conjuntos de dados.
  4. Modelo de custos transparente: os usuários são cobrados com base no uso real — volume de armazenamento e chamadas de APIs; possibilita melhor controle e previsibilidade de custos.
  5. Preço e desempenho otimizados ao longo do tempo: o Netezza emprega técnicas como cache local de alto desempenho e gravações em lote para reduzir a sobrecarga de APIs. Essas otimizações ajudam a oferecer melhor desempenho por um custo operacional menor, especialmente para cargas de trabalho analíticas e com uso intenso de leitura.

Característica de desempenho de block versus object storage

Para avaliar a eficiência e a confiabilidade do object storage, foi executado um conjunto diversificado de cargas de trabalho, incluindo consultas somente leitura, operações analíticas mistas, tarefas de uso intenso de gravação e cenários simultâneos multiusuários.

Principais destaques:

  • Paridade de desempenho com o block storage: o object storage demonstrou desempenho comparável ao do block storage em diversos tipos de cargas de trabalho.
  • Desempenho de gravação em lote mais rápido: operações com uso intenso de gravação, especialmente inserções em lote, apresentaram taxa de transferência aprimorada graças às estratégias otimizadas de cache e gravação.
  • Custos de armazenamento mais baixos ao longo do tempo: o custo total de execução dessas cargas de trabalho, incluindo o uso de APIs, foi consistentemente menor no object storage em comparação com o block storage, tornando-o uma solução mais econômica para o gerenciamento de dados de longo prazo.

Experiência do usuário

Para compatibilidade com o object storage nativo, o Netezza introduz a palavra-chave storagetype , permitindo que os usuários especifiquem o tipo de armazenamento desejado em vários níveis de configuração.

1.   Hierarquia de resolução de tipo de armazenamento: se o nível da tabela for especificado na instrução CREATE TABLE , a tabela usará o tipo de armazenamento definido.

2.  Exemplo: CREATE TABLE t1 (c1 INT) tipo de armazenamento 'object';Nível de sessão:  se não for especificado no nível de tabela, o tipo de armazenamento será herdado da sessão. Exemplo:

               SET default_storage_type = ‘object’;

               CREATE TABLE t1 (c1 INT)

3. Nível de banco de dados: se não for especificado no nível de sessão, o tipo de armazenamento será herdado do banco de dados. Exemplo:

CREATE DATABASE db1 storagetype ‘object’;

ALTER DATABASE db1 storagetype ‘object’;

4. Configuração global: se não for especificado no nível de banco de dados, o sistema retornará ao tipo de armazenamento padrão global definido na configuração do sistema. Exemplo:

SET default_storage_type = ‘object’;

Essa hierarquia garante flexibilidade e mantém a consistência entre as implementações.

Atualização de disponibilidade

O Native Cloud Object Storage for Netezza na AWS agora está disponível em pré-visualização pública, com a disponibilidade geral planejada para AWS e Azure no 4º trimestre de 2025.

Manutenção de uma experiência de usuário consistente

O Netezza agora é compatível com cloud object storage, permitindo que os usuários criem e gerenciem tabelas diretamente no armazenamento na compatível com S3. Esse modelo híbrido que combina o block e o object storage oferece melhor escalabilidade, custos mais baixos e compatibilidade com SQL sem dificuldades.

Com cache, limpeza assíncrona e configuração de armazenamento flexível por meio da palavra-chave storagetype , o Netezza oferece melhor desempenho de preço, mantendo uma experiência de usuário consistente. A pré-visualização pública do Netezza NCOS é uma base sólida para estimular uma onda de novos recursos que entusiasmarão nossos usuários. 

Recomendamos que os usuários explorem o object storage executando suas cargas de trabalho e determinando o melhor equilíbrio para suas necessidades de dados e cargas de trabalho.

Explore hoje