Задать вопрос
  • Какие существуют методы анализа связанности тегов?

    mayton2019
    @mayton2019
    Bigdata Engineer
    Посмотри Collaborative Filtering https://spark.apache.org/docs/latest/ml-collaborat...
    Ответ написан
    Комментировать
  • Как правильно распределить хранение комментариев?

    mayton2019
    @mayton2019
    Bigdata Engineer
    Нужно материализовать ответы. И класть их на быстрое хранилище рядом с кешом типа nginx.
    Ответ написан
  • Торрент тихий убийца ссд?

    mayton2019
    @mayton2019
    Bigdata Engineer
    Современные ssd имеют большой мото-ресурс. Скорее всего они будут убиты чем угодно но не торрентом.

    Убивают их очень активные "пишущие системы". Базы данных с WAL, и все что генерирует логи и просто файлы.

    У тебя что сервер?
    Ответ написан
    2 комментария
  • Как автоматизировать выполнение sql-запросов?

    mayton2019
    @mayton2019
    Bigdata Engineer
    Вам определенно нужен девопс который автоматизирует вам выполнение ваших скриптов по календарю. Добавит дашборды с графиками и прочее.

    DataGrip насколько я понимаю это среда разработки. Тоесть она активна пока у вас крышка ноутбука отрыта. Закрыли - всё. Капец все планам.

    Поэтому девопс и еще раз девопс.
    Ответ написан
    Комментировать
  • Как обрезать json до определённого тега?

    mayton2019
    @mayton2019
    Bigdata Engineer
    Есть строка джсона длинной 25000+ строк.

    Это какая-то ерунда. JSON - это никакая не стркоа. Это JavaScript object notation. Собственно это заложено в аббревиатуру. И работать с ним надо через API который работает с JSON.

    Игры со строками ни к чему хорошему не приведут. Пропустишь escaping и будет просто зря потраченное время и забаговнный код.
    Ответ написан
    Комментировать
  • Достаточно ли изучить 1 книгу по Java Core что бы перейти к Spring Framework?

    mayton2019
    @mayton2019
    Bigdata Engineer
    Тема топика - экстремальное изучения языка и фреймворков.

    Лет 10 назад я-бы запретил. И себе и другим. Но сегодня условия войти-в-айти таковы что на все времени не хватает а фичи языков и фреймворков растут. Уже просто изучать целый семестр один язык недостаточно. Вообще мне термин Core непонятен. Если у тебя Java приложение падает по OOM а для решения этой задачи нужен еще ох какой пласт знаний по Linux по организации памяти и по виртуализации Docker то скажите пожалуйста какой Core это описывает. Или другой пример. Вы сделали бизнес приложение с БД которое быстро работает на детских объемах базы. Но когда зашли продуктовые данные - приложение залагало и упало. Вот скажите какой Core этот процесс оптимизации описывает? Да никакой. Есть совокупность инженерных практик начиная от теории алгоритмов и заканчивая тестированием и контрактами.

    Вобщем автор. Ты можешь читать хоть 10 книг одновременно. Просто у тебя должно быть видение того на какую вакансию и должность ты пойдешь. И какие хоть примерно задачи ты будешь решать. Ну и сроки хотя-бы осязаемые. А то так 10 лет можно просидеть.
    Ответ написан
    2 комментария
  • Есть ли штатный способ разбить большой UPDATE на транзакционные части?

    mayton2019
    @mayton2019
    Bigdata Engineer
    Можно так попробовать

    CREATE EXTENSION pgcrypto;
    
    BEGIN;
     // Partition 1 of 16
     UPDATE .... WHERE left(digest(ID, 'sha256'),1) = '0' 
    COMMIT;
    
    BEGIN;
     // Partition 2 of 16
     UPDATE .... WHERE left(digest(ID, 'sha256'),1) = '1' 
    COMMIT;


    У Oracle была более простая функция hash(...) которая разделяла сет ключей сразу на известное число партишенов. Там второй аргумент указывался. Но в PG я не знаю аналога. Может знающие подскажут.
    Ответ написан
  • Какую IDE выбрать для разработки на Java?

    mayton2019
    @mayton2019 Куратор тега Java
    Bigdata Engineer
    Программирование Андроид весьма специфично. Там JVM не такая.
    Поэтому я тоже задам вопрос - под какую Java автор хочет разрабатывать.

    У современных IDE количество фич исчислятеся тысячами а если ставить плагины то еще на порядки. И вообще спор на тему IDE он не совсем технический а скорее - спор вкусов. Кому арбузы нравятся а кому дыни. Без конкретной аргументации ибо невозможно дать точное определение вкусам.

    Но если кодить конкртено под Андроид систему то надо смотреть в первую очередь ту IDE которую рекомендует производитель.
    Ответ написан
    1 комментарий
  • Какой формат (кроп или полное с разметкой) изображения лучше применять для обучения нейросети (yolov5)?

    mayton2019
    @mayton2019
    Bigdata Engineer
    А позвольте спросить вы занимаетесь обучением сети "для чего" ?

    Вот в самом вопросе обычно заложен ответ. Если вы хотите проектировать систему детектирующую угон машин по камерам на перекрестках - то никакой кроп вам не нужен. Вы должны создавать условия приближенные к реальным. Если вы просто автоматизиурете учет машин на паркинге (шлакбаум) - тогда можете кропать. Но никаких других требований к вашей системе уже нельзя предьявить.
    Ответ написан
    Комментировать
  • Как начать писать код?

    mayton2019
    @mayton2019
    Bigdata Engineer
    Это нормально. Просто не хватает практики. Например змейка (и другие игры) в основе своей несут цикл обработки событий. Клавиатурных. Или событий таймера... не важно. Тоесть ты можешь сразу писать

    while(true) {
     event = waitForEvent()
     ...
    }


    И это будет некий каркас для любой игры.
    Ответ написан
    Комментировать
  • Как синхронизировать изменяемую таблицу в 1С с Oracle БД?

    mayton2019
    @mayton2019
    Bigdata Engineer
    Никакой max indexrow вам не поможет. Это же не Excel. Но если вы знаете к примеру что данные имею дату создания и partitioning по этой дате, то тогда запрос может быть улучшен по плану и по логике.
    Ответ написан
    3 комментария
  • Почему иногда практикуется отсутствие связей в БД?

    mayton2019
    @mayton2019
    Bigdata Engineer
    Есть несколько задач когда от реляционности отказываются сознательно.

    - Bigdata
    - Загрузка сырых или неспецифицированных данных для дальнейшей обработки
    - Загрузка документов имеющих нереляционную природу (XML/JSON)
    - Логгирование событий или просто запись данных из внешнего датасорса

    По такой слабо-связной базе нельзя делать JOINS но брать по ключу можно key-value или можно
    делать анализ крашей и аварий.
    Ответ написан
    Комментировать
  • Как сложить словари в которых числа?

    mayton2019
    @mayton2019
    Bigdata Engineer
    Кажется это называется строковая интерполяция в Python. Впрочем не только в Питонах но и вообще во всех других языках.
    x = 38.0
    y = 0o5
    z = 0x02
    print(f'Общий рост моей семьи - {x} попугаев, {y} мартышек, {z} слоненка')
    Ответ написан
    Комментировать
  • Хранение множества мелких и средних файлов, как оптимально: файловая система или база данных?

    mayton2019
    @mayton2019
    Bigdata Engineer
    (файлы будут в zip архиве и архивы размером от 5 КБ до 250кб, изредка 1-2 мб)?


    Да здесь файловая система будет лучше. Zip-архив для БД будет все равно балластом. Движки БД обычно не способны загядывать внутрь сложного архива-блоба. Поэтому фаза вычитывания и распаковки все равно будет. А если такой фазы нет - то тогда и БД выглядит ненужным балластом. Ведь ее суммарная стоимость владения (TCO) всегда выше чем у файловой системы.

    Очень зрелой выглядит идея использования облачных файловых систем (Amazon S3, Azure Blob Storage) но тут надо смотреть просто в цены и в удобство поисковых операций. Например S3 вобщем то является скорее хеш-таблицей на диске чем файловой системой. Поэтому группировать файлы в фолдеры для листинга будет так себе идея. Вообще эти ФС строго расчитаны на знание path. В идеале если ваше приложение изначально знает формулу как path формируется.

    Хранить готовые файлы на сервере хочу из-за скорости. Мне кажется, что гораздо быстрее повторно скачать уже сформированный файл который хранится на сервере, чем каждый раз при скачивании файла 1. отправлять запрос к базе данных с фильтрами 2. на основе отфильтрованных данных сформировать CSV файл(ы)

    Верное направление мысли. Почитай еще как NGinx работает с атрибутами ETag, If-Modified-Since. Это потребует изменения логики клиента, но результат будет более оптимизированный чем просто даже с кешом.
    Ответ написан
    3 комментария
  • Как объединить несколько копий приложения в одну?

    mayton2019
    @mayton2019
    Bigdata Engineer
    Для баз данных существует еще больше способов виртуализации. Кроме docker/kuber можно создавать много баз данных в одном и том-же хосте (pod). Но подумайте будет ли вам удобно бэкапировать такой будерброд. И не будет-ли проблем с безопасностью если кто-то будет создавать в одной базе public объекты.
    Ответ написан
    Комментировать
  • Как однозначно конвертировать цвет из RGB в HSL и обратно, получая один и тот же результат?

    mayton2019
    @mayton2019
    Bigdata Engineer
    Дело в том что HSV - это полярная система коррдинат. Цилиндр по сути. И один из параметров цветового тона (угол вращения) может циклически повторяться неся одинаковый смысл. И может быть любым находясь в центре цилиндра.

    Поэтому такая формула не будет никогда однозначной.
    Ответ написан
    Комментировать
  • Как пропустить аргумент функции при её вызове?

    mayton2019
    @mayton2019
    Bigdata Engineer
    Есть понятие partially defined функция. Это работает в Haskell, Scala. Результатом такого например
    применения будет просто онлайн компилляция новой функции с меньшим числом аргументов.

    plusInt(_, b)

    Но для С++ тем более в данном контексте использования тебе проще сделать просто еще одну функцию.
    Кстати обращаю твоё внимание на то что функции обычно возвращают занчения. А побочный эффект
    такой как cout - лучше просто вызвать отдельно.

    Мотивация станет более ясна когда будешь такой код тестировать. Всегда проще проверить результат чем анализировать потоки вывода.
    Ответ написан
    Комментировать
  • При использовании multiprocessing может ли одновременное считывание из файлов тормозить программу?

    mayton2019
    @mayton2019
    Bigdata Engineer
    Непонятно что ты там переименовываешь. CSV файлы - это файлы последовательного доступа. И чтобы изменить 1 строчку и 1 значение тебе надо создать копию файла с изменением. И оригинал убить. В этом кардинальное отличие от баз данных где файлы имеют блочную структуру и изменнеие касается всегоа 1 db-block (обычно кусочек файла кратный 4-8 килобайт).

    Вот предлагаю обсудить этот вопрос а уже потом подойти к ... муль-ти-про-цессингу или как ты там написал.
    Ответ написан
    2 комментария
  • Каким образом физически устроена модель памяти? И физическая реализация простых логических операций?

    mayton2019
    @mayton2019
    Bigdata Engineer
    (Ответ есть ток, нету. Чет вообще не понятен, к примеру поражает вопрос а как Логический НЕ, инвертор из 0 -> 1 делает то? )
    Что означат 1 при работе, что означает 0? Большинство схем сигналов рисуют синусоиду от (-A,A) или (-1;1)

    Вопрос интересный. Он стоит просто на стыке определений. В системотехнике логическим нулем и единицей просто принято считать уровни напряжения. Один повыше. Другой пониже (хотя не ноль). На диаграммах напряжений (если смотреть осцилографом) прямоугольных импульсов вообще не бывает. Они все - сглаженные. Фронт импульса имеет какую-то гладкость. И это вносит микро-задержки в обработку. Это кстати главная причина почему бесконечно длинные провода не могут передавать цифровой сигнал. Они - имеют емкость. Как конденсатор. Паразитную емкость. И это - проблема.

    Цифровые вентили И-ИЛИ-НЕ это обычные аналоговые схемы которые просто обладают двумя устойчивыми состояниями. Как весы. Или качнутся вправо. Или резко влево. Но по центру не зависают никогда.

    В цифовой передаче данных еще интереснее. Коды типа Манчестерского которые ты каждый день используешь в Ethernet кабелях - двухполярные и еще и обладают свойством нулевого дрейфа постоянного тока. Тоесть это тоже цифровой сигнал где есть единички и нули но сверху над ним огромная электрическая аналоговая теория которая просто оптимизирует его работу в части приема-передачи и защиты от помех.

    Короче цифровой и дискретный - это метафоры. Которые построены поверх обычно аналоговй техники которая лишь иногда (!) ведет себя как цифровая. Нам просто удобно это называть цифровым чтоб программировать. Алан Тюьринг например строил ЭВМ не реле. Это электромеханические электромагниты которые тоже решали задачи вентилей И-ИЛИ-НЕ и обладаи памятью (обычно 1 бит).

    Вобщем если ты хочешь прозреть по настоящему - почитай вообще про "аналоговую" радиотехнику. Ты будешь просто поражен простотой некоторых решений. Например операционный усилитель может умножать числа. Ну... как числа. Напряжения :)
    Ответ написан
    Комментировать
  • В каких отраслях прогеры могут быть заменены на ИИ/Конструкторами?

    mayton2019
    @mayton2019
    Bigdata Engineer
    Мы не можем точно дать определение термину ИИ. А без этого вопрос не имеет смысла.

    Попробуйте сузить вопрос до конкретного применения ИИ. Например ИИ в распознавании лиц это одно. А Co-Pilot это вообще другое.
    Ответ написан