
Ilia
26.12.2017
14:22:11
Работает, если явно передавать из питона в скала объект spark._jsparkSession и использовать его в скала коде вместо builder.getOrCreate()
object DataFrameBuilder {
private var _spark : SparkSession = _
def attachSpark(spark: SparkSession): Unit = {
_spark = spark
}
def spark: SparkSession = {
if (_spark == null) {
_spark = SparkSession.builder.getOrCreate()
}
_spark
}
}
Норм?
Наверное условие if (_spark == null) должно правильную ошибку кидать но пока так сойдёт

sherzod
26.12.2017
15:14:25
крутое решение

Google

sherzod
26.12.2017
15:16:33
Имею в виду передачу из питона в скалу.

Sergey
26.12.2017
15:34:53

Ilia
26.12.2017
15:42:06
В pyspark гораздо больше магии чем хотелось бы... :)
крутое решение
Серьёзно? По-моему наоборот получение сессии должно быть неявно, у них же один jvm в конце концов


Sergey
26.12.2017
15:45:05
Часть наработок выложу в виде статьи на github pages или ещё куда, если, конечно, получится что-то работающее. Пока вот бьюсь над тем что вернувшийся в питон датафрейм - это просто java object, в котором каждый row - такой же java object, и что с этим делать дальше непонятно.
Спасибо! Очень интересуют именно цифры, и что удалось выиграть, особенно с учетом того, что товарищи из databricks декларируют, что при использовании dataset/dataframe api - scala,java,python,etc. - все одно


Ilia
26.12.2017
15:47:48
Спасибо! Очень интересуют именно цифры, и что удалось выиграть, особенно с учетом того, что товарищи из databricks декларируют, что при использовании dataset/dataframe api - scala,java,python,etc. - все одно
У меня немного особый случай, я не просто из файла читаю стандартным read а тяну файлы из S3, после чего их парсю и т.д. Делал замеры - просто питон успешно парсит данные меньше чем за минуту, с сериализацией через rdd занимает уже около 3 минут. Идея в том чтобы сразу получать датафрейм на стороне jvm, и потом как-то прокидывать его обратно в pyspark.

sherzod
26.12.2017
15:47:55

Grigory
26.12.2017
15:56:56
так же как и не декларировали депрекейшн рдд апи

Sergey
26.12.2017
22:11:49
не дкларируют этого
но продают - https://databricks.com/blog/2015/02/17/introducing-dataframes-in-spark-for-large-scale-data-science.html

Google

Alex
28.12.2017
09:48:11

Grigory
28.12.2017
09:51:19

Alex
28.12.2017
09:52:21
что значит также?)
Принцип, по которому он распределяется на разные узлы. Почему он быстрее?

Grigory
28.12.2017
09:52:37
ДФ быстрее?
дф быстрее только в том что планы оптимизирует (примитивно достаточно) и то что не надо 100% данных десереализовывать

Alex
28.12.2017
09:53:40

Grigory
28.12.2017
09:54:01
в отрыве от контекста это аюсолютно бесполезная маркетинговая картинка)

Vasiliy
28.12.2017
09:54:23
а откуда это

Alex
28.12.2017
09:54:26
Так в чем его преимущество?

Grigory
28.12.2017
09:54:31
47 дегриз какойнить
или датабрикс

Alex
28.12.2017
09:54:39
а откуда это
https://databricks.com/blog/2015/02/17/introducing-dataframes-in-spark-for-large-scale-data-science.html

Grigory
28.12.2017
09:54:45
ну вон датабрикс
чего преимущество?
дата сетов?

Alex
28.12.2017
09:54:59
dataframe

Grigory
28.12.2017
09:55:09
датасетов короче да переформулирую вопрос твой
ну в том что это праивльный путь развития технологий, надо оптимизировать целиком джобу и делать это на стороне апи а не на стороне кода

Alex
28.12.2017
09:56:07

Grigory
28.12.2017
09:56:09
нет

Google

Grigory
28.12.2017
09:56:20
дата фрейм это датасет [роу]
нетепизированый датасет
где типы потерты намеренно для (не знаю чего возможно питона и всяких мл кейсов, но аудитория точно есть)
ну и конечно же если проводится аналитика над данными и не надо 100% прочитанного возвращать - опять же датасеты должны лучше работать с этим

Alex
28.12.2017
10:02:20

Grigory
28.12.2017
10:03:03
А что есть признак? Тип комплексный будет вместо строки нетипизированой
ну типа нмерный тапл, кейс класс, что угодно
кортеж какойнить
для более интересных кейсов (честно говоря не сориентирую по этим 'более интересным' кейсам) есть фреймлесс: https://github.com/typelevel/frameless

Alex
28.12.2017
10:05:14
ну и понятно там uint8, float32 и т.д.
для численных признаков

Grigory
28.12.2017
10:08:15
я не очень понял вопроса) можно делать все тоже самое что из датафреймами, датафреймы ж датасеты
а типов uint8 / float32 их нет в джвм
надо думать самому как с этим быть
или же это уже вопрос спицифичный у тебя спарк скулю и какомуто кейсу?

Alex
28.12.2017
10:08:52
Ну аналоги есть?

Grigory
28.12.2017
10:08:59
нету аналогов
byte short int double float

Google

Grigory
28.12.2017
10:09:29
как понять что у тебя лежит в датасете?
Dataset[(Byte, Short, Int, Double, Float)]
ну а если у тебя роу то надо дергать и кастить
ну я тип сути вопроса не понял

Alex
28.12.2017
10:10:28
Вопрос вообще в том, на какой структуре ml пайплайны быстрее. Типизированный датасет?

Grigory
28.12.2017
10:10:38
одинаково
оно же одно и тоже под капотом
прям 1 в 1

Alex
28.12.2017
10:11:04
ДФ и типиз. датасет?
или РДД?

Grigory
28.12.2017
10:11:14
дф и типизированый датасет
яж ссылку давал на гитхаб то

Alex
28.12.2017
10:11:31
окей, спасибо)
Это я увидел)

Grigory
28.12.2017
10:11:48
лучше использовать типизированный) если возможно
а такая команда аналитиков и не умеет в типы
и все на питоне

Alex
28.12.2017
10:14:16
В питоне df типизируется. Там же лапак под капотом для numpy.
@pomadchin мб поэтому нет разницы на том графике в скала/питон DF?

Grigory
28.12.2017
10:41:00

Alex
28.12.2017
10:41:37

Grigory
28.12.2017
10:41:56
да не я хотел добавить что можно и рдд быстрыми сделать

Google

Grigory
28.12.2017
10:42:07
ну сравнимыи со скала по скорости (прост апи кинуть из джавы в питон) : D

Alex
28.12.2017
10:42:21
Питон хорош ток с оберточными либами, где под капотом плюсы или фортран.

Andrey
28.12.2017
12:01:32
кто то использует спарк с игнитом?

Vladimir
28.12.2017
14:46:31
Серия дилетантских вопросов от нуба:
Есть ли в стеке Hadoop графовые БД?
Есть ли olap-подобные инструменты?
Что есть для статистики и машинного обучения, кроме mahout и pregel?

Daniel
28.12.2017
15:08:03
Графовые бд в принципе ложь. В хадуп эко системе нет и таких.

sherzod
28.12.2017
15:16:14

Daniel
28.12.2017
15:18:10
Ну и все это про спарк а не про хадуп