2.15 - Referencia de la API de la biblioteca de servidores externos para el conector del iniciador de Spark SQL - Teradata QueryGrid

Teradata® QueryGrid™ Guía de instalación y uso

Product
Teradata QueryGrid
Release Number
2.15
Release Date
Marzo de 2021
Content Type
Administración
Configuración
Guía del usuario
Instalación
Publication ID
B035-5991-031K-ESN
Language
Español (España)

El conector de iniciador de Spark SQL proporciona una biblioteca de servidores externos basada en Java fácil de usar. La biblioteca define una clase de servidor externo "wrapper". La clase contiene un constructor de servidor externo para crear uno o más objetos de servidor externo únicos. Cada objeto de servidor externo contiene un catálogo de tablas permanentes no nativas de las que se hace una copia de seguridad en un archivo de caché en HDFS después de que finalice una sesión. El conector de iniciador de Spark SQL también contiene métodos estáticos y de instancia para interactuar con las tablas no nativas temporales y permanentes de cada objeto de servidor externo y para recuperar metadatos de tablas remotas.

El motor de Spark SQL no tiene objetos similares a servidores externos (Teradata) o catálogos (Presto). Por lo tanto, el conector de iniciador de Spark SQL funciona a nivel de tabla de forma predeterminada.

Las funciones principales proporcionadas por la biblioteca de servidores externos son la detección y la administración de metadatos. No cambia la sintaxis de SQL para importar, exportar y explicar consultas. ForeignServer.sql() y ForeignServer.getDataSetFromSql() se utilizan para ejecutar instrucciones SELECT, INSERT y EXPLAIN. Todos los parámetros de sintaxis son necesarios cuando se utiliza la biblioteca de servidores externos; los parámetros no válidos o nulos producen un error.
Antes de poder utilizar cualquier parte de la biblioteca de servidores externos, debe ejecutar la sentencia import tdqg.ForeignServer.
Nombre Parámetro Descripción
Constructores
ForeignServer Enlace de cadena

Versión de cadena

Nombre de cadena

Construir un nuevo objeto de servidor externo mediante un enlace de QueryGrid.
ForeignServer Nombre de cadena Restaurar un servidor externo existente.
Métodos estáticos
showForeignServers Enumerar todos los nombres de servidores externos.
dropForeignServer Nombre de cadena Quitar un servidor externo especificado, así como todas sus tablas no nativas.
sql SQL de cadena Ejecutar una sentencia SQL (SELECT/INSERT/EXPLAIN solamente) y mostrar todas las filas en el resultado.
getDatasetFromSql SQL de cadena Ejecutar una sentencia SQL (SELECT/INSERT/EXPLAIN solamente) y devolver el objeto Dataset<Row>.
Métodos de instancia
showSchemas Enumerar todos los esquemas de destino.
showTables Esquema de cadenas Enumerar todas las tablas de un esquema de destino.
showColumns Tabla de cadenas Mostrar el esquema de una tabla de destino especificada por un nombre completo (por ejemplo, esquema.tabla o catálogo.esquema.tabla).
show Enumerar cada tabla no nativa (temporal o permanente) en este servidor externo y qué tabla de destino representa.
show Nombre de cadena Mostrar la sentencia CREATE TABLE de una tabla no nativa en este servidor externo.
Esto solo funciona para tablas permanentes no nativas, y la base de datos debe ser parte del nombre.
create Tabla de cadenas

Nombre de cadena

Crear una tabla no nativa que represente una tabla de destino (nombre completo) en este servidor externo.
Para crear una tabla no nativa permanente, la base de datos debe ser parte del nombre.
drop Nombre de cadena Quitar una tabla no nativa de este servidor externo.
Para tablas permanentes no nativas, la base de datos debe ser parte del nombre.
describe Nombre de cadena Mostrar los detalles de una tabla no nativa en este servidor externo.
Para tablas permanentes no nativas, la base de datos debe ser parte del nombre.
setSessionOverride Valores de cadena Definir las propiedades del conector que se reemplazarán para la sesión. Las propiedades no distinguen entre mayúsculas y minúsculas, y se omiten las que no son reemplazables.

Ejemplo: setSessionOverride("linkbuffersize=100000, numMappers=4")