Data Virtualization admite las siguientes fuentes de datos relacionales y no relacionales en ' IBM Cloud Pak® for Data as a Service.
No puede conectarse a un origen de datos como una conexión a una conexión de plataforma existente si la conexión de plataforma utiliza la integración de nube, Secure Gatewayo Satellite Link. Estas funciones no son compatibles con Data Virtualization cuando se conecta a conexiones de Plataforma. Verá un mensaje de error que es similar aCannot reach the network destination of the data source. Puede configurar el origen de datos mediante la integración en la nube, Secure Gateway o Satellite Link y proporcionar el nombre de host o el punto final IP directamente a Data Virtualization como una nueva conexión.
- Límites de tamaño
- Data Virtualization admite la virtualización de tablas con un tamaño de fila de hasta 1 MB, y hasta 2048 columnas en una tabla. Sin embargo, el número de columnas que Data Virtualization puede previsualizar depende de muchos factores, como los tipos de datos de las columnas. Actualmente, la vista previa está limitada a 200 columnas.
- Atributos de comentario
- Cuando se crean tablas virtuales, Data Virtualization no incluye los atributos de comentario que se asignaron a los objetos de origen de datos. Esta limitación se aplica a todos los orígenes de datos.
- Tipos de datos
- Es posible que algunos tipos de datos de su fuente de datos no sean compatibles con Data Virtualization. Estas limitaciones se documentan en las tablas siguientes. Data Virtualization también puede asignar algunos tipos de datos de su fuente de datos a tipos de datos alternativos. Estas correlaciones se basan en correlaciones subyacentes de Db2® Big SQL . Para obtener más información, consulte Tipos de datos en Db2 Big SQL.
Orígenes de datos de IBM
La siguiente tabla enumera las fuentes de datos IBM® a las que puede conectarse desde Data Virtualization.
Conector | Limitaciones | Más información |
---|---|---|
IBM Cloud® Databases for MongoDB | IBM Cloud Databases for MongoDB está disponible como beta. Data Virtualization admite los siguientes tipos de datos ' MongoDB ': INT32, INT64, DOUBLE, STRING, BOOLEAN, DATE y BINARY. |
|
IBM Cloud Databases for MySQL | ||
Bases de datos deIBM Cloud para PostgreSQL | Esta conexión está optimizada para aprovechar las prestaciones de consulta en este origen de datos. |
|
IBM Cloud Object Storage | Esta conexión requiere una consideración especial en la Data Virtualization. Consulte Conexión a IBM Cloud Object Storage en Data Virtualization. Para conocer las limitaciones, consulte Fuentes de datos en almacenamiento de objetos en Data Virtualization. |
|
IBM Data Virtualization Manager for z/OS® | No puede conectarse a Data Virtualization Manager for z/OS si la conexión utiliza la integración de Cloud, Secure Gatewayo Satellite Link. Estas funciones no son compatibles con Data Virtualization. Verá un mensaje de error que es similar aCannot reach the network destination of the data source. | Esta conexión está optimizada para aprovechar las prestaciones de consulta en este origen de datos. |
IBM Db2 |
|
Esta conexión está optimizada para aprovechar las prestaciones de consulta en este origen de datos. |
IBM Db2 Big SQL | Esta conexión está optimizada para aprovechar las prestaciones de consulta en este origen de datos. |
|
IBM Db2 for i | Esta conexión está optimizada para aprovechar las prestaciones de consulta en este origen de datos. |
|
IBM Db2 for z/OS | ||
IBM Db2 on Cloud | Los tipos NCHAR y NVARCHAR no son compatibles con Data Virtualization. | |
IBM Db2 Warehouse | ||
IBM Informix® | Los tipos de datos INTERVAL, BIGINT y BIGSERIAL no son compatibles con Data Virtualization. Para obtener más información, consulte Se producen excepciones cuando se utiliza el controlador Connect para JDBC Informix. | |
IBM Netezza® Performance Server |
|
Esta conexión está optimizada para aprovechar las prestaciones de consulta en este origen de datos. |
IBM Planning Analytics |
|
|
IBM Data Virtualization | Importante: No cree una conexión con su instancia de Data Virtualization.
|
Orígenes de datos de terceros
La siguiente tabla enumera las fuentes de datos de terceros a las que puede conectarse desde Data Virtualization.
Conector | Limitaciones | Más información |
---|---|---|
Amazon RDS for MySQL |
|
Esta conexión está optimizada para aprovechar las prestaciones de consulta en este origen de datos. |
Amazon RDS for Oracle |
|
Esta conexión está optimizada para aprovechar las prestaciones de consulta en este origen de datos. |
Amazon RDS for PostgreSQL | Esta conexión está optimizada para aprovechar las prestaciones de consulta en este origen de datos. |
|
Amazon Redshift | Los tipos de datos SPATIAL, SKETCH y SUPER se convierten a CLOB en la Data Virtualization. | Esta conexión está optimizada para aprovechar las prestaciones de consulta en este origen de datos. |
Amazon S3 | Esta conexión requiere una consideración especial en la Data Virtualization. Consulte Conexión a Amazon S3 en Data Virtualization.
|
|
Apache Derby | Esta conexión está optimizada para aprovechar las prestaciones de consulta en este origen de datos. |
|
Apache Hive |
|
Esta conexión está optimizada para aprovechar las prestaciones de consulta en este origen de datos. |
Ceph | Esta conexión requiere una consideración especial en la Data Virtualization. Consulte Conexión a Ceph en Data Virtualization. Para conocer las limitaciones, consulte Fuentes de datos en almacenamiento de objetos en Data Virtualization. |
|
Cloudera Impala | Esta conexión está optimizada para aprovechar las prestaciones de consulta en este origen de datos. |
|
S3 genérico | Para conocer las limitaciones, consulte Fuentes de datos en almacenamiento de objetos en Data Virtualization. |
|
Google BigQuery | Esta conexión requiere una consideración especial en la Data Virtualization. Véase Conexión a Google BigQuery en Data Virtualization.
|
Esta conexión está optimizada para aprovechar las prestaciones de consulta en este origen de datos. |
Greenplum | Esta conexión está optimizada para aprovechar las prestaciones de consulta en este origen de datos. |
|
MariaDB |
|
Esta conexión está optimizada para aprovechar las prestaciones de consulta en este origen de datos. |
Microsoft Azure Data Lake Storage | ||
Microsoft Azure SQL Database | ||
Microsoft SQL Server |
|
Esta conexión está optimizada para aprovechar las prestaciones de consulta en este origen de datos. |
MongoDB |
|
|
MySQL (My SQL Community Edition) (My SQL Enterprise Edition) |
|
Esta conexión está optimizada para aprovechar las prestaciones de consulta en este origen de datos. |
Oracle |
|
Esta conexión está optimizada para aprovechar las prestaciones de consulta en este origen de datos. |
PostgreSQL | Esta conexión está optimizada para aprovechar las prestaciones de consulta en este origen de datos. |
|
Salesforce.com | Esta conexión está optimizada para aprovechar las prestaciones de consulta en este origen de datos. |
|
SAP ASE | ||
SAP OData | No puede obtener una vista previa de las tablas ilegibles ni consultarlas por las siguientes razones:
|
|
Snowflake | Esta conexión requiere una consideración especial en la Data Virtualization. Véase Conexión a Snowflake en Data Virtualization.
|
Esta conexión está optimizada para aprovechar las prestaciones de consulta en este origen de datos. |
Teradata Teradata JDBC Driver 17.00 Copyright (C) 2024 por Teradata. Reservados todos los derechos. IBM proporciona el uso incorporado del controlador Teradata JDBC bajo licencia de Teradata únicamente para su uso como parte de la oferta de servicio IBM Watson® . |
|
Esta conexión está optimizada para aprovechar las prestaciones de consulta en este origen de datos. |
Fuentes de datos en el almacenamiento de objetos en la Data Virtualization
Puede utilizar datos que se almacenan como archivos en orígenes de datos IBM Cloud Object Storage, Amazon S3, Ceph, o genéricos S3 para crear tablas virtuales. Para acceder a datos almacenados en almacenamiento de objetos en la nube, debe crear una conexión al origen de datos donde se encuentran los archivos.
Puede segmentar o combinar los datos de uno o más archivos para crear una tabla virtual. El acceso a archivos en almacenamiento de objetos en Data Virtualization se basa en las capacidades de Db2 Big SQL que utilizan el soporte de tablas externas Hadoop. Para obtener más información, consulte Sentencia CREATE TABLE (HADOOP).
Terminología
- Un grupo es una abstracción lógica que se utiliza para proporcionar un contenedor para los datos. No hay ningún concepto de carpeta en el almacenamiento de objetos; solo grupos y claves. Los grupos sólo se pueden crear en la interfaz del origen de datos de almacenamiento de objetos. No pueden crearse en Data Virtualization. Los nombres de grupo deben ser exclusivos y cumplir las reglas del proveedor de almacenamiento de objetos. Estas reglas a menudo incluyen restringir el nombre a 3-63 caracteres con letras en minúsculas, números y guiones solamente. Los nombres de grupo deben empezar y terminar por una letra en minúsculas o por un número. Cuando Data Virtualization accede a datos en el almacenamiento de objetos, el nombre del bucket debe ser único en todas las conexiones de almacenamiento de objetos.
- Una vía de acceso de archivo es la vía de acceso completa al archivo en el que desea almacenar datos. La implementación del sistema de archivos S3 permite que los archivos de longitud cero se traten como directorios y los nombres de archivo que contienen una barra inclinada (/) se tratan como directorios anidados. La vía de acceso de archivo incluye el nombre de grupo, una vía de acceso de archivo opcional y un nombre de archivo. En el almacenamiento de objetos, la vía de acceso de archivo se utiliza cuando se crea una tabla. Todos los archivos de la misma vía de acceso contribuyen a los datos de la tabla. Puede añadir más datos añadiendo otro archivo a la vía de acceso del archivo.
- Una partición son datos agrupados por un atributo común en el esquema. El particionamiento divide los datos en varias vías de acceso de archivo, que se tratan como directorios. Data Virtualization puede descubrir y utilizar particiones para reducir la cantidad de datos que las consultas deben procesar, lo que puede mejorar el rendimiento de las consultas que utilizan predicados en las columnas de partición.
Prácticas recomendadas
- Formatos de archivo
- Data Virtualization admite los formatos de archivo PARQUET (o PARQUETFILE), ORC (fila columnar optimizada), CSV (valores separados por comas), TSV (valores separados por tabuladores) y JSON. No se admite ningún otro formato de archivo.
- Para PARQUET (o PARQUETFILE), las extensiones de archivo no son necesarias. Los metadatos se extraen del archivo de datos.
- Para ORC, las extensiones de archivo no son necesarias. Los metadatos se extraen del archivo de datos.
- Para archivos CSV y TSV:
- Se necesita la extensión de archivo .csv o .tsv adecuada, tal como se indica a continuación:
- CSV: la extensión de archivo .csv es necesaria y el contenido del archivo debe seguir las especificaciones para valores separados por comas.
- TSV: La extensión de archivo .tsv es necesaria y el contenido del archivo debe seguir las especificaciones para los valores separados por tabuladores.
- Se puede utilizar un parámetro opcional para especificar un carácter delimitador de serie (
quoteChar
) que rodea los valores de campo en los archivos CSV y TSV.- El rendimiento de la consulta de los datos puede verse afectado negativamente si se especifica
quoteChar
. - El valor predeterminado no es ningún delimitador (no especificado).
- El valor de
quoteChar
debe ser un único carácter que no puede ser un espacio (en blanco), barra inclinada invertida, tabulador, coma o carácter de nueva línea (\n
). - Si el valor de serie contiene el delimitador de serie (
quoteChar
), se puede utilizar la barra inclinada invertida (\
) para escapar el delimitador de serie.
- El rendimiento de la consulta de los datos puede verse afectado negativamente si se especifica
- Se necesita la extensión de archivo .csv o .tsv adecuada, tal como se indica a continuación:
- Para los archivos JSON, es necesaria la extensión de archivo .json. Los archivos JSON deben estar codificados para que cada línea sea un objeto JSON válido. Las líneas deben estar separadas por un carácter de nueva línea (
\n
). El formato de texto de las líneas JSON, también denominado JSON delimitado por línea nueva, es el único formato JSON soportado. Este formato almacena datos estructurados que se pueden procesar un registro a la vez.
Nota: Todos los demás formatos de archivo devuelven un error. Para obtener más información, consulte Mensaje de error al intentar utilizar un formato de archivo no soportado en Cloud Object Storage. - organización de los datos
- Evite utilizar caracteres alfanuméricos en los nombres de columna, ya que puede interferir con la compatibilidad de Hive . Cualquier carácter que no sea alfanumérico ni el guión bajo se codifica como _xNNNN, donde _xNNNN es el valor hexadecimal del carácter. Si desea ver correctamente los nombres de columna, habilite la opción
allownonalphanumeric
realizando estos pasos:- Acceda al pod principal en la instancia de Data Virtualizationc-db2u-dv-db2u-0).
- Ejecute el mandato siguiente para editar la configuración para incluir la opción
allownonalphanumeric
:db2uctl adm bigsql config --key bigsql.catalog.identifier.mappingrules --value allownonalphanumeric,allowleadingdigits,allowreservedwords
- Ejecute el mandato siguiente para reiniciar Big SQL:
su - db2inst1 bigsql stop ; bigsql start
- Si se accede a los datos de almacenamiento de objetos a través de una tabla virtualizada, los archivos que desea virtualizar deben estar dentro de una única vía de acceso de archivo y dentro de un único grupo, y el grupo debe incluir al menos un archivo que añada al carro. Todos los archivos de esta vía de acceso de archivo forman parte de la tabla virtualizada. Cuando se añaden más datos a la tabla (se crean nuevos archivos en la vía de acceso de archivo), los datos son visibles cuando se accede a la tabla virtualizada. Todos los archivos de la vía de acceso de archivo deben utilizar el mismo formato de archivo para que se virtualicen como una tabla.
- Si desea virtualizar los archivos en varias vías de acceso de archivo como una tabla, puede virtualizar el grupo que contiene todos los archivos. Por ejemplo, si tiene vías de acceso de archivo A/B/C/T1a, A/B/C/T1b, A/B/D/T1c y A/B/D/T1d, puede virtualizar la vía de acceso del archivo A/B/. Todos los archivos de esa vía de acceso y las vías de acceso anidadas formarán parte del objeto accesible.
- No cree dos objetos (tablas, esquemas o columnas) con el mismo nombre, incluso si utiliza identificadores delimitados y mayúsculas y minúsculas. Por ejemplo, no puede tener una tabla t1 y otra tabla denominada T1. Estos nombres se consideran nombres duplicados en el almacenamiento de objetos (Hive). Para obtener más información, consulte Identificadores.
- Db2 da soporte a un rango más amplio de identificadores delimitados válidos que el que admite Hive . Algunos nombres de identificador que se especifican al crear tablas virtualizadas sobre el almacén de objetos se pueden ajustar antes de que se puedan aceptar en el catálogo de Hive . La correlación se realiza automáticamente. Para obtener más información, consulte Identificadores.
- Cuando se añadan nuevos datos a la vía de acceso de archivo para una tabla virtualizada, considere la posibilidad de ejecutar el mandato siguiente para asegurarse de que la memoria caché de metadatos se actualiza para ver los nuevos datos.
CALL SYSHADOOP.HCAT_CACHE_SYNC(<schema>, <object>)
Para obtener más información, consulte el procedimiento almacenado HCAT_CACHE_SYNC.
- Cuando se añadan nuevas particiones a la vía de acceso de archivo para la tabla virtualizada, pulse Renovar particiones en el menú de desbordamiento de la página Datos virtualizados para identificar nuevas particiones.
También puede ejecutar el mandato siguiente en la interfaz SQL para identificar las nuevas particiones que se han añadido.
MSCK REPAIR TABLE <table-name>
Para obtener más información, consulte MSCK REPAIR TABLE.
- Evite utilizar caracteres alfanuméricos en los nombres de columna, ya que puede interferir con la compatibilidad de Hive . Cualquier carácter que no sea alfanumérico ni el guión bajo se codifica como _xNNNN, donde _xNNNN es el valor hexadecimal del carácter. Si desea ver correctamente los nombres de columna, habilite la opción
- Optimización del rendimiento de las consultas
- Utilice un formato de archivo compacto como ORC o Parquet para minimizar el tráfico de red, lo que mejora el rendimiento de las consultas.
- No utilice el tipo de datos STRING o TEXT. Utilice el tipo de datos VARCHAR (n), con n establecido en un valor que sea adecuado para los datos de columna. Utilice el mandato siguiente para modificar la tabla para definir una longitud adecuada para la columna.
ALTER TABLE <schema>.<table> ALTER COLUMN <col> SET DATA TYPE VARCHAR(<size>)
- Particione los datos utilizando el particionamiento de estilo Hive . Los datos particionados se agrupan por un atributo común. Data Virtualization puede utilizar particiones para reducir la cantidad de datos que deben procesar las consultas. La consulta del conjunto de datos completo podría no ser posible o incluso innecesaria. Puede utilizar predicados en las consultas que incluyen las columnas de particionamiento para mejorar el rendimiento.
Por ejemplo, una tabla school_records que se particiona en una columna de año, segrega los valores por año en vías de acceso de archivo separadas. Una condición
WHERE
comoYEAR=1993
,YEAR IN (1996,1995)
oYEAR BETWEEN 1992 AND 1996
sólo explora los datos de la vía de acceso de archivo adecuada para resolver la consulta. - Defina los tipos de columnas particionadas de forma precisa. Por omisión, se presupone que las columnas de caracteres particionados son del tipo STRING, lo que no se recomienda. Vuelva a definir las columnas particionadas en un tipo de datos adecuado.
- Recopilar estadísticas sobre los datos que se están consultando. Data Virtualization utiliza el comando ' ANALYZE ' para recopilar estadísticas sobre tablas virtualizadas a través del almacenamiento de objetos. Puede recopilar estadísticas en el cliente web o utilizando SQL. Para obtener más información, consulte Recopilación de estadísticas en Data Virtualization.
Limitaciones
- En Data Virtualization sólo se admite la codificación de caracteres UTF-8 para archivos de texto en formato CSV, TSV o JSON. Los formatos binarios Cloud Object Storage como ORC o PARQUET no se ven afectados porque codifican de forma transparente los tipos de caracteres.
- Data Virtualization no admite el tipo de datos TIME en una tabla virtualizada sobre almacenamiento de objetos.
- La vista previa de activos en el almacenamiento de objetos en la nube sólo muestra las primeras 200 columnas de la tabla.
- Antes de eliminar una conexión con Cloud Object Storage, debe eliminar todas las tablas virtualizadas en la conexión de almacenamiento de objetos. Si se elimina una conexión e intenta eliminar una tabla en esa conexión, verá un error. Consulte Mensaje de error de credencial al eliminar una tabla virtualizada en el almacenamiento de objetos.
- Si el grupo no se especifica en las propiedades de conexión, la conexión es global. En este caso, incluya el nombre de grupo en la vía de acceso de archivo. Puede especificar hasta una conexión global en una instancia de Data Virtualization.
Consulte también Restricciones
en la sentencia CREATE TABLE (HADOOP).