Задать вопрос
  • Ошибка RuntimeError: can't start new thread на Python (MacBook Pro M1 2020 ОЗУ 8 Гб) как настроить или обойти?

    mayton2019
    @mayton2019
    Bigdata Engineer
    Можно слегка изменить код и скачать сначала четные а потом нечетные тикеры. Может проблема с потоками M1 проскочит мимо. Ну не проскочит - тогда поделить на 4 части. Тикер по модулю 4. Я всегда так делал. Если какая-то инфо-система подавилась данными. Делаем партишенинг.
    Ответ написан
    Комментировать
  • Как сделать чтобы mysql хранил таблицы в ОЗУ?

    mayton2019
    @mayton2019
    Bigdata Engineer
    Тюнинг БД это процесс бесконечный и интересный. Вот еще брат-близнец (или сестра) под названием Мария тоже имеет двигатель для memory https://mariadb.com/kb/en/memory-storage-engine/

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

    Еще если БД стоит на отдельном хосте - то какую-бы быстроту вы ни выжимали из таблицы - перед ней стоит сетевой стек который вносит свои законные милисекунды. Имейте это в виду.

    Вообще такая задача лучше ложится на структуры данных самого приложения. Поэтому - комменарий Дмитрия выше. Это звоночек о том что вы что-то не то делаете.
    Ответ написан
  • Нужны ли интерфейсы?

    mayton2019
    @mayton2019
    Bigdata Engineer
    Вообщем я решил забить на них в своих проектах и подключать в компонентах не интерфейсы, а сами используемые компоненты. Это по моему мнению упрощает структуру проекта. Но боюсь старшие товарищи меня заругают, скажут так неправильно, не solidно, зависимости, непричесанные интерфейсы, трудно отслеживать single responsibility.


    Вопросы правильные и интересные.

    Spring вообще очень сильно девальвировал ООП. Он превнес туда целый спектр вопросов в части аспектного программирования. Аннотации SpringData, SpringWeb, SpringSecurity. И поэтому само по себе обсуждение ООП стало вторичным. Важнее Bean. Lifecycle бина. Способы его инжекции в другие бины и прочее.

    Кстати предлагаю тебе ради интереса взять какой-то pet-проект и просто переписать его без Spring. Хороший творческий челлендж. Я так делал. Потом можно попробовать Dagger2 / Guice в качестве инжекторного двигателя добавить сбоку. Там правда будет меньше других возможностей но мне кажется что для большинства проектов этого достаточно. А может быть проект даже станет проще.

    Это кстати прямое следованию принципов KISS/Yagni. Так что твои коллеги-теоретики потеряют часть своих аргументов. Будешь бить их простотой. Santa simplicitas.
    Ответ написан
    Комментировать
  • На каком железе лучше всего начать изучении C++ с нуля?

    mayton2019
    @mayton2019
    Bigdata Engineer
    Мне всегда был интересен стационарник с точки зрения того что туда можно было подключить много устройств. Сначала были ISA-слоты. Потом PCI, потом express. Потом дисковые шлейфы менялись IDE/SATA-1-2-3. Короче любил я это дело. Возился со списанным железом. С неработающим. Был рекорд что я неделю сидел с сгоревшим WD в котором половина блоков была битая. Переформатировал его на штук 10 disk partitions так что битые секторы не попадали в пространстово использования. И потом скленил заново через LVM. Тогда я только изучал Linux Redhat.

    Ноутбук в этом смысле как мобильный телефон. Он просто работает но нету такой себе творческой свободы. Разве что USB слоты.

    Почему я речь завел про железо и С++. Ну просто мне кажется что С++ ник должен быть отчасти железячником. Иначе зачем вам С++ ?
    Ответ написан
    1 комментарий
  • Как правильно прописать код в Docker?

    mayton2019
    @mayton2019
    Bigdata Engineer
    У тебя в какой папке лежит app?
    Ответ написан
  • Как удалить дубликатные записи в postgresql?

    mayton2019
    @mayton2019
    Bigdata Engineer
    Tayrus0 почитай еще про оконные функции. Ключевые слова ROW_NUMBER(), PARTITION BY.
    Ответ написан
    Комментировать
  • Допускается ли в коде смешивать парадигмы программирования?

    mayton2019
    @mayton2019
    Bigdata Engineer
    - ООП
    - Функциональное
    - Процедурное
    - Структурное

    Это во первых - устаревшие понятия. Все из 20-го века. Сегодня они почти не актуальны.

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

    В современном программировании практикуется конвенция которая принята в команде. Вот придете на проект и вам покажут как пишушт все. И будете так писать. Никто не будет упарываться по поводу трушности ООП или еще чего-то. А в техническом задании от бизнеса вообще ничего не будет на тему стиля кодирования. Там будут описаны просто требования по бизнес-кейсам.
    Ответ написан
    8 комментариев
  • Как сложить время, которое у меня в переменной форматом 00:00:00?

    mayton2019
    @mayton2019
    Bigdata Engineer
    Во всём виноваты древние Вавилонцы. Это они придумали 60 ричную систему счисления. Вот изза нее у нас и в минуте 60 секунд и в часе 60 минут.

    Переводи каждую строчку время в секунды . Потом складывай. А потом обратно разводи результат в ЧЧ ММ СС.
    Ответ написан
    Комментировать
  • Почему последний множитель в формуле числа размещений = (n-k+1)?

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

    mayton2019
    @mayton2019 Куратор тега Java
    Bigdata Engineer
    А как выглядит слово Ромич в hex-редакторе? Исходник я имею в виду.
    Ответ написан
    Комментировать
  • Как управлять сервисами развернутыми на чистом линуксе?

    mayton2019
    @mayton2019
    Bigdata Engineer
    Вопрос очень странный. На самом деле на чистом линуксе это сделать даже в чем-то легче чем в докере.

    Для нужд разработки systemd конфигурить не надо. Я просто запускаю из шелла например zookeeper, cassandra.
    Ответ написан
  • Как выбирать файл в правильной поочередности с названием от нуля до максимального?

    mayton2019
    @mayton2019
    Bigdata Engineer
    Нужно определить какой будет самый максимальный кадр. Ну допустим это 9999. Ну и все остальные попереименовывать к чорту типа frame1.png => frame0001.png.

    Для сисадмина-девопса задачка на 5 минут.
    Ответ написан
    Комментировать
  • Как мне визуализировать огромное количество данных из xml-файла?

    mayton2019
    @mayton2019
    Bigdata Engineer
    XML-файл обычно используют для очень сложной доменной структуры. С композицией документов. Типа есть документ. В нем - такие-же под-документы. А если у вас структура плоская - то лучше писать в плоский файл. CSV или log. Есть еще вариант JSONL (Json-lines) где каждая строчка - независимый документ. В последнем случае метаинформация будет более очевидна чем в лог-файле.

    Чтоб быстрее искать - можно большой файл побить на порции по дате-времени например /yyyy-mm-dd/hh-MM.xml
    Если индекс по алвафиту - то тоже можно завести параллельно структуру /index/a/yyyy-mm-dd/hh-MM.xml, /index/b.... и так далее.

    Файловая система в этом смысле лучше чем БД. Т.к. цена поддержки - нулевая. Никаких доп-процессов не будет.
    Ответ написан
    1 комментарий
  • Как декодировать ascii байтовую строку?

    mayton2019
    @mayton2019
    Bigdata Engineer
    Не надо ничего декодировать. Data - это уже массив байтов. Просто запиши в файл.

    >>> data = b'\xff'
    >>> type(data)
    <class 'bytes'>
    Ответ написан
    5 комментариев
  • Можно ли пользоваться Ajax с помощью SQL?

    mayton2019
    @mayton2019
    Bigdata Engineer
    Как всегда говорим о сферическом SQL... (ворчу)

    Обычно так не делают. Просто БД предоставляет слишком много доступа для ползователя. Тут надо решать вопросы и SQL инжекций и инфобезопасности. А то так любой дурак сделает 'drop database' просто получив в руки браузер.
    Ответ написан
    Комментировать
  • Как конвертировать .py (pyqt5) в .exe с изображениями?

    mayton2019
    @mayton2019
    Bigdata Engineer
    А если запускаешь exe - картинка видна?
    Ответ написан
  • Алгебра логики. Логические функции.?

    mayton2019
    @mayton2019
    Bigdata Engineer
    Там нет общих инверсий. Там каждая инверсия применяется только к части выражения.

    Покажи свои преобразования step-by-step и кто-нибудь тебе укажет на ошибку.
    Ответ написан
  • Как создать диаграмму в python?

    mayton2019
    @mayton2019
    Bigdata Engineer
    По данной картинке нельзя ставить технгическое задание. По виду - это фильтр низкой частоты (ФНЧ). Есть тысячи способов как его реализовать. Даже скользящее среднее дает эффект такого фильтра. При этом оно дешево реализуемо.
    Ответ написан
    Комментировать
  • Как сделать так, чтобы в Туркменистане работали заблокированные сервисы?

    mayton2019
    @mayton2019
    Bigdata Engineer
    Прежде чем такое делать - изучи законодательство Турмкенистана. Оно то понятно что все мы такие либеральные бородатые хипстеры и пробиваем себе туннели в любые сетки. Но нужно понимать что ты нарушаешь и что тебе грозит в случае если случайно поймают. Вариант - мелкий хулиган. И второй вариант - шпион другого государства. Я очень не советую тебе быть пойманому по второму варианту. Особенно в силовом государстве с диктатурой.
    Ответ написан
    Комментировать
  • Можно ли добавлять Null в INT поле?

    mayton2019
    @mayton2019
    Bigdata Engineer
    NULL и 0 будут давать разный результат при подчете агрегации. Sum, Avg и прочие стат- функкии будут учитывать 0 и игнорировать NULL.

    Вообще в реляционной алгебре правильно использовать NULL когда данных нету.

    Еще для некоторых dbms (Oracle) Null не индексируется. Это экономит место в сегменте индекса и делает поиск более быстрым дла nullable колонок.
    Ответ написан
    Комментировать