Melhorias de performance com aplicação
O conector do Spark realiza automaticamente a aplicação de predicados e consultas para otimizar a performance. Esse suporte significa que, se você estiver usando uma função compatível em sua consulta, o conector do Spark transformará a função em uma consulta SQL e executará a consulta no Amazon Redshift. Essa otimização resulta em menos dados sendo recuperados, para que o Apache Spark possa processar menos dados e ter melhor performance. Por padrão, a aplicação é ativada automaticamente. Para desativá-la, defina autopushdown
como false.
import sqlContext.implicits._val sample= sqlContext.read .format("io.github.spark_redshift_community.spark.redshift") .option("url",jdbcURL ) .option("tempdir", tempS3Dir) .option("dbtable", "event") .option("autopushdown", "false") .load()
As funções a seguir são compatíveis com a aplicação. Se você estiver usando uma função que não está nessa lista, o conector do Spark executará a função no Spark no lugar do Amazon Redshift, resultando em uma performance não otimizada. Para obter uma lista completa das funções no Spark, consulte Funções integradas
-
Funções de agregação
-
avg
-
contagem
-
max
-
min
-
soma
-
stddev_samp
-
stddev_pop
-
var_samp
-
var_pop
-
-
Operadores booleanos
-
em
-
isnull
-
isnotnull
-
contém
-
endswith
-
startswith
-
-
Operadores lógicos
-
e
-
ou
-
not (ou !)
-
-
Funções matemáticas
-
+
-
-
-
*
-
/
-
- (unário)
-
abs
-
acos
-
asin
-
atan
-
ceil
-
cos
-
exp
-
floor
-
greatest
-
least
-
log10
-
pi
-
pow
-
round
-
sin
-
sqrt
-
tan
-
-
Funções diversas
-
cast
-
coalesce
-
decimal
-
se
-
em
-
-
Operadores relacionais
-
!=
-
=
-
>
-
>=
-
<
-
<=
-
-
Funções de string
-
ascii
-
lpad
-
rpad
-
translate
-
upper
-
lower
-
length
-
trim
-
ltrim
-
rtrim
-
like
-
substring
-
concat
-
-
Funções de data e hora
-
add_months
-
date
-
date_add
-
date_sub
-
date_trunc
-
timestamp
-
trunc
-
-
Operadores matemáticos
-
CheckOverflow
-
PromotePrecision
-
-
Operações relacionais
-
Aliases (por exemplo, AS)
-
CaseWhen
-
Distinto
-
InSet
-
Junções e junções cruzadas
-
Limites
-
Unions, union all
-
ScalarSubquery
-
Sorts (crescente e decrescente)
-
UnscaledValue
-