Presentación de la compatibilidad con Netezza Native Cloud Object Storage (NCOS)

Ilustración digital del icono de la nube con líneas a pilas de almacenamiento

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

Netezza ha dado un gran paso adelante en su proceso de modernización al introducir la compatibilidad con Native Cloud Object Storage directamente dentro del motor.

Esta nueva y potente capacidad permite a los usuarios crear tablas de usuario en formato de datos Netezza en almacenamiento de objetos compatible con S3, desbloquear un nuevo nivel de escalabilidad, flexibilidad y rentabilidad.

Por qué esto es importante

Esta mejora es más que una simple actualización técnica; es un cambio estratégico que posiciona a Netezza para aprovechar al máximo los beneficios de las arquitecturas nativas de la nube. Al integrar el almacenamiento de objetos de forma nativa, Netezza permite:

  • Escalabilidad masiva: el almacenamiento de objetos puede crecer prácticamente sin límites, lo que lo hace ideal para cargas de trabajo de big data.
  • Rentabilidad: menores costes de almacenamiento en comparación con el almacenamiento en bloque tradicional.
  • Intercambio y reduplicación de datos: colaboración más sencilla y redundancia reducida.
  • Mayor durabilidad y resiliencia: tolerancia a fallos integrada en todas las regiones de la nube.

Una jerarquía de almacenamiento híbrido

Esta nueva capacidad complementa la compatibilidad existente de Netezza con el almacenamiento en bloques, formando una jerarquía de almacenamiento híbrida. Los usuarios ahora pueden transferir cargas de trabajo del almacenamiento en bloques al almacenamiento en objetos sin problemas, lo que permite una migración más fluida a implementaciones nativas de la nube.

Este modelo híbrido cambia las reglas del juego para los clientes que buscan optimizar el rendimiento y los costes al tiempo que modernizan su infraestructura de datos.

Arquitectura y modernización

Netezza está disponible actualmente en las principales plataformas en la nube, como AWS y Azure, como ofertas SaaS y Bring Your Own Cloud (BYOC). Estas plataformas en la nube proporcionan almacenamiento de objetos que es barato, escalable y de gran capacidad. Por ejemplo, AWS S3 es un servicio de almacenamiento de objetos popular que se puede implementar a través de una cuenta en la nube de AWS y se escala extremadamente bien manteniendo el coste mínimo. También es posible configurar los depósitos de almacenamiento para el control de versiones, la redundancia y el acceso.

Con el enfoque de almacenamiento híbrido, los clientes pueden especificar opcionalmente el tipo de almacenamiento para una tabla durante la creación. Si no se define ningún tipo de almacenamiento en el DDL, Netezza selecciona automáticamente uno en función de la configuración predeterminada de la base de datos o la configuración predeterminada del sistema, que son configurables.

Netezza continúa basándose en los conceptos de computación distribuida y arquitectura MPP. 

El tipo de almacenamiento es opaco para el front-end de NPS. Lo que significa que el usuario debería poder consultar las tablas y unirlas sin preocuparse por el tipo de almacenamiento subyacente.

Modernización del motor de almacenamiento de Netezza

Netezza ofrece almacenamiento de objetos y sigue admitiendo el almacenamiento en bloques para facilitar la transición de datos y cargas de trabajo del almacenamiento en bloques al almacenamiento de objetos. Una vez configurado el object storage, el cliente puede elegir el tipo de almacenamiento de las tablas recién creadas. Los datos se pueden copiar según sea necesario entre el almacenamiento de objetos y el almacenamiento en bloques utilizando SQL simple.

Los usuarios deben crear un depósito independiente para cada instancia de NPS. 

Denominación y eliminación de objetos de tabla

Cada objeto almacenado en el almacenamiento de objetos sigue un formato de prefijo estructurado:

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

El almacenamiento de objetos contiene objetos correspondientes a las tablas y metadatos. Cada segmento de datos tiene sus propios objetos de metadatos. Los metadatos se almacenan en un gran búfer para mejorar la latencia de E/S.

En la arquitectura de almacenamiento de objetos de Netezza, los objetos obsoletos, como los resultantes de tablas descartadas, truncadas o limpiadas, se rastrean mediante un objeto de lista de eliminación. Esta lista se genera durante esas operaciones. Luego, un limpiador de basura asíncrono es responsable de realizar la eliminación real de esos objetos del almacenar de objetos.

Esto significa que Netezza gestiona automáticamente la limpieza en segundo plano, lo que garantiza una gestión eficiente del almacenamiento sin necesidad de intervención manual.

Almacenamiento en caché SSD local

Para mejorar el rendimiento y reducir los costes operativos, el almacenamiento de objetos de Netezza aprovecha el almacenamiento en caché local. Esta capa de almacenamiento en caché ofrece baja latencia y alto rendimiento. Se desarrolló una implementación de almacenamiento en caché personalizada específicamente para el motor de almacenamiento Netezza, lo que permite una rápida iteración y una estrecha integración con la arquitectura específica de Netezza.

Aspectos destacados del almacenamiento de objetos para los usuarios de Netezza

La integración del almacenamiento de objetos nativo de Netezza aporta importantes beneficios a los usuarios, sin interrumpir los flujos de trabajo o las aplicaciones existentes. Estas son las ventajas clave:

  1. Ningún cambio en las aplicaciones de los clientes: las aplicaciones construidas para tablas de almacenamiento en bloque siguen funcionando de manera fluida con las tablas de almacenamiento de objetos; cambios no code o reconfiguración necesarios.
  2. Compatibilidad total con SQL: toda la sintaxis, las herramientas y las características operativas de Netezza SQL funcionan de forma idéntica con las tablas de almacenamiento de objetos; los usuarios experimentan un comportamiento coherente en ambos tipos de almacenamiento.
  3. Escalabilidad mejorada: aprovecha la escalabilidad inherente del almacenamiento de objetos en la nube tanto para la capacidad como para las IOPS; ideal para cargas de trabajo crecientes y grandes conjuntos de datos.
  4. Modelo de costes transparente: se factura a los usuarios en función del uso real: volumen de almacenamiento y llamadas a la API; permite un mejor control de costes y previsibilidad.
  5. Precio y rendimiento optimizados a lo largo del tiempo: Netezza emplea técnicas como el almacenamiento en caché local de alto rendimiento y las escrituras por lotes para reducir la sobrecarga de la API. Estas optimizaciones ayudan a ofrecer un mejor rendimiento a un menor coste operativo, especialmente para cargas de trabajo analíticas y de lectura intensiva.

Características de rendimiento del almacenamiento en bloques vs. almacenamiento en objetos

Para evaluar la eficiencia y fiabilidad del almacenamiento de objetos, se ejecutó un conjunto diverso de cargas de trabajo que incluían consultas de solo lectura, operaciones analíticas mixtas, tareas de escritura intensiva y escenarios multiusuario simultáneos.

Principales aspectos destacados:

  • Paridad de rendimiento con el almacenamiento en bloque: el almacenamiento de objetos demostró un rendimiento comparable al del almacenamiento en bloque tradicional en diversos tipos de cargas de trabajo.
  • Rendimiento de escritura por lotes más rápido: las operaciones de escritura intensiva, especialmente las inserciones por lotes, mostraron un rendimiento mejorado gracias a las estrategias optimizadas de almacenamiento en caché y escritura.
  • Menores costes de almacenamiento a lo largo del tiempo: el coste total de ejecutar estas cargas de trabajo, incluido el uso de API, fue consistentemente menor en el almacenamiento de objetos en comparación con el almacenamiento en bloque, lo que lo convierte en una solución más rentable para la gestión de datos a largo plazo.

Experiencia del usuario

Para admitir el almacenamiento de objetos nativos, Netezza introduce la palabra clave storagetype, que permite a los usuarios especificar el tipo de almacenamiento deseado en varios niveles de configuración.

1.   Jerarquía de resolución de tipos de almacenamiento: si se especifica el nivel de tabla en la instrucción CREATE TABLE, la tabla utiliza el tipo de almacenamiento definido.

2.  Ejemplo: CREATE TABLE t1 (c1 INT) storagetype 'object';Nivel de sesión: si no se especifica a nivel de tabla, el tipo de almacenamiento se hereda de la sesión. Ejemplo:

               SET default_storage_type = ‘object’;

               CREATE TABLE t1 (c1 INT)

3. Nivel de base de datos: si no se especifica a nivel de sesión, el tipo de almacenamiento se hereda de la base de datos. Ejemplo:

CREATE DATABASE db1 storagetype 'object'; 

ALTER DATABASE db1 storagetype 'object';

4. Configuración global: si tampoco se especifica a nivel de base de datos, el sistema recurre al tipo de almacenamiento predeterminado global establecido en la configuración del sistema. Ejemplo:

SET default_storage_type = 'object';

Esta jerarquía garantiza la flexibilidad al tiempo que mantiene la coherencia en todas las implementaciones.

Actualización de disponibilidad

Cloud Object Storage nativo para Netezza en AWS ya está disponible en versión preliminar pública, con disponibilidad general prevista para AWS y Azure en el cuarto trimestre de 2025.

Mantener una experiencia de usuario coherente

Netezza ahora es compatible con el almacenamiento nativo de objetos en la nube, lo que permite a los usuarios crear y gestionar tablas directamente en el almacenamiento en la nube compatible con S3. Este modelo híbrido que combina almacenamiento de bloques y almacenamiento de objetos ofrece una mejor escalabilidad, menores costes y una perfecta compatibilidad con SQL.

Con el almacenamiento en caché, la limpieza asíncrona y la configuración flexible del almacenamiento a través de la palabra clave storagetype, Netezza ofrece una mejor relación precio-rendimiento al tiempo que mantiene una experiencia de usuario coherente. La vista previa pública de Netezza NCOS es una base sólida para impulsar una ola de nuevas capacidades que entusiasmarán a nuestros usuarios. 

Recomendamos a los usuarios que exploren el almacenamiento de objetos ejecutando sus cargas de trabajo y determinen el mejor equilibrio para sus necesidades de datos y cargas de trabajo.

Descubrir hoy