Задать вопрос
  • Как замерить производительность i/o?

    mayton2019
    @mayton2019
    Bigdata Engineer
    Замер i/o это хитрая штука. Тут недостаточно просто программирования. Нужно знать что ОС обычно берет на себя часть функций по управлению (планировщики) вводом-выводом и кеширование.

    Тоесть если ты будешь тестить свои программы в порядке 1->2 то вторая будет иметь фору в виде прогретого дискового кеша. И нужно делать хотябы -4-6 экспериментов чередуя 1->2->1->2 несколько раз и собирать кумулятивное время для каждого приложения и потом брать арифметическое среднее.

    Данный класс Timer в таком виде не нужен. Он слишком прост и его можно заменить в коносли на вызов

    $ time yourapplication

    В качестве улучшений таймера я-бы сделал StopWatch. Это таймер который можно вызывать несколько раз и он будет кумулятивно считать время между begin-end и выводить его в конце. Так можно мерять интересующие фрагменты кода которые работают только с диском и игнорировать например вычисления с CPU.
    Ответ написан
    Комментировать
  • Какие сообщества, рассылки, форумы и чаты по HPC, BigData, Data Analysis и другим высокопроизводительным задачам вы знаете?

    mayton2019
    @mayton2019
    Bigdata Engineer
    Каналы в телеге можно глянуть

    https://t.me/hadoopusers
    https://t.me/apache_spark
    https://t.me/devsp

    Есть еще куча групп в ЛинекдИн и Фейсбуке. Но насколько я понимаю в РФ они зобанены.

    Очень удивило наличие у вас вопроса по IRC-каналам. Удивлен что вообще кто-то это использует.
    Ответ написан
    Комментировать
  • Как обновить spark-core что бы убрать уязвимость log4j?

    mayton2019
    @mayton2019
    Bigdata Engineer
    Для перехода с Log2j на вторую версию есть мигрейшен гайд https://logging.apache.org/log4j/2.x/manual/migrat...

    Еще покажите полностью dependency:tree начиная с корня. Старый логгер log4j еще может быть транзитивной зависимостью от тысяч других библиотек (hadoop например) и выкорчевать его из проекта совсем - может быть нетривиальной задачей.

    По поводу угроз которые были обнаружены в Log4j я-бы не сильно парился. Для современного биг-дата приложения которое запускается в контейнерах я думаю что угрозы нет. Если инициатива выкорчевывания библиотек исходит не от вас а от других людей - то неплохо-бы от них получить какое-то обоснование зачем все это делать и как много человеко-часов вы согласитесь вообще на это потратить.
    Ответ написан
    Комментировать
  • Как установить 0760 права на файл в java через smb?

    mayton2019
    @mayton2019 Куратор тега Java
    Bigdata Engineer
    Если искать документацию по протколам SMB/CIFS то все дороги ведут в Microsoft.
    А у Microsoft вроде-бы нет концепции файловых битовых масок rwx. У них - больше ACL.
    Ответ написан
    Комментировать
  • Мне необходимо выбрать тему диплома, связанную с BIG DATA, e-commerce. Какую лучше взять?

    mayton2019
    @mayton2019
    Bigdata Engineer
    У гугла есть открытые учебные датасеты. Можно их посмотреть. Там и графика. И финансовая информация.

    По поводу терабайтов в открытом доступе. Я не находил. В рамках студенческой дипломной работы трудно будет найти бесплатное облако или кластер который будет способен перемалывать терабайты за доступное время. Поэтому я-бы не ставил упор на объём.

    Но можно найти гигабайты. Географические базы. https://www.openstreetmap.org/
    Там есть данные по 40 гигабайт в XML формате. География - кстати очень интересная тема.
    Особенно если данные географии накладывать на какие-то другие. Экология там... ковид. И прочее.
    Ответ написан
    Комментировать
  • При увеличении датафрейма таблица становиться пустой, как решить эту проблему?

    mayton2019
    @mayton2019
    Bigdata Engineer
    А как вы определили что данные исчезают. Попробуйте для большого фрейма посчитать

    df.count()
    Ответ написан
    Комментировать
  • Порекомендуйте подходящую базу данных?

    mayton2019
    @mayton2019
    Bigdata Engineer
    Бигдата и индексы - обычно не дружат друг с другом. Антагонизмы по сути. Поэтому от индексов надо уходить и двигаться в сторону партишенинга, сложного и полностью ориентированного на аналитические выборки.

    В идеале - реплицировать все данные в другую БД с другой геометрией таблиц или вообще в систему другого типа.

    Любая современная биг-дата будет дешевле по стоимости владения по сравнению с DBMS.
    Ответ написан
    Комментировать
  • Как сгенеририовать СЛАУ (система линейных алгебраических уравнений) больших размеров?

    mayton2019
    @mayton2019
    Bigdata Engineer
    Для хранения матрицы 10000 на 10000 в формате double вам понадобиться кусок памяти порядка 800 Мб.
    И это только для хранения исходных данных. А если нужно будет искать всякие определители и обратные матрицы
    то сложно себе представить сколько дополнительной памяти будет нужно.

    Если курсовая затрагивает разреженные матрицы (это где много дырок или областей без данных) - то можно
    посмотреть в сторону сжатых матриц. Не знаю как щас а в 90-е была куча библиотек для этого дела.

    Чем заполнить матрицы в данном примере - ХЗ. Надо погружаться в сам курсовой. Если он растет из физики то и исходные данные надо брать оттуда. Там всякие диагональные и треугольные и прочие.
    Ответ написан
    Комментировать
  • Как нормализовать растянутые данные не линейной нормализацией?

    mayton2019
    @mayton2019
    Bigdata Engineer
    В науке и технике используются логарифм и экспонента. Только надо подобрать коэффициенты.
    Результат сохраняет монотонность. Но малые значения усиливаются а большие ослабляются.

    Если посмотреть в отрицательную ось - то подходит любая функция с насыщением (гиперболический
    тангенс или сигмоид) которые используются в нейро-сетсях для мягкого срезания больших величин.

    Тоже сохраняет мототонность.
    Ответ написан
    Комментировать
  • Что нужно модифицировать в Linux системе что бы время модификации\получения доступа к файлу заменялось каждый раз на случайное, вместо реального?

    mayton2019
    @mayton2019
    Bigdata Engineer
    Да что за преподаватель такие задачи придумывает? Неужели не мог что-то полезное выдавить? Наверное нужно поменять ядрос ОС. Перекомпилировать по сути. Задача КМК нетривиальная для какой-то лабы. Тут - скорее можно получить кучу новой побочки даже не дойдя до решения лабы. Вобщем проще занести деньги на кафедру.
    Ответ написан
    Комментировать
  • Почему возникает ошибка Bad Base64?

    mayton2019
    @mayton2019 Куратор тега Java
    Bigdata Engineer
    Если говорить языком фактов то в кодировке Base64 нельзя использовать символ "_", а можно только от буквы A до символа "/" в диапазоне ASCII. Где и как оказался символ подчеркивания - непонятно.
    Ответ написан
    Комментировать
  • Какие алгоритмы помехоустойчивого кодирования можно использовать для передачи зашифрованных сообщений?

    mayton2019
    @mayton2019
    Bigdata Engineer
    Обычно начинают с кодов Хемминга. Они - простые и исправляют 1 бит на блок.

    Вообще, в стеке шифрования, коды восстановления не подмешиваются к шифроблокам, а скорее оборачивают как конверт.
    Ответ написан
    Комментировать
  • Почему CUPs печатает не все страницы?

    mayton2019
    @mayton2019
    Bigdata Engineer
    Капс печатает логи ошибок здесь /var/log/cups
    Посмотри какие там последние события.
    Ответ написан
  • Почему клиент на Java не может подключиться к серверу (на сокетах)?

    mayton2019
    @mayton2019 Куратор тега Java
    Bigdata Engineer
    Тут - какая-то обще-системная ошибка, и сообщение java.net.ConnectException: Connection refused: connect
    совершенно не несет никакой информации где искать проблему. Давайте переведем задачу из плоскости Java в плоскость сетей и протоколов. Вобщем для начала надо подёргать порт снаружи используя утилиты telnet или netcat и далее уже смотреть по ошибкам.

    nc -w 3 -zv tester17.com 33333

    когда получишь сообщение : "Connection .... succeded!" - то можно возвращаться в Java кодинг.
    Ответ написан
    Комментировать
  • Как заставить ботов убегать от преследователей?

    mayton2019
    @mayton2019
    Bigdata Engineer
    Проблема кроется в самой постановке. Боту недостаточно убегать от красных. Ему надо заранее прокладывать траекторию так чтобы при равных скоростях они оба бегали бесконечно. Я так понимаю что это будет успех.

    Все прочие алгоритмы при равных скоростях тяготеют к тому что зеленый будет становится все ближе и ближе. Ему ведь надо тыкаться в углы. А все известные машинные алгоритмы ближнего действия требуют ощупывания или осязания тупиков и углов. При таком раскладе зеленый будет пойман. Или надо давать ему фору в скорости.
    Ответ написан
  • Просмотр видео с SSD вместо NAS по сети, 40 пользователей смартфонов и планшетов?

    mayton2019
    @mayton2019
    Bigdata Engineer
    Из 40 человек - смотреть будут 1-2.

    Остальные - полезет в youtube или Netflix.
    Я не критикую саму идею. Просто может стоит подождать первой нагрузки а потом уже заняться оптимизацией по факту.
    Ответ написан
    Комментировать
  • Как сделать так чтобы игра показывала только вертикальные стены?

    mayton2019
    @mayton2019
    Bigdata Engineer
    Вот ты чудак. Ты говоришь - я пишу рейкастинг. И код - кривой. Так либо ты не делай кривой. Либо скажи честно что скопировал в таком-то и таком-то интернет ресурсе.

    Это наверное поможет вопроснику разобраться где там нужная функция.
    Ответ написан
    Комментировать
  • Какие бессмысленные/раздражающие особенности байткода Java остались с древнейших времён?

    mayton2019
    @mayton2019 Куратор тега Java
    Bigdata Engineer
    Если посмотреть в историю - то JVM создавалась в 1996 году как платформа для встраиваемой техники. Холодильники. Кофеварки. Техзадание такое было. И разумеется в саму спеку были заложены ограничения которые позволят байткоду собираться даже на очень слабых машинах. Где мало регистров и мало разрядности. И мы имеем стековую машину (наподобие калькулятора МК-60) в которой принципиально нет регистровой адресации. В отличие от платформ .Net/clr где есть более современная адаптация к процессору. Вобщем если вы заходите написать код который будет friendly к SSE/AVX регистрам - то у вас ничего не выйдет. На уровне JVM - максимальная разрядность алгебраического типа - 64 бит (знаковые). Это как мне кажется наиболее сильное ограничение. И неизвестно когда спека будет расширена. Насколько я вижу Oracle и JCP очень консервативны в этом вопросе и неохотно вносят изменения в сам байткод.
    Ответ написан
  • Вопрос про массивы в Java, и понимание разницы между С++ и Java?

    mayton2019
    @mayton2019 Куратор тега Java
    Bigdata Engineer
    Основная разница - это контроль границ. В runtime, java не позволит вам выскочить вне диапазона индексов.

    В c++ runtime - никакого массива не существует. Можно как получать различные аномалии в поведении приложения, (повредить другие структуры данных процесса), так и получать молчаливое поведение, что усложняет поиск ошибок.
    Ответ написан
    Комментировать
  • Как сделать драйвер виртуального микрофона для подключения с JAVA?

    mayton2019
    @mayton2019 Куратор тега Java
    Bigdata Engineer
    Скорее всего эта задача выходит за рамки java разработок.
    Ответ написан