Guia de tradução de SQL do IBM Netezza
O armazenamento de dados do IBM Netezza foi concebido para funcionar com a sintaxe SQL específica do Netezza. O Netezza SQL baseia-se no Postgres 7.2. Os scripts SQL escritos para o Netezza não podem ser usados num armazém de dados do BigQuery sem alterações, porque os dialetos SQL variam.
Este documento detalha as semelhanças e as diferenças na sintaxe SQL entre o Netezza e o BigQuery nas seguintes áreas:
- Tipos de dados
- Elementos da linguagem SQL
- Sintaxe de consulta
- Linguagem de manipulação de dados (DML)
- Linguagem de definição de dados (LDD)
- Procedimentos armazenados
- Funções
Também pode usar a tradução de SQL em lote para migrar os seus scripts SQL em massa ou a tradução de SQL interativa para traduzir consultas ad hoc. O IBM Netezza SQL/NZPLSQL é suportado por ambas as ferramentas em pré-visualização.
Tipos de dados
Netezza | BigQuery | Notes |
---|---|---|
INTEGER/INT/INT4 |
INT64 |
|
SMALLINT/INT2 |
INT64 |
|
BYTEINT/INT1 |
INT64 |
|
BIGINT/INT8 |
INT64 |
|
DECIMAL
|
NUMERIC
|
O tipo de dados DECIMAL no Netezza é um alias para o tipo de dados NUMERIC . |
NUMERIC
|
NUMERIC
INT64 |
|
NUMERIC(p,s)
|
NUMERIC
|
O tipo NUMERIC no BigQuery não aplica limites personalizados de dígitos ou escala (restrições) como o Netezza. O BigQuery tem 9 dígitos fixos após a vírgula, enquanto o Netezza permite uma configuração personalizada. No Netezza, a precisão p
pode variar entre 1 e 38,
e a escala s entre 0 e
a precisão. |
FLOAT(p) |
FLOAT64 |
|
REAL/FLOAT(6) |
FLOAT64 |
|
DOUBLE PRECISION/FLOAT(14) |
FLOAT64 |
|
CHAR/CHARACTER
|
STRING
|
O tipo STRING no BigQuery tem um comprimento variável e não requer a definição manual de um comprimento máximo de carateres, ao contrário dos tipos CHARACTER e VARCHAR do Netezza. O valor predefinido de n em CHAR(n) é 1. O tamanho máximo da string de carateres é 64 000. |
VARCHAR
|
STRING
|
O tipo STRING no BigQuery tem um comprimento variável e não requer a definição manual de um comprimento máximo de carateres, ao contrário dos tipos CHARACTER e VARCHAR do Netezza. O tamanho máximo da string de carateres é 64 000. |
NCHAR
|
STRING
|
O tipo STRING no BigQuery é armazenado como Unicode com codificação UTF-8 de comprimento variável. O comprimento máximo é de 16 000 carateres. |
NVARCHAR
|
STRING
|
O tipo STRING no
BigQuery é armazenado como
Unicode codificado em UTF-8 de
comprimento variável.
O comprimento máximo é de 16 000 carateres. |
VARBINARY |
BYTES |
|
ST_GEOMETRY |
GEOGRAPHY |
|
BOOLEAN/BOOL
|
BOOL
|
O tipo BOOL no BigQuery só pode aceitar TRUE/FALSE , ao contrário do tipo BOOL no Netezza, que pode aceitar uma variedade de valores, como 0/1 , yes/no , true/false, e on/off . |
DATE |
DATE |
|
TIME |
TIME |
|
TIMETZ/TIME WITH TIME ZONE
|
TIME
|
O Netezza armazena o tipo de dados TIME em UTC e permite-lhe transmitir uma diferença para UTC através da sintaxe WITH TIME
ZONE . O tipo de dados TIME no BigQuery representa uma hora independente de qualquer data ou fuso horário. |
TIMESTAMP
|
DATETIME
|
O tipo TIMESTAMP
Netezza não inclui um fuso horário, tal como o tipo DATETIME
BigQuery. |
ARRAY
|
Não existe nenhum tipo de dados de matriz no Netezza. Em alternativa, o tipo de matriz é armazenado num campo varchar. |
Formatação do tipo de data/hora
Para mais informações sobre a formatação do tipo de data que o SQL do Netezza usa, consulte a documentação Padrões de data/hora do Netezza. Para mais informações sobre as funções de data/hora, consulte a documentação sobre as funções de data/hora do Netezza.
Quando converte elementos de formatação do tipo de data do Netezza para o GoogleSQL, tem de prestar especial atenção às diferenças de fuso horário entre TIMESTAMP
e DATETIME
, conforme resumido na tabela seguinte:
Netezza | BigQuery |
---|---|
CURRENT_TIMESTAMP CURRENT_TIME As informações TIME no Netezza podem ter informações de fuso horário diferentes, que são definidas através da sintaxe WITH TIME ZONE .
|
Se possível, use a função CURRENT_TIMESTAMP , que está formatada corretamente. No entanto, o formato de saída nem sempre mostra o fuso horário UTC (internamente, o BigQuery não tem um fuso horário).
O objeto DATETIME na ferramenta de linhas de comando bq e na consolaGoogle Cloud é formatado com um separador T de acordo com a RFC 3339. No entanto, no
Python e no Java
JDBC, é usado um espaço
como separador.
Use a função
FORMAT_DATETIME explícita
para definir o formato
de data corretamente.
Caso contrário, é feita uma conversão explícita para uma string, por exemplo:CAST(CURRENT_DATETIME() AS STRING) Isto também devolve um separador de espaço. |
CURRENT_DATE |
CURRENT_DATE |
CURRENT_DATE-3
|
O BigQuery não suporta operações de dados aritméticas.
Em alternativa, use a função
DATE_ADD . |
SELECT
declaração
Geralmente, a declaração SELECT
do Netezza é compatível com o BigQuery. A tabela seguinte contém uma lista de exceções:
Netezza | BigQuery |
---|---|
Uma declaração SELECT
sem cláusula FROM |
Suporta casos especiais, como os seguintes:
|
SELECT (subquery) AS flag, CASE WHEN flag = 1 THEN ... |
No BigQuery, as colunas não podem fazer referência
ao resultado de outras colunas
definidas na mesma consulta. Tem de duplicar a lógica ou mover a lógica para uma consulta aninhada.
Opção 1 SELECT (subquery) AS flag, CASE WHEN (subquery) = 1 THEN ... Opção 2 SELECT q.*, CASE WHEN flag = 1 THEN ... FROM ( SELECT (subquery) AS flag, ... ) AS q |
Operadores de comparação
Netezza | BigQuery | Descrição |
---|---|---|
exp = exp2 |
exp = exp2 |
Igual |
exp <= exp2 |
exp <= exp2 |
Inferior ou igual a |
exp < exp2 |
exp < exp2 |
Inferior a |
exp <> exp2 exp != exp2 |
exp <> exp2 exp != exp2 |
Não igual |
exp >= exp2
|
exp >= exp2
|
Maior ou igual a |
exp > exp2 |
exp > exp2 |
Superior a |
Funções SQL integradas
Netezza | BigQuery | Descrição |
---|---|---|
CURRENT_DATE
|
CURRENT_DATE
|
Obtenha a data atual (ano, mês e dia). |
CURRENT_TIME
|
CURRENT_TIME
|
Saiba qual é a hora atual com fração. |
CURRENT_TIMESTAMP
|
CURRENT_TIMESTAMP
|
Obter a data e a hora do sistema atuais, até ao segundo completo mais próximo. |
NOW
|
CURRENT_TIMESTAMP
|
Obtenha a data e a hora atuais do sistema, até ao segundo completo mais próximo. |
COALESCE(exp, 0)
|
COALESCE(exp, 0)
|
Substitua NULL por zero. |
NVL(exp, 0)
|
IFNULL(exp, 0)
|
Substitua NULL por zero. |
EXTRACT(DOY FROM
timestamp_expression)
|
EXTRACT(DAYOFYEAR FROM
timestamp_expression)
|
Devolve o número de dias desde o início do ano. |
ADD_MONTHS(date_expr,
num_expr) |
DATE_ADD(date,
INTERVAL k MONTH) |
Adicionar meses a uma data. |
DURATION_ADD(date,
k) |
DATE_ADD(date,
INTERVAL k DAY) |
Realizar adições em datas. |
DURATION_SUBTRACT(date,
k) |
DATE_SUB(date,
INTERVAL k DAY) |
Subtrair datas. |
str1 || str2 |
CONCAT(str1,
str2) |
Concatenar strings. |
Funções
Esta secção compara as funções do Netezza e do BigQuery.
Funções de agregação
Funções analíticas
Funções de data e hora
Funções de string
Funções matemáticas
Netezza | BigQuery |
---|---|
ABS |
ABS |
ACOS |
ACOS |
ACOSH |
|
ASIN |
ASIN |
ASINH |
|
ATAN |
ATAN |
ATAN2 |
ATAN2 |
ATANH |
|
CEIL DCEIL |
CEIL
|
CEILING |
|
COS |
COS |
COSH |
|
COT |
COT |
DEGREES |
|
DIV |
|
EXP |
EXP |
FLOOR DFLOOR |
FLOOR
|
GREATEST |
GREATEST |
IEEE_DIVIDE |
|
IS_INF |
|
IS_NAN |
|
LEAST |
LEAST |
LN |
LN |
LOG |
LOG |
LOG10 |
|
MOD |
MOD |
NULLIF (expr, 0) |
|
PI |
ACOS (-1) |
POW FPOW |
POWER POW |
RADIANS |
|
RANDOM |
RAND |
ROUND |
ROUND |
SAFE_DIVIDE |
|
SETSEED |
|
SIGN |
SIGN |
SIN |
SIN |
SINH |
|
SQRT NUMERIC_SQRT |
SQRT
|
TAN |
TAN |
TANH |
|
TRUNC |
TRUNC |
IFNULL (expr, 0) |
Sintaxe DML
Esta secção compara a sintaxe DML do Netezza e do BigQuery.
INSERT
declaração
Netezza | BigQuery |
---|---|
INSERT INTO table VALUES (...); |
INSERT INTO table (...) VALUES (...); O Netezza oferece uma palavra-chave DEFAULT e outras restrições
para colunas. No BigQuery, a omissão de nomes de colunas na declaração INSERT só é válida se todas as colunas forem indicadas. |
INSERT INTO table (...) VALUES (...); INSERT INTO table (...) VALUES (...); |
INSERT INTO table VALUES (), (); O BigQuery impõe quotas de DML, que restringem o número de declarações de DML que pode executar diariamente. Para tirar o máximo partido da sua quota, considere as seguintes abordagens:
|
Os scripts DML no BigQuery têm uma semântica de consistência ligeiramente diferente das declarações equivalentes no Netezza. Tenha também em atenção que o BigQuery não oferece restrições, exceto NOT
NULL
.
Para uma vista geral do isolamento de instantâneos e do processamento de sessões e transações, consulte o artigo Garantias de consistência e isolamento de transações.
UPDATE
declaração
Em Netezza, a cláusula WHERE
é opcional, mas no BigQuery é necessária.
Netezza | BigQuery |
---|---|
UPDATE tbl SET tbl.col1=val1; |
Não é suportado sem a cláusula WHERE .
Use uma cláusula WHERE true para atualizar todas as linhas. |
UPDATE A SET y = B.y, z = B.z + 1 FROM B WHERE A.x = B.x AND A.y IS NULL; |
UPDATE A SET y = B.y, z = B.z + 1 FROM B WHERE A.x = B.x AND A.y IS NULL; |
UPDATE A alias SET x = x + 1 WHERE f(x) IN (0, 1) |
UPDATE A SET x = x + 1 WHERE f(x) IN (0, 1); |
UPDATE A SET z = B.z FROM B WHERE A.x = B.x AND A.y = B.y |
UPDATE A SET z = B.z FROM B WHERE A.x = B.x AND A.y = B.y; |
Para ver exemplos, consulte os UPDATE
exemplos.
Devido às quotas de DML, recomendamos que use declarações MERGE
maiores em vez de várias declarações UPDATE
e INSERT
únicas. Os scripts DML no BigQuery têm uma semântica de consistência ligeiramente diferente das declarações equivalentes no Netezza.
Para uma vista geral do isolamento de instantâneos e do processamento de sessões e transações, consulte o artigo Garantias de consistência e isolamento de transações.
DELETE
e TRUNCATE
extratos
As declarações DELETE
e TRUNCATE
são formas de remover linhas de uma tabela sem afetar o esquema ou os índices da tabela. A declaração TRUNCATE
tem o mesmo efeito que a declaração DELETE
, mas é muito mais rápida do que a declaração DELETE
para tabelas grandes. A declaração TRUNCATE
é suportada no Netezza, mas não no BigQuery. No entanto, pode usar declarações DELETE
no Netezza e no BigQuery.
No BigQuery, a declaração DELETE
tem de ter uma cláusula WHERE
.
No Netezza, a cláusula WHERE
é opcional. Se a cláusula WHERE
não for especificada, todas as linhas na tabela Netezza são eliminadas.
Netezza | BigQuery | Descrição |
---|---|---|
BEGIN; LOCK TABLE A IN EXCLUSIVE MODE; DELETE FROM A; INSERT INTO A SELECT * FROM B; COMMIT; |
A substituição do conteúdo de uma tabela pelo resultado da consulta é
o equivalente a uma transação. Pode fazê-lo com uma operação de query
ou de cópia (cp ). bq query \ bq cp \ |
Substituir o conteúdo de uma tabela pelos resultados de uma consulta. |
DELETE FROM database.table |
DELETE FROM table WHERE TRUE; |
No Netezza, quando é executada uma declaração de eliminação, as linhas não são eliminadas fisicamente, mas apenas marcadas para eliminação. A execução dos comandos
GROOM TABLE ou nzreclaim remove posteriormente
as linhas marcadas para eliminação e reclama o espaço em disco correspondente.
|
GROOM
TABLE |
O Netezza usa o comando GROOM TABLE para
reclamar espaço no disco removendo linhas marcadas para eliminação. |
MERGE
declaração
Uma declaração MERGE
tem de corresponder, no máximo, a uma linha de origem para cada linha de destino. Os scripts DML no BigQuery têm uma semântica de consistência ligeiramente diferente das declarações equivalentes no Netezza. Para uma vista geral do isolamento de instantâneo e do processamento de sessões e transações, consulte Garantias de consistência e isolamento de transações.
Para ver exemplos, consulte os
exemplos do BigQuery MERGE
e os
exemplos do NetezzaMERGE
.
Sintaxe DDL
Esta secção compara a sintaxe DDL do Netezza e do BigQuery.
CREATE TABLE
declaração
Netezza | BigQuery | Descrição |
---|---|---|
TEMP TEMPORARY
|
Com o suporte de DDL do BigQuery, pode criar uma tabela a partir dos resultados de uma consulta e especificar a respetiva expiração no momento da criação. Por exemplo, para
três dias:CREATE TABLE
'my-project.public_dump.vtemp' OPTIONS (expiration_timestamp=TIMESTAMP_ADD(CURRENT_TIMESTAMP(), INTERVAL 3 DAY)) |
Criar tabelas temporárias para uma sessão. |
ZONE MAPS
|
Não suportado. | Pesquisa rápida da condição de WHERE . |
DISTRIBUTE ON
|
PARTITION BY
|
Partição.
Esta não é uma tradução direta. DISTRIBUTE ON partilha dados
entre nós, normalmente com uma chave única para uma distribuição uniforme,
enquanto PARTITION BY reduz os dados em segmentos. |
ORGANIZE ON
|
CLUSTER BY
|
O Netezza e o BigQuery suportam até quatro chaves para a agrupamento. As tabelas base agrupadas (CBT) do Netezza dão igual precedência a cada uma das colunas de agrupamento. O BigQuery dá precedência à primeira coluna na qual a tabela está agrupada, seguida da segunda coluna e assim sucessivamente. |
ROW SECURITY |
Authorized View |
Segurança ao nível da linha. |
CONSTRAINT |
Não suportado | Verifique as restrições. |
DROP
declaração
Netezza | BigQuery | Descrição |
---|---|---|
DROP TABLE |
DROP TABLE |
|
DROP DATABASE |
DROP DATABASE |
|
DROP VIEW |
DROP VIEW |
Opções e atributos de colunas
Netezza | BigQuery | Descrição |
---|---|---|
NULL NOT NULL
|
NULLABLE REQUIRED
|
Especifique se a coluna pode conter valores NULL . |
REFERENCES
|
Não suportado | Especifique a restrição da coluna. |
UNIQUE
|
Não suportado | Cada valor na coluna tem de ser único. |
DEFAULT
|
Não suportado | Valor predefinido para todos os valores na coluna. |
Tabelas temporárias
O Netezza suporta
TEMPORARY
tabelas
que existem durante a duração de uma sessão.
Para criar uma tabela temporária no BigQuery, faça o seguinte:
- Crie um conjunto de dados com um tempo de vida curto (por exemplo, 12 horas).
Crie a tabela temporária no conjunto de dados com o prefixo do nome da tabela
temp
. Por exemplo, para criar uma tabela que expire dentro de uma hora, faça o seguinte:CREATE TABLE temp.name (col1, col2, ...) OPTIONS(expiration_timestamp = TIMESTAMP_ADD(CURRENT_TIMESTAMP(), INTERVAL 1 HOUR));
Comece a ler e escrever a partir da tabela temporária.
Também pode remover duplicados de forma independente para encontrar erros nos sistemas a jusante.
Tenha em atenção que o BigQuery não suporta colunas DEFAULT
e IDENTITY
(sequências).
Declarações SQL processuais
O Netezza usa a linguagem de programação NZPLSQL para trabalhar com procedimentos armazenados. O NZPLSQL baseia-se na linguagem PL/pgSQL do Postgres. Esta seção descreve como converter declarações SQL processuais usadas em procedimentos armazenados, funções e acionadores do Netezza para o BigQuery.
CREATE PROCEDURE
declaração
O Netezza e o BigQuery suportam a criação de procedimentos armazenados através da declaração CREATE PROCEDURE
. Para mais informações, consulte o artigo
Trabalhe com procedimentos armazenados de SQL.
Declaração e atribuição de variáveis
Netezza | BigQuery | Descrição |
---|---|---|
DECLARE var
datatype(len) [DEFAULT
value]; |
DECLARE
|
Declare a variável. |
SET var = value; |
SET |
Atribua um valor à variável. |
Controladores de exceções
O Netezza suporta controladores de exceções que podem ser acionados para determinadas condições de erro. O BigQuery não suporta controladores de condições.
Netezza | BigQuery | Descrição |
---|---|---|
EXCEPTION
|
Não suportado | Declare o controlador de exceções SQL para erros gerais. |
Declarações SQL dinâmicas
O Netezza suporta consultas SQL dinâmicas em procedimentos armazenados. O BigQuery não suporta declarações SQL dinâmicas.
Netezza | BigQuery | Descrição |
---|---|---|
EXECUTE IMMEDIATE sql_str; |
EXECUTE IMMEDIATE sql_str; |
Executar SQL dinâmico. |
Declarações de fluxo de controlo
Netezza | BigQuery | Descrição |
---|---|---|
IF THEN ELSE STATEMENT IF conditionTHEN ... ELSE ... END IF; |
IF conditionTHEN ... ELSE ... END IF;
|
Executar condicionalmente. |
Iterative ControlFOR var AS SELECT ... DO stmts END FOR; FOR var AS cur CURSOR FOR SELECT ... DO stmts END FOR; |
Não suportado | Iterar sobre uma coleção de linhas. |
Controlo iterativoLOOP stmts END LOOP; |
LOOP sql_statement_list END LOOP; |
Bloco de declarações de ciclo. |
EXIT WHEN |
BREAK |
Saia de um procedimento. |
WHILE *condition* LOOP
|
WHILE conditionDO ... END WHILE |
Executar um ciclo de declarações até que uma condição while falhe. |
Outras declarações e elementos de linguagem processual
Netezza | BigQuery | Descrição |
---|---|---|
CALL proc(param,...) |
Não suportado | Executar um procedimento. |
EXEC proc(param,...) |
Não suportado | Executar um procedimento. |
EXECUTE proc(param,...) |
Não suportado | Executar um procedimento. |
Declarações SQL multilinhas e com várias declarações
O Netezza e o BigQuery suportam transações (sessões) e, por isso, suportam declarações separadas por pontos e vírgulas que são executadas em conjunto de forma consistente. Para mais informações, consulte o artigo Transações com vários extratos.
Outras declarações SQL
Netezza | BigQuery | Descrição |
---|---|---|
GENERATE
STATISTICS
|
Gere estatísticas para todas as tabelas na base de dados atual. | |
GENERATE
STATISTICS ON
table_name |
Gerar estatísticas para uma tabela específica. | |
GENERATE
STATISTICS ON
table_name(col1,col4)
|
Use funções estatísticas, como MIN, MAX, AVG, , etc., use a IU ou use a API Cloud Data Loss Prevention. |
Gerar estatísticas para colunas específicas numa tabela. |
GENERATE
STATISTICS ON
table_name |
APPROX_COUNT_DISTINCT(col) |
Mostrar o número de valores únicos para colunas. |
INSERT INTO
table_name |
INSERT INTO
table_name |
Inserir uma linha. |
LOCK TABLE
table_name FOR
EXCLUSIVE; |
Não suportado | Bloquear linha. |
SET SESSION
CHARACTERISTICS AS
TRANSACTION ISOLATION
LEVEL …
|
O BigQuery usa sempre o isolamento de instantâneos. Para ver os detalhes, consulte as Garantias de consistência e isolamento de transações. | Defina o nível de isolamento da transação. |
BEGIN TRANSACTION END TRANSACTION COMMIT |
O BigQuery usa sempre o isolamento de instantâneos. Para ver os detalhes, consulte as Garantias de consistência e isolamento de transações. | Defina o limite da transação para pedidos com várias declarações. |
EXPLAIN …
|
Não suportado. Funcionalidades semelhantes no plano de consulta e na cronologia | Mostrar plano de consulta para uma declaração SELECT .
|
Visualizações do utilizador
metadados Metadados de visualizações do sistema |
SELECT * EXCEPT(is_typed) FROM mydataset.INFORMATION_SCHEMA.TABLES; BigQuery Esquema de informações |
Consultar objetos na base de dados |
Garantias de consistência e isolamento de transações
O Netezza e o BigQuery são atómicos, ou seja, estão em conformidade com a norma ACID ao nível de cada mutação em várias linhas. Por exemplo, uma operação MERGE
é completamente atómica, mesmo com vários valores inseridos.
Transações
O Netezza aceita sintaticamente todos os quatro modos de isolamento de transações ANSI SQL.
No entanto, independentemente do modo especificado, é usado apenas o modo SERIALIZABLE
, que oferece o nível de consistência mais elevado possível. Este modo também evita leituras sujas, não repetíveis e fantasma entre transações simultâneas.
O Netezza não usa a sincronização convencional para aplicar a consistência. Em alternativa, usa a
verificação de dependência de serialização,
uma forma de controlo de simultaneidade otimista para reverter automaticamente a transação mais recente quando duas transações tentam modificar os mesmos dados.
O BigQuery também suporta transações. O BigQuery ajuda a garantir o controlo de simultaneidade otimista (a primeira confirmação tem prioridade) com o isolamento de instantâneos, em que uma consulta lê os últimos dados confirmados antes de começar. Esta abordagem garante o mesmo nível de consistência por linha, por mutação e entre linhas na mesma declaração DML, mas evita bloqueios. No caso de várias atualizações de DML na mesma tabela, o BigQuery muda para o controlo de concorrência pessimista. Os trabalhos de carregamento podem ser executados de forma totalmente independente e anexados a tabelas.
Reversão
O Netezza suporta a declaração ROLLBACK
para anular a transação atual e reverter todas as alterações feitas na transação.
No BigQuery, pode usar a declaração ROLLBACK TRANSACTION
.
Limites da base de dados
Limite | Netezza | BigQuery |
---|---|---|
Tabelas por base de dados | 32 000 | Sem restrições |
Colunas por tabela | 1600 | 10000 |
Tamanho máximo da linha | 64 KB | 100 MB |
Comprimento do nome da coluna e da tabela | 128 bytes | 16 384 carateres Unicode |
Linhas por tabela | Ilimitado | Ilimitado |
Comprimento máximo do pedido SQL | 1 MB (comprimento máximo da consulta SQL padrão não resolvido). 12 MB (comprimento máximo da consulta SQL antiga e padrão resolvido). Streaming: 10 MB (limite de tamanho do pedido HTTP) 10 000 (máximo de linhas por pedido) |
|
Tamanho máximo do pedido e da resposta | 10 MB (pedido) e 10 GB (resposta) ou praticamente ilimitado se usar a paginação ou a API Cloud Storage. | |
Número máximo de sessões em simultâneo | 63 transações de leitura/escrita simultâneas. 2000 ligações simultâneas ao servidor. | 100 consultas simultâneas (podem ser aumentadas com a reserva de slots), 300 pedidos de API simultâneos por utilizador. |
O que se segue?
- Receba instruções passo a passo para migrar do IBM Netezza para o BigQuery.