Size: a a a

2019 November 06

Д

Дмитрий in Data Engineers
Будьте милосердны
источник

MB

Mikhail Butalin in Data Engineers
Всем привет.
источник

MB

Mikhail Butalin in Data Engineers
Странная ситуёвина с таблицей HBASE.
Количество сплитованных регионов растёт и не уменьшается. Пробовал major_compact - эфекта не дало :(

Пробовал пре-сплит. Регионов стало только больше.
Куда смотреть?
источник

AS

Andrey Smirnov in Data Engineers
Mikhail Butalin
Странная ситуёвина с таблицей HBASE.
Количество сплитованных регионов растёт и не уменьшается. Пробовал major_compact - эфекта не дало :(

Пробовал пре-сплит. Регионов стало только больше.
Куда смотреть?
руками merge не пробывал делать?
источник

AZ

Anton Zadorozhniy in Data Engineers
Mikhail Butalin
Странная ситуёвина с таблицей HBASE.
Количество сплитованных регионов растёт и не уменьшается. Пробовал major_compact - эфекта не дало :(

Пробовал пре-сплит. Регионов стало только больше.
Куда смотреть?
1) посмотреть почему сплитится, скорее всего ключей очень много 2) потыкать ручки сплита/мерджа, в шелле splitormerge_enabled 'SPLIT' - это статус автосплита, splitormerge_enabled 'MERGE' - статус автомерджа
источник

ПФ

Паша Финкельштейн in Data Engineers
Инжинеры, а что, нельзя сказать хайву что у меня CSV пожатые если при этом у файлов не проставлен экстеншн gz?
источник

MB

Mikhail Butalin in Data Engineers
Andrey Smirnov
руками merge не пробывал делать?
неа, чёт очкую... нам итак размер регионов нормальные, а если их мерджить, то они увеличиваться в размере будут. Кроме того надо понимать какие смерджить
источник

MB

Mikhail Butalin in Data Engineers
Anton Zadorozhniy
1) посмотреть почему сплитится, скорее всего ключей очень много 2) потыкать ручки сплита/мерджа, в шелле splitormerge_enabled 'SPLIT' - это статус автосплита, splitormerge_enabled 'MERGE' - статус автомерджа
оба true
источник

AZ

Anton Zadorozhniy in Data Engineers
Mikhail Butalin
оба true
ну тогда вам надо еще раз внимательно посмотреть на дизайн rowkey и на то что хранится в таблице, и если вы уверены в размерах тех регионов которые есть - выключить автосплит, но надо принять риск что если вы просчитались - будут очень тяжелые регионы которые будут тормозить конкретные регион-сервера
источник

AZ

Anton Zadorozhniy in Data Engineers
самые нагруженные хбейсы с которыми я работал имели фиксированные регионы с пресплитом и без автосплита
источник

AZ

Anton Zadorozhniy in Data Engineers
(но это неудобно конечно, большой оверхед на ДБА)
источник

AS

Andrey Smirnov in Data Engineers
Mikhail Butalin
неа, чёт очкую... нам итак размер регионов нормальные, а если их мерджить, то они увеличиваться в размере будут. Кроме того надо понимать какие смерджить
если размер нормальный, то чего ты переживаешь?
можно мержить указав два region key, проверишь что все норм
источник

DV

Daniil Vorobeyv in Data Engineers
Всем привет!
Не могли бы подсказать, какой метод в Spark DataSet позволяет вычислить пользователькую функцию f для каждой строки, причем результатом исполнения метода будет столбец, где в i строке будет значение f на i строке исходного DataSet?
P.S. язык Scala
источник

DV

Daniil Vorobeyv in Data Engineers
DataSet:
|col1|col2|
|12|1001|
f(row) =row(0)+row(1)
f(нулевая строка) = 12 +1001=13
Вот есть, что-то такое?
источник

AZ

Anton Zadorozhniy in Data Engineers
Daniil Vorobeyv
Всем привет!
Не могли бы подсказать, какой метод в Spark DataSet позволяет вычислить пользователькую функцию f для каждой строки, причем результатом исполнения метода будет столбец, где в i строке будет значение f на i строке исходного DataSet?
P.S. язык Scala
в датасетах нет столбцов и строк, это коллекции объектов заданного класса
источник

AS

Anton Shelin in Data Engineers
Daniil Vorobeyv
DataSet:
|col1|col2|
|12|1001|
f(row) =row(0)+row(1)
f(нулевая строка) = 12 +1001=13
Вот есть, что-то такое?
не совсем понял задачу. у вас должно быть что то типа df = df.withColumn("res", f.col('col1')+f.col('col2'))
источник

AS

Anton Shelin in Data Engineers
для получения номера строки df.withColumn('fakeOrder', f.lit(1)).withColumn("row_number", f.row_number().over(Window.orderBy("fakeOrder")))  и возможно вам надо еще кумулятивную сумму сделать
источник

AS

Anton Shelin in Data Engineers
df.withColumn("cumsum", f.sum(f.col("Value")).over(Window.orderBy("fakeOrder")))
источник

AS

Anton Shelin in Data Engineers
Daniil Vorobeyv
Всем привет!
Не могли бы подсказать, какой метод в Spark DataSet позволяет вычислить пользователькую функцию f для каждой строки, причем результатом исполнения метода будет столбец, где в i строке будет значение f на i строке исходного DataSet?
P.S. язык Scala
простите плохо прочитал задачу. я думал что вам надо DataFrame
источник

DV

Daniil Vorobeyv in Data Engineers
Т.е. если я делаю dataset.select(name), то name - это не колонка , а некоторая другая "сущность"?
источник