Kotlin for Apache Spark:

Зачем миру ещё один API

Паша Финкельштейн, Виталий Худобахшов
JetBrains
Олег Докука
RSocket

На чём пишут под Spark?

@asm0di0   @khudobakhshov

Python

@asm0di0   @khudobakhshov

Java

@asm0di0   @khudobakhshov

Scala

@asm0di0   @khudobakhshov

А ещё

  • R (два API)
  • C#
  • Haskell
  • JS (with GraalVM)
  • YouNameIt
@asm0di0   @khudobakhshov

Кто использует

@asm0di0   @khudobakhshov

Кто использует

  • Дата иженеры
  • Дата аналитики
  • Дата саентисты

Для всех кроме дата инженеров Python — популярный выбор

@asm0di0   @khudobakhshov

Почему Python?

@asm0di0   @khudobakhshov

А почему бы и нет?

@asm0di0   @khudobakhshov

А что там насчёт R?

@asm0di0   @khudobakhshov

А если мы уже пишем на Java?

@asm0di0   @khudobakhshov

А что не так со Scala?

@asm0di0   @khudobakhshov

Если всё устраивает — всё так!

@asm0di0   @khudobakhshov

w:1120

Просто sum не работает

@asm0di0   @khudobakhshov

w:1120

Есть в стандатной библиотеке

@asm0di0   @khudobakhshov

Type-safe builders

h:400

@asm0di0   @khudobakhshov

w:1120

@asm0di0   @khudobakhshov

w:1120

@asm0di0   @khudobakhshov

w:1120

@asm0di0   @khudobakhshov

h:600

@asm0di0   @khudobakhshov

Что было сложно

@asm0di0   @khudobakhshov

Что не работает

  • Поддержка массивов
  • UDF не всегда
  • Spark 2 (уже скоро)
@asm0di0   @khudobakhshov

ki-shell

Kotlin/kotlin-interactive-shell

@asm0di0   @khudobakhshov

Итоги

  • Kotlin подходит для дата инжинеров!
  • Может работать как первый язык
  • Его поддерживает наша любимая IDE
@asm0di0   @khudobakhshov

Спасибо!

JetBrains/kotlin-spark-api

@asm0di0   @khudobakhshov