Задать вопрос
  • Как выровнять длины треков в mp4 файле?

    mayton2019
    @mayton2019
    Bigdata Engineer
    Тебя может ожидать неудача. Во первых mp4 это не звуковой файл а контейнер. Тоесть надо смотреть
    что у него внути. Это шаг первый. Допустим внутри находится mp3. Во вторых длина mp3 семпла или
    чанка не знаю как он называется может быть вообще не кратной секунде (например 28 милисекунд)
    и ты не выровняешь эти чанки строго под 10 с. В третьих тебе надо еще надо смиксовать видео
    и аудио дорожки снова. Еще одна проблема. Вобщем странное желание и лучше от него избавиться.
    Не всегда такой перфекционизм нужен.

    Как в анекдоте про уролога.
    Ответ написан
  • Как автоматизировать процесс установки программ на 1000 компьютерв?

    mayton2019
    @mayton2019
    Bigdata Engineer
    Лет 20 назад делали так. Создавали 1 эталонную машину. Потом с помощью Acronis копировали ее образ
    диска. И потом сисадми с DVD или с флешки ставил этот образ на все машины. Финальный шаг - перебивал
    ключи лицензии.

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

    mayton2019
    @mayton2019
    Bigdata Engineer
    Посмотри на то как к тебе заходит интернет в дом. Это может быть коаксиальный ТВ кабель
    с модемом. С другой стороны - розетка RJ45. Или сразу в дом заходит витая пара с таким-же
    RJ45 (только не розетка а коннектор). Удлини ее закрепи на стене.

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

    mayton2019
    @mayton2019
    Bigdata Engineer
    Скорее всего она никак не называется. JavaScript - как и Lisp являет собой универсальный
    клей
    куда можно вклевать много всего в разном порядке. Компоновать функции и значения.
    Может это компоновщик.

    Посмотри среди структурных шаблонов проектирования
    https://refactoring.guru/ru/design-patterns/struct...

    Но не всякая фантазия должна иметь свое название в каталоге науки.
    Ответ написан
    Комментировать
  • Как в numpy максимально быстро изменить структуру данных в массиве?

    mayton2019
    @mayton2019
    Bigdata Engineer
    CUDA это хорошо. Вот еще Питончик. Прошу прощения за scala-style. Рука машинально typetags пишет...
    from PIL import Image
    import numpy as np
    
    img : PIL.PngImagePlugin.PngImageFile = Image.open("pic-001.png")
    
    if img.mode != 'RGB':
      img = img.convert('RGB')
    
    img_data : np.ndarray = np.array(img)
    
    width : int  = img_data.shape[0]
    height : int = img_data.shape[1]
    
    dest_data : np.ndarray = np.zeros((width, height), dtype=np.uint32)
    
    for y in range(0, height):
      for x in range(0, width):
        pixel : np.ndarray = img_data[x,y]
        color : int = pixel[0] << 16 + pixel[1] << 8 + pixel[2]
        dest_data[x,y] = color
    Ответ написан
    Комментировать
  • Как разогнать процессор на ноутбуке с линукс?

    mayton2019
    @mayton2019
    Bigdata Engineer
    Добро пожаловать в мир зеленой повестки и тотальной экономии ресурсов.
    Все ноутбуки можно снабжать приставкой *ЭКО. Они - троттлят. Они имеют
    слабый резерв по радиатору. Они - исторически не создавались для вычислительных
    задач. И ничего вы здесь не зделаете. Максимум - вы можете разобрать их. Достать
    материнку - и собрать из нее десктоп с водяным охлаждением.

    Если у вас вычисления - купите себе нормальный десктоп.
    Ответ написан
    3 комментария
  • Есть ли языки/нотации для записи бизнес-логики?

    mayton2019
    @mayton2019
    Bigdata Engineer
    "x + y < z"

    То что вы хотите - это не язык бизнес-логики а обычная блок-схема алгоритма или
    диаграмма использования.

    Формализировать/Унифицировать запись

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

    Посмотрите еще графический стандарт BPML (Business Process Modeling Language).
    Посмотрите также обычные Activity Diagram, Use-Case Diagrams из рисовалок UML.
    Ответ написан
    2 комментария
  • Может ли python конфликтовать с amd?

    mayton2019
    @mayton2019
    Bigdata Engineer
    Предположительно у тебя минорные версии Питона и библиотек прыгнули вверх после переустановки.

    Для стабилизации environment в питонах есть 2 инструмента.
    - conda https://anaconda.org/anaconda/conda
    - venv https://python.land/virtual-environments/virtualenv

    Оба хорошие. Воспользуйся ими.
    Ответ написан
  • Можно ли использовать в wasm загрузку dll библиотеки?

    mayton2019
    @mayton2019
    Bigdata Engineer
    Здесь перечислены языки, которые могут являться источниками кода для WebAssembly

    https://webassembly.org/getting-started/developers...

    и вашего кейса среди них нету.
    Ответ написан
  • Как обработать sql-дамп bash-скриптом[sed,awk]?

    mayton2019
    @mayton2019
    Bigdata Engineer
    Дружище. Тебе не надо этот дамп обрабатывать. Загрузи его в любую БД (SQLite, postgres) и там одной
    командой сделай нужное отбеливание.

    Игры с sed/awk обычное не нужны при работе с БД. Достаточно самой БД.

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

    mayton2019
    @mayton2019
    Bigdata Engineer
    Я полагаю, что такие магазины сохраняют всё, например в postgres или greenplum, а затем передают в аналитические базы (или пишут параллельно), типа в кликхаус или oracle?


    XX век прошел под флагом реляционных СУБД. Вокруг них строились все системы.
    Для любой банковской системы БД - абсолютная царица дизайна. Именно от нее шло
    техническое задание. От базы а не от Хибернейта и синтетических таблиц как щас.
    Таблицы любили. Вокруг них строили красивые теории. Модели. EAV. Подгоняли
    аппарат алгебры (Эдгар Кодд со своими формочками).

    В появлением NoSQL и стриминговых систем - пришлось всем признать что реляционка
    исчерпала возможность линейного роста. У Майкла Стоунбрейкера есть статья где
    он меряет БД под нагрузкой и доказывает что треть ресурсов CPU просто сгорает
    в блокировках и защелках и прочих механизмах синхронизации.

    Какой софт использует розничная торговля - сложно сказать. Там будет десяток систем которые
    работают просто всместе как Grid. Например сообщения от кассовых аппаратов и платежных
    систем могут в первую очередь падать в JMS/MQ систему. А уже потом процесситься и ложиться в
    БД операционного дня. И по проишествии периода - сливаться Warehouse и в BigData
    Есть еще вариант что в аналитику сразу попадают данные со стриминга. Я такое видел.
    И это не последняя часть стека. Аналитика в свою очередь является источником для всяких
    BI, витрин данных. ОЛАП-кубиков и прочее что любят смотреть и показывать на презентациях.
    С красивой инфографикой.

    Что использует Магнит - чорт его знает. Это можно поискать по всяким конференциям. Но само
    знание или название продуктов вам ни о чем не скажет. Если они используют допустим
    Kafka+Clickhouse - из этого не следует что вам это пригодится.

    Были странные архитектурные решения. Uber например пытался выжать максимальные мощности
    из Postgres и не смог. Перешел на MySQL. Видимо им было достаточно MyISAM и брали лишь
    только те фичи что надо.

    Facebook строил Rocksdb (Key-Value) с очень сильной оптимизацией по диску. Там уже было
    не R+Tree а другой тип дерева. Тоже видимо у конторы так "пригорело" что им надо было
    штучную NoSQL делать.

    СБЕР по слухам строил на Apache Ignite прослойку между Ораклом и клиентами потому что Оракл
    не справлялся с нагрузками. Впрочем я не могу это нигде доказать. Просто слышал в разговорах
    архитекторов. И это очень штучное и очень деликатоное решение. Другим оно может вообще не подойдет.
    Нужно много думать о механике инвалидации кешей.

    Хедж фонд BridgeWater строит свои хранилища ассетов на базе Amazon S3. Реально эти ребята пихают
    в С3 все что можно. И в этом есть своя стратегия. S3 стоит дешево. И масштабируется. Дешевле чем DBMS.

    Также, я думаю, что множество магазинов могут быть обслуживаться отдельными кластерами, чтобы работа всей сети не остановилась, если какая та БД выйдет из строя?

    Эту задачу тоже можно решать на разных уровнях. Мне нравится решение от Cassandra. Там все
    таблицы имеют 1-2 реплики. И убить всю систему в целом в принципе невозможно пока последний
    датацентр стоит. Но Кассандра платит за это отказом от consistency и вообще она считается не-реляционкой.
    Хотя базовый диалект SQL поддерживает. Фактически она - умный NoSQL c хорошим сетевым протоколом
    обхода сбоев и конфликтов. Кажется Netflix ее активно использует.

    Вобщем можно дизайнить системы по разному усиливая одни части и ослабляя другие.
    Это как тот треугольник дешево-медленно-дорого но в углах стоят разные качества. Например
    CAP-свойства систем. Или приоритеты. Тебе что важно. Быстро записать в БД платеж? Но при этом
    чтение оперативных данных потребует лагов. Или наоборот писать медленно зато чтоб все по ящичкам
    и по коробочкам лежало да и еще в разных копиях и вариациях.
    Ответ написан
    10 комментариев
  • Как улучшить код?

    mayton2019
    @mayton2019 Куратор тега Java
    Bigdata Engineer
    Так не делается.

    Согласно лучшим практикам (best practices), ты должен сначала покрыть
    свой код тестами.
    Тоесть представить на наше обозрение проект, который
    компилируется и тестируется. И после этого мы сможем предлагать различные
    improovements для кода базируясь на улучшении производительности
    и на уменьшении например метрик code complexity.

    При этом все изменения не должны ломать тесты. Это - очень важно.

    По коду. Непонятно, почему в методе swapCharacters ты применил StringBuilder
    и в то-же время в textModifier ты решил использовать replace и конкатенацию
    строк. По отдельности к каждому методу нет вопросов. Но есть вопрос по единообразию
    кода. Уж коли ты решился на суровые оптимизации скорости - то нужно выдерживать
    работу в таком ключе. Это - совет по конвенции кода по отношению к своим проектам.
    Договорись сам с собой. Тебе важен перформанс или просто ты делаешь POC и тебе нужен краткий код?
    Ответ написан
    Комментировать
  • Как увеличить производительность проекта на python?

    mayton2019
    @mayton2019
    Bigdata Engineer
    Когда начались тормоза, сразу добавил новый инстанс приложения, производительность практически удвоилась, но позже и второй инстанс начал задыхаться, добавил третий и производительность не увеличилась. Запустил профилировщик, увидел, что все упирается в бд, на ум сразу пришло вынести эту часть в микросервис, а основной монолит будет обращаться к этому микросервису, но опять же проблема, а что будет, когда и этот микросервис начнет задыхаться?

    Вопрос интересно звучит. Как будто - куда "соломки" положить чтоб мягче падать.

    Пускай планом Б у тебя будет просто поднятие еще одной БД или нескольких БД с балансировкой.
    Если 1 база не успевает отработать поток, по пол-потока или треть она успеет.

    Попробуй мемоизировать результат ответа от БД. Положи в Redis. Это на тот случай если есть
    горячие комбинации парамтеров запроса и есть вероятность что клиент их затребует несколько раз.

    Подскажите, что можно предпринять (если менять архитектуру, то на какую)? Пожалуйста, подробнее и более простым языком (для тупых).

    На данный момент ничего менять не надо. Т.к. непонятно в какую сторону тебе двигаться.
    Однозначно тебе нужен хороший специалист по БД. Он должен уметь смотреть execution
    plans и давать советы по тому какой сет индексов построить. Иногда помогает переход
    в архитектуру Key-Value dbms (если это только не противоречит бизнесу). Поэтому я не скажу
    что это совет. Это скорее мысль, о чем можно говорить с бизнесом.
    Ответ написан
    Комментировать
  • Как разбить треугольник в прямоугольной области на N треугольников?

    mayton2019
    @mayton2019
    Bigdata Engineer
    У тебя две задачи.

    1) Первая - это пересечение треугольника и прямоугольника. Я не помню никаких
    названий или реализаций этого алгоритма. Да. Сазерленд тебе будет полезен. Но он решает
    только прямую и прямоугольник. Попробуй рассматривать треугольник - как многоугольник
    и отрезай от него по одной стороне с 4 сторон.

    2) Вторая называется - триангуляция. Она много где описана в инженерной графике. Книг
    точно не помню но поищи. Шикин и Боресков. Эгрон. Павлидис. Они точно должны были
    что-то писать про это.
    Ответ написан
    Комментировать
  • Что выбрать для параллельных вычислений на GPU с большой точностью?

    mayton2019
    @mayton2019
    Bigdata Engineer
    В терминологии С++ выше double (64bit) находится __float128.
    Я-бы проверил поддерживает ли CUDA/OpenCL эти типы
    на уровне API. Если вдруг не поддерживает - то придется
    их реализовывать самому.

    До того как их реализовывать я-бы спросил у автора - действительно
    ли ему нужны числа с такой мантиссой и экспонентой как он хочет
    и для каких алгоритмов. В большинстве случаев в алгоритмах
    всегда есть маневр. Есть возможность где-то срезать углы и не делать
    избыточных расчетов. Тем более что для нужд физики обычного double
    хватает. Что такого надо считать чтобы double не хватало - я не знаю.
    Поперечник обозримой вселенной в пропорции к планковской длине?
    Ответ написан
    6 комментариев
  • Как подменить цифровые отпечатки на Android?

    mayton2019
    @mayton2019
    Bigdata Engineer
    Если ты поменял себе руку - то срочно позвони своему банковскому менеджеру
    и спроси что делать и как обновить отпечатки.

    По поводу антифрода - это не знает никто. Античит и антифрод - это ноу-хау и никто не станет
    рассказывать об этом в хабре. Тем более что эти системы постоянно улучшаются и изменяются.
    Ответ написан
    Комментировать
  • Как узнать imei usb модема если наклейки отклеены?

    mayton2019
    @mayton2019
    Bigdata Engineer
    Непонятная модель. Надо пробовать At команды вроде

    AT+GSN
    
    AT+IMEINUM
    
    AT#CGSN
    Ответ написан
    Комментировать
  • Ложное срабатывание на sfx архив?

    mayton2019
    @mayton2019
    Bigdata Engineer
    У меня давным давно была подобная проблема. И я помню что мы делали упаковку клиента БД
    в MSI-Installer.

    Развернуть дистрибутив. И добавить парочку ключей в реестр - все это работало.

    https://learn.microsoft.com/en-us/windows/win32/ms...

    По поводу самораскрывающихся архивов (WinRar, упаковщиков и кастомных инсталлеров).
    Вот у врачей есть такое выражение - благоприятная среда
    для развития микробов.
    Вот это выражение здесь подходит. Из всех изобретений Microsoft - sfx
    архивы это древнее хтоническое зло, которое никогда не должно было быть создано.
    Ответ написан
    Комментировать
  • Как создать exe приложение на macOS?

    mayton2019
    @mayton2019
    Bigdata Engineer
    Python исторически не создавался для компилляции в бинарники.

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

    mayton2019
    @mayton2019
    Bigdata Engineer
    Звонок действительно может быть - частью коллекторской активности которая собирает живые номера.
    Но взлом происходит не через звонок а через анализ социальных сетей, где ваш телефон мог появлятся.

    Поэтому - ответ нет. Но будьте внимательны к тому что пишете и публикуете. Какие у вас пароли?
    Везде ли одинаковые? Есть мультифакторка? Как часто устанавливаете себе на телефон игры
    и прочие развлекательные приложения?
    Ответ написан
    Комментировать