@hadoopusers

Страница 136 из 182
Ilia
20.08.2018
08:56:11
Илья, а чем бы вы сделали такую репликацию?
Если бы решал похожую задачу у себя то наверное через спарк

Sergey
20.08.2018
08:56:26
спарк стриминг?

Ilia
20.08.2018
08:56:27
Да, пушкой по воробьям

Google
Ilia
20.08.2018
08:57:25
Стриминг не трогал ещё, думаю написал бы джобу для airflow

Sergey
20.08.2018
08:57:37
в том-то и дело, что руками (((

Ilia
20.08.2018
08:57:55
А, упс

Sergey
20.08.2018
08:58:29
airflow к репликации не шибко подходит

Ilia
20.08.2018
08:58:43
Что посоветуете?

Sergey
20.08.2018
08:59:11
попробую сейчас поднять Kafka SerDe от Oracle, проверю можно ли через него ПИСАТЬ в топик Кафки

Stanislav
20.08.2018
09:22:02
Sergey
20.08.2018
09:22:29
да

Alexey
20.08.2018
12:34:58
кто в курсе, как эффективно сделать distinct на датасете в сотню миллиардов записей, в треть терабайта весом? если в лоб, то под весом шафлов кластер дохнет.

Alexey
20.08.2018
12:48:35
и сколько раз повторять, выяснить экспериментально?

Google
Alexey
20.08.2018
12:48:56
а такая вот наркомания прокатит: .mapPartitionsToPair(iter -> { Set set = new HashSet<>(); iter.forEachRemaining(e -> set.add(new Tuple2<>(e, null))); return set.iterator(); }) .aggregateByKey(null, (e, f) -> null, (e, f) -> null) .keys()

или это я переусложняю как обычно

Artyom
20.08.2018
14:15:09
Классическое решение это вынести подсчет на reducer'ы + задать достаточное число reducer'ов То есть в терминах sql делать не count(distinct key), а select count() group by key

Alexey
20.08.2018
14:29:12
ну я примерно это и написал, плюс-минус лапоть. попробую щас отладиться на разных вариантах, о самом работающем потом расскажу.

Mikhail
20.08.2018
14:56:35
Alexey
20.08.2018
14:59:18
если в лоб, то да, оно и есть. в исходниках так и написано map(x => (x, null)).reduceByKey((x, y) => x, numPartitions).map(_._1)

reduceByKey == шафлы

Alexey
20.08.2018
15:00:10
с треском

Mikhail
20.08.2018
15:02:00
с треском
Попробуй запустить на 1% данных

Или 0.1%

Может дело не в алгоритме

Alexey
20.08.2018
15:09:31
алгоритма нету. просто у меня на s3 валяется несколько терабайтов CSV-шек, кусками примерно по 300г каждый. надо по каждому выцепить distinct values в одном из полей. собсно, так себе задача. но как оказалось, в лоб не решается.

Mikhail
20.08.2018
15:13:45
Ну так я говорю что алгоритм обработки это стандартный мапредьюс. Если у тебя валится, то может дело в настройках кластера? Попробуй позапускать на меньших данных или что-то тривиальное

KrivdaAllStars
20.08.2018
15:14:33
Но опять же + михаилу

Mikhail
20.08.2018
15:14:34
И что именно валится посмотри в логах

Alexey
20.08.2018
15:31:39
ну что вы как дети. мне нет смысла запускать на чём-то меньшем. в логах часов через 8 начинается расколбас, по которому ничего не выяснить. 18/08/17 23:39:22 WARN YarnAllocator: Container marked as failed: container_1533821424930_0037_01_039565 on host: ip-*****.ap-northeast-1.compute.internal. Exit status: -1000. не может прочитать следующий блок из DFS. после таймаута читает. но когда накапливается достаточное количество сдохших контейнеров, кластер падает.

можно увеличить ретраи и таймауты, это пролит агонию, но итог один.

Google
KrivdaAllStars
20.08.2018
15:34:27
а не в терабайтах

Alexey
20.08.2018
15:34:28
в шафлах проблема

Mikhail
20.08.2018
15:34:31
ну ты сам вопрос так поставил - как сделать эффективно distinct? эффективно это обычный мапредьюс, вот ответ, то что падает это проблема настроек кластера.

Alexey
20.08.2018
15:35:28
с линейными вещами проблем прожевать терабайты нет. но как только шафлы накапливаются, всё колом встаёт, рано или поздно

т.е. обычный reduce не прокатывает ни в каком виде

Roman
20.08.2018
16:11:26
Обычный wordcount, как из примеров hello world для хадупа :)

Alexey
20.08.2018
16:25:46
чё правда?

Grigory
20.08.2018
18:52:59
т.е. обычный reduce не прокатывает ни в каком виде
ну суть редьюса то какая? собрать все результаты на драйвер

Pavel
21.08.2018
08:16:28
Всем привет. Новичок в Клаудере. Как запустить jar файл? В какой директории сохранить? Как создать джоб? Буду благодарен за информацию

Nick
21.08.2018
08:17:11
жестоко

Ilya
21.08.2018
08:37:41
?

Anton
21.08.2018
08:46:26
Ребята, кто-нибудь трогал специализацию от Яндекса на курсере по Data Engineers ? Как впечатления ? Знаете ли альтернативы ?

Alexander
21.08.2018
10:05:04
в шафлах проблема
Можешь попробовать указание custom partitioner.

Alexey
21.08.2018
10:20:01
Я один из создателей спеки. Могу отвечать на вопросы)
Подскажите пожалуйста, какой уровень подготовки рекомендуется для комфортного прохождения? Джуниорских познаний джавы/питона, алгоритмов и структур данных хватит?

Alexey
21.08.2018
10:40:48
Можешь попробовать указание custom partitioner.
да много уже чего перепробовал... проблема в накоплении очереди тасок на большом количестве партиций. вылетает чисто по таймауту, потому как драйвер не успевает отдать вовремя следующий блок. очередь тасок в полмильёна, блин. с увеличением таймаутов можно это всё оттянуть на потом, но рано или поздно всё равно контейнеры дохнут. 10 часов ставил — не хватает. можно сделать сами партиции побольше, чтобы их было поменьше, но для этого мне надо и кластер на каких-нить 10xlarge, а бюджет на этой дело мне никто не дал :( btw, то наркоманское решение, которое я сюда постил, даёт в 4 раза меньше тасок, чем прямой distinct, и в намного меньше шафла. видимо, буду продолжать пилить в этом направлении.

Anton
21.08.2018
10:51:27
Я один из создателей спеки. Могу отвечать на вопросы)
Задания там на пытончике или на чем хочешь ? И ещё вот такой вопрос : насколько специализация будет интересена , допустим, саентистам, которые хотят получить общее понимание как все работает , но которым (имхо) не нужна глубокое погружение в инженерию ?

Google
Anton
21.08.2018
10:53:47
Окей, пасиб!

Sergioss
21.08.2018
12:20:16
Скажите а даунгрейд сделать с 3.1.1 ванилы до 2.9.1 Сложно? Похоже 2.1.0 hbase не дружит с hadoop 3.1.1

Sergioss
21.08.2018
12:21:53
Mikhail
21.08.2018
12:22:08
с hadoop 3.1.1
Это я понял, в чем заключается несовместимость?:)

Sergioss
21.08.2018
12:23:54
Это я понял, в чем заключается несовместимость?:)
Очень много ошибок всяких разных, на пример KeeperErrorCode = NoNode for /hbase/master, details= это что касается zookeeper, с WAL какие-то траблы Гуглил гуглил, все свои ошибки, и наткнулся на статью где пишут о не совместимсти, ошибок очень много а конфа простая.

Grigory
21.08.2018
12:27:46
у них вроде было чтото такое на трекере

я не помню

Sergioss
21.08.2018
12:28:52
Понял, спасибо. Мне по идеи по простому можно, это тестовый стенд, мб ваще просто скачать дист да конфиги залить?)

Grigory
21.08.2018
12:33:04
ага; лучше задуп 2.x со всем этим барахлом

вроде hbase новый есть

Sergioss
21.08.2018
12:36:37
вроде hbase новый есть
2.1.0> поледний вроде

Grigory
21.08.2018
12:37:19
2.1.0> поледний вроде
я про 3.0-alpha который вроде релизнут

Sergioss
21.08.2018
12:37:36
я про 3.0-alpha который вроде релизнут
оп оп, надо лучше hbase новый попробовать)

Grigory
21.08.2018
12:37:45
не стоит думаю))

ты же ток начинаешь

Sergioss
21.08.2018
12:37:51
угу

Google
Sergioss
21.08.2018
12:50:30
Понял, спасибо. Мне по идеи по простому можно, это тестовый стенд, мб ваще просто скачать дист да конфиги залить?)
Лол так и надо) Administrator may choose to first shutdown the cluster and then downgrade it. The following are the steps: Shutdown all NNs and DNs. Restore the pre-upgrade release in all machines. Start NNs with the “-rollingUpgrade downgrade” option. Start DNs normally.

Yurij
21.08.2018
13:10:41
Ребята, кто-нибудь трогал специализацию от Яндекса на курсере по Data Engineers ? Как впечатления ? Знаете ли альтернативы ?
Прохожу сейчас первый курс специализации. Если тебе комфортно воспринимать на слух, то норм пойдет. Мне не особо заходит по двум причинам: 1) Я привык читать, а не смотреть и слушать 2) Раздражает английский и плоские отвлекающие шутки одного из лекторов (его материалы мне почти все приходится читать отдельно) Но практическая часть там хорошая + дается контейнер со спарком, который можно поставить на свою машинку Другие курсы буду брать только после того, как прочитаю какую-нибудь книжку, потому что из лекций откладывается в голове очень мало из-за моего бага в восприятии лекций

Sergioss
21.08.2018
13:33:04
Лол так и надо) Administrator may choose to first shutdown the cluster and then downgrade it. The following are the steps: Shutdown all NNs and DNs. Restore the pre-upgrade release in all machines. Start NNs with the “-rollingUpgrade downgrade” option. Start DNs normally.
ток я не учел, что это с обновленной версии, а у меня то с нуля 3.1.1, вот блин, все перераскатывать терь что ли?) Чтоб без напрягов запустить

Grigory
21.08.2018
13:35:32
качни новый дистр прост

и пути поправь и все

Sergioss
21.08.2018
13:40:25
Типа прям в тупую?

Grigory
21.08.2018
13:40:33
угу

Sergioss
21.08.2018
13:40:56
Ок, спс

угу
Тупо не прокатило, слушай а от куда инфа про алфу Hbase? может поделишься ресурсом?

Grigory
21.08.2018
15:34:42
ну хадупы все одинаково натсриваются

одинаково просто настрой

должно србаотать

Sergioss
21.08.2018
15:37:08
должно србаотать
да я так и сделал, разлил 2.9.1 и конфиги старые закинул не завелось я и забил, на хер, подожду альфы) а сам пока cassandru помучаю мб)

Grigory
21.08.2018
15:51:30
ааа старые конфиги наверное 3 -> 2 не совместимы

2 -> 3 вроде работают

там с именами проблема полоей может быть

Страница 136 из 182