Задать вопрос
  • Как изолировать один физический диск от двух других?

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

    Но когда будешь изучать команды типа fdisk, parted, mkfs то лучше конечно ценную ОС отключить вообще.
    Ответ написан
    2 комментария
  • Почему я получаю данную ошибку?

    mayton2019
    @mayton2019
    Bigdata Engineer
    Мне кажется ты смешал в кучу две разные технилогии. Bind variables. Это вставка специальных переменных
    в тело DML/DQL запроса вместо значений. Это поддерживается на уровне БД. Это важно для БД потому что идет компилляция текста запроса для повторного его исполнения много раз.

    И интерполяция строк. Это просто тупо генерация новой строки. К базам не имеет отношения.
    Это поддерживается Python например. Строковой интепорляцией ты можешь сделать первую часть запроса.

    Сделать нечто вроде
    "UPDATE emp SET ename=? WHERE empid=?"
    (кстати в синтаксисе у тебя скорее всего была ошибка)

    И потом уже вместо вопросительных знаков добавить bind variables.
    Ответ написан
    Комментировать
  • Можно ли как-то отследить прогресс добавления колонки в БД?

    mayton2019
    @mayton2019
    Bigdata Engineer
    Нужно добавлять в часы когда пользователи не работают с БД. И добавлять в несколько этапов.
    Сначала просто добавить колонку. Потом ее дефолтное значение обновить. Это можно порциями делать.
    Потом констрейнты и триггеры добавить. И смотри чтоб ты не пересекался с джобом который делает
    вакуум.

    Сколько времени - ждать ХЗ. Наверное в PG есть monitoring views которые показывают текущие активности.
    Но это я не знаю. Пусть другие подскажут.
    Ответ написан
    Комментировать
  • Как испровить медленный запрос к базе данных?

    mayton2019
    @mayton2019
    Bigdata Engineer
    Из быстрых советов - проверь что Subdivision_ID проиндексирован.
    Ответ написан
    Комментировать
  • Сказано, что различие между for и while в пространстве видимости. Что это значит?

    mayton2019
    @mayton2019
    Bigdata Engineer
    Наверное имеется в виду это. Вот тут переменная i может быть использовани и после цикла.

    int i = 0;
    while(i<10) {
     doSomething(businessObj[i]);
     j++;
    }
    i = 0;


    Кострукция for - замыкает область видимости и переменную не видно. Хотя в наше
    время код больше тяготеет к более function-style кодингу когда итератор
    или параметр цикла вообще не нужен. У нас есть некий foreach и он делает все что надо.
    Ответ написан
    4 комментария
  • Что значит "знать PostgreSQL"?

    mayton2019
    @mayton2019
    Bigdata Engineer
    Ух. Нет предела совершенству. Можно начать читать отсюда https://www.postgresql.org/docs/current/index.html

    Если спрашивают на собеседовании - то у них есть конкретная позиция или должность например DBA или разработчика. У них - очень разные задачи. Например DBA заниматеся бекапами, перформансом. Поднимает новые экземпляры БД для бизнеса. Лечит упавшие. Делает апгрейд версий софта. Вобщем поддерживает непрерывный цикл работы. Если спрашивают на разработчика (к примеру для банка) - то нужно знать режимы работы транзакций (их там 4 штуки кажется). Нужно знать и применять индексы. Оценивать когда они полезны и когда - бесполезны. Писать триггеры и хранимые процедуры. Если ты идешь разработчиком в какой-нибудь 2ГИС то будут спрашивать гео-поисковые возможности PG. Кроме того в наше время разработчик с БД работает малую часть времени. Все таки его основными языками будут Java/C# e.t.c. и фреймворки типа Hibernate. И нужно распределять усилия. Чистых БД разработчиков я уже лет 10 не видел. Поэтому стоит ли "упарываться" прямо в постгрес - ну я не знаю.

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

    mayton2019
    @mayton2019
    Bigdata Engineer
    Мне нужно совершить запрос по url адресу : primer.primer/keyword='слово'
    И следовательно чтобы все пройти в один поток, нужно много времени, поэтому нужна многопоточность. Очень надеюсь на помощь :)

    Нет-нет. Это все - полная фигня постановка. Так не работает. Если кто-то что-то хочет быстро искать - он создает специальные структуры данных оптимальные для быстрого поиска. Например этот txt-файл со словами записывается в Python dictionary и там и лежит себе. Для поиска - самое оптимальное. Если памяти не хватает
    то тогда этот текстовый файл переписываелся в БД типа SQLite. И ищется там уже с механиками индексов
    и с более рациональным (блочным) использованием памяти (там кажется mmap используется).

    Мультипоточное чтение файла здесь особо ничего не дает. При холодном старте - будет даже хуже чем одно-поточное.
    Ответ написан
    Комментировать
  • Как ужимать jpeg без потери цветов?

    mayton2019
    @mayton2019
    Bigdata Engineer
    Не очень понятен смысл твоей экономии. Что ты хочешь выторговать?

    Скорее всего цвет страдает при использовании цветовой модели Y(Cb)(Cr). В этом режиме
    отдельно кодируется черно-белая яркость одним каналом. И еще двумя другими каналами
    кодируются цветовые разности. На них идет жосткая экономия. Прореживают и по разрешающей
    способности (chroma subsampling) и еще возможно по квантизации. Короче экономят на красках.
    Это не ново. Это цветовая психо-физиология. Подтверждено экспериментами на людях. Об
    этом знали еще в 20м веке когда строили телевизионные системы типа PAL/Secam.

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

    Я не помню поддерживает ли JPEG RGB модель. Но поищи. И начни искать в фотошопе а не в этой
    стрёмной библиотеке PIL. Кстати почитай насколько глубоко она работает с JPEG. Использует
    ли она сишный libJPEG или у нее самопальный алгоритм. По идее в RGB модели должно
    быть более равномерные потери для цвета и яркости. Но результат будет не лучше.

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

    Посмотри в JPEG2000 который умер так и не родившись. Но возможно там будут идеи которые тебе будут
    интересны.
    Ответ написан
    Комментировать
  • Как собрать библиотеку из кода для 16-bit ОС для работы в 32-bit \ 64-bit ОС?

    mayton2019
    @mayton2019
    Bigdata Engineer
    Тут еще такая тема что на эту задачу трудно написать acceptance criteria. Ну допустим пойдет автор на фриланс. Сделает заказ. Ему скажут готово. Переписал. Он скажет - не работает. А они скажут - пуговицы пришиты нормально.
    Какие претензии? Скользкая это постановка. Вообще надо ставить новую задачу о разработке софта. Это знания из ДОС-овского исходника можно использовать а можно и выкинуть. Но упор здесь должен быть именно на разработку.
    Ответ написан
    Комментировать
  • Почему SpringBoot не видит ни одного моего бина?

    mayton2019
    @mayton2019 Куратор тега Java
    Bigdata Engineer
    А попробуй так

    System.out.println(applicationContext.getBean(ConnectionPool.class));
    Ответ написан
    4 комментария
  • Как рассчитать экспоненциальное скользящее среднее с учётом различных по длине временных интервалов?

    mayton2019
    @mayton2019
    Bigdata Engineer
    Вот подумалось что для того чтоб расчитать экспоненциальное скользящее среднее c gaps нужно все равно расчитать какое-то скользящее среднее.

    Рекурсия получается.
    Ответ написан
    Комментировать
  • Как реализовать автоматическое развертывание сайтов на поддоменах?

    mayton2019
    @mayton2019
    Bigdata Engineer
    Почитай про такое понятие как Blue-Green deployment. Его можно реализовывать по разному. Наверное можно с докером и с кубером и без них.
    Ответ написан
    2 комментария
  • Стоит ли разработчикам платить за баги?

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

    С точки зрения бизнеса - идет просто почасовая оплата за активности разработчиков. И бизнесу по большему
    счету все равно как распределяется время внутри спринта. Но во власти команды разработки принять какие-то
    решения которые уменьшают вероятность возникновения бага за 5 минут до релиза. С моей точки зрения
    здесь модульные тесты и код-ревью полезны. Но бизнесу об этом сообщать не надо. Это внутренняя кухня
    разработки и написание тестов идет просто как часть процесса разработки.

    И если например сравнивать риски появления бага в релизе с одной стороны или еще +20% времени
    на написание логики с тестами с другой стороны - то я выберу второй вариант. Так - спокойнее.

    Так разработчик спокойно идет в пятницу пить пиво и не думает о нежданчиках или о том
    что ему позвонят и дёрнут на работу.
    Ответ написан
    Комментировать
  • Почему не собиратеся сборка gradle?

    mayton2019
    @mayton2019 Куратор тега Java
    Bigdata Engineer
    Он же тебе предлагает запустить с --debug опцией. Запускай. Смотри. Сетевая ошибка может быть.
    Ответ написан
  • Можно ли использовать внешний накопитель для установки программ?

    mayton2019
    @mayton2019
    Bigdata Engineer
    По поводу NTFS/ExFat - для самих приложений ничего особо не меняется. Ну я не знаю приложений
    которые-бы как-то были завязаны на эти свойства. Это может для админов безопасности там важно.

    Хорошая ли это идея. Тут надо рассмотреть опции. Я часто смотрю кино с портативного диска. Иногда
    кошка может прыгнуть на системник. Пошатать что-то и диск может отмонтироваться. Бывает. Но с кино ничего не происходит. Доступ read-only. Кошку выгнал. Диск подключил и смотрю себе дальше. А что с приложениями?
    Дело в том что когда программист пишет код с I/O - он считает что диск всегда доступен. Совсем всегда.
    И ситуация когда диск вдруг отьехал - катастрофична. Может ли ОС работать когда диск c: отключился?
    Скорее нет чем да. Вобщем отсутсвие диска - катастрофа для приложений. И особенно для приложений
    которые в этот момент что-то сохраняли на диск - это отложенная катастрофа. Вы последствия
    почувстуете после следующего запуска. В противоположность - сеть. Она изначально проектируется
    как опционально-доступная и все программы при обработке сетевых ошибок используют ретрай-логику.
    Тоесть просто ждут и повторяют операции. Толерантны к сбоям.

    В противоположность I/O ошибки записи - нихрена не толерантны. Это сразу выпадение программы в ОС
    с сообщением "я не шмогла!". Это не относится ко всем программам а просто к большинству. К 80%
    программ если хотите.

    Вобщем все зависит от класса I/O операций ваших приложений. Если это как просмотр фильмов - то можно.
    Если это КАК postgres с журналом - то есть риск получить полностью поломанную файловую системую и
    неработающие приложения. Как работают ваши секвенсоры и плагины? Часто они делают запись?
    Насколько запись критична для работы "здесь и сейчас"? Что будет если их структуры данных
    для записи оказались записаны "наполовину"? Вот это вопросы на которые вы должны ответить.

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

    mayton2019
    @mayton2019
    Bigdata Engineer
    Капец ты продуктивный кодер. Это надо-же столько много букв написать.
    Никто разбираться скорее всего не будет.

    Но я-бы предложил тебе стратегию как в будущем не залетать с такой бедой.
    Тебе надо стартовать новый проект который точно работает (hello world) на ботах.
    И потихоньку начинай переносить свой функционал в новый проект. И делай запуск и тестируй.
    И делай каждый раз git commit.

    Наступит момент когда он упадет - это и будет проблемное добавление. Дальше - откатывайся взад
    и разбирайся какое изменение привнесло дефект. Процесс можно ускорить если добавлять дихотомически.
    Сначала +50%. Упало. Удалил 25%. Едет. И так далее.
    Ответ написан
    Комментировать
  • Как найти файлы модифицированные в диапазоне дат?

    mayton2019
    @mayton2019
    Bigdata Engineer
    Ну... в линуксе есть утилитка stat которая выдает аж 3 даты. Одна из них - то что тебе надо.
    В линуксе есть итератор (find) который может обойти всю файловую систему и выдать все файлы.
    Вот. Твоя дата подходит под шаблон "2022-0[345]". Можешь взять grep/gawk и выбрать все что подходит.
    Получается pipeline. Find ищет. Stat трансформирует. Grep фильтрует.
    Вот такой вот план. В традициях ФП. Пробуй. И не ищи однострочники. Хороший софт может быть написан в виде
    bash скрипта например.
    Ответ написан
    Комментировать
  • Как сравнить значения из разных моделей в Go?

    mayton2019
    @mayton2019
    Bigdata Engineer
    А попробуй замени это
    {{$projectID := .Note.ProjectID}}
    на константу
    {{$projectID := "00000011112222" }
    Ответ написан
    Комментировать
  • Где взять анти-паджинатор?

    mayton2019
    @mayton2019
    Bigdata Engineer
    Нужно собрать содержимое всех страниц в одну кучу.

    Поисковики правильно делают оптимизируя доступ. И если ты будешь качать все 5 млн результатов
    - это дорогой response получается для ресурсов гугла.

    У гугла есть custom search JSON API который просто предоставляет стандартный API на базе REST
    где тоже pagination но уже парсить ничего не надо и можно заниматься склейкой коллекций в один
    поток.
    Ответ написан
  • Как сравнить две папки и недостающие файлы перекинуть?

    mayton2019
    @mayton2019
    Bigdata Engineer
    что после неудачного переноса файлов на облако

    С этого момента - поподробнее. Дело в том что обычные файловые API для сравнения фолдеров
    работают только с смонтированными файловыми системами. Если ты использовал
    AWS(Amazon), az (azure) утилиты для переносов то надо искать другое решение проблемы
    или пытаться смонтировать облачную файловую систему.
    Ответ написан
    Комментировать