Задать вопрос
  • Потребление ресурса записи ssd и как потребление памяти уменьшить?

    mayton2019
    @mayton2019
    Bigdata Engineer
    Потребление ресурса записи ssd и как потребление памяти уменьшить?

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

    Ты совершенно правильно выбрал HDD для торрентов и фильмов. Я тоже так делаю уже 5 лет.
    Проблем никаких и мой NVM 2017 года до сих пор жив.

    Чтобы не быть голословным. Любая проблема измерима. Например у тебя есть некая средняя
    суточная нагрузка. Посчитай ее. Есть утилиты smartctl под Linux

    sudo smartctl -t long -a /dev/***
    Смотришь таблички. Там есть трешолды. Алёрты и прочие метрики здоровья.

    Есть графические наподобие HDTune под Windows. Их похожих несколько. Они показывают
    здоровье диска и прогноз на будущее.

    Любой инженер по этим цифрам может прикинуть срок жизни устройства.

    Можно накидать тебе всяких советов наподобие отключения обновления "даты файла при
    листинге каталога" или перенос paging файла на HDD но я считаю это шум и суета до тех
    пор пока ты не сделал ИЗМЕРЕНИЯ и сам себе не доказал что это реально необходимо.

    В противном случаае все советы - это гомеопатия и прочие бабушкины выдумки типа кушать
    чеснок чтоб не болеть в следующем году. Я уже кушал. Получил гастрит. Спасибо за вредные советы.
    Ответ написан
    Комментировать
  • Табличная бд, вопрос: как читать данные?

    mayton2019
    @mayton2019
    Bigdata Engineer
    Колонки нельзя называть цифрами. Обычно дают имена начиная с латинских букв. id, c1, c2 например.
    тогда
    SELECT c2 WHERE id = 1
    выдаст
    C
    Вообще твой вопрос не про базы данных а про матрицы в программировании. По крайней
    мере ту картинку что ты нарисовал в чистом виде в БД никто не кладет.
    Ответ написан
  • Можно ли узнать ip и др.?

    mayton2019
    @mayton2019
    Bigdata Engineer
    IP адрес - это обычно адрес роутера куда включено куча телефонов друзей родственников соседей и собака с кошкой.
    Я сомневаюсь что пробив IP адрес можно физически соединить с преступником. Можно узнать
    владельца интернет-договора но при чем здесь этот бедняга? Он и невкурсе скольким друзьям
    и соседям wifi слил. Или просто у него пароль был 123.

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

    По поводу SWAT, вертолетов и прочее. Попробуйте в реальной жизни этот SWAT куда-нибудь отправить. В ПГТ или частный сектор например. Где даже номера домов толком не написаны. Этот сват там на пол-дня застрянет
    и будет спрашивать где найти улицу.
    Ответ написан
  • Как вывести кириллицу в консоли IntelliJ IDEA?

    mayton2019
    @mayton2019
    Bigdata Engineer
    У тебя исходники кривенькие. Текстовые литералы пробиты в win-1251 например.
    Пересоздай их заново в utf-8.
    Ответ написан
    Комментировать
  • Можно ли сделать так, чтобы когда электричество дешёвое, сервер работал на максимум?

    mayton2019
    @mayton2019
    Bigdata Engineer
    Если смотреть с точки зрения физики - то есть много путей как решать эту задачу.
    По топику не очень понятно как сервер будет узнавать о падении цен? Наверное имеется в виду
    дневной ночно тариф. Ну допустим с 22 до 10 дешевое 0.02 цента и с 10 до 22 - дорогое по 12 центов.

    Тогда наша задача ночью - где-то накапливать электричество а днем его прожигать из этого накопителя.
    Подойдет просто мощный UPS который выдерживает 12 часов. Тем более что разница в двух тарифах
    6 кратная. Дизель-генератор тоже подойдет. Если посчитать. Вот. В некоторых странах вроде-бы есть
    гидро-электростанции которые ночью наполняют природные озера водой а вечером в час пик просто
    сбрасывают эту воду на генерацию вроде как для балансировки пиковой нагрузки. Здесь получается что вода
    накапливает кинетическую энергию для вечера. Вода - аккумулятор.

    Вот и майнинг-ферма может спокойно работать не сбавляя оборотов.
    Ответ написан
  • Разделение ответственности или производительность?

    mayton2019
    @mayton2019
    Bigdata Engineer
    А где проблема вообще? Ну будет 2 нотификации. Но они ведь нацеленные на своего потребителя?
    Тот кому надо их и прочитает. Или тут экономят сетевой трафик? Короче непонятно.
    Ответ написан
  • Не работает платёжка в боте тг на telebot, почему?

    mayton2019
    @mayton2019
    Bigdata Engineer
    Валюта неправильная. Вот он как-бы и пишет 400-й код http ошибки

    Error code: 400. Description: Bad Request: CURRENCY_INVALID"


    Побуду капианом сегодня.
    Ответ написан
  • Как запустить код C# через Python, с возможностью сбилдить проект в exe файл?

    mayton2019
    @mayton2019
    Bigdata Engineer
    Мне нужно каким-то образом запускать dotnet проект C# через Python скрипт, чтобы в последствии я мог сбилдить python скрипт в exe файл.

    С точки зрения CI/CD технологий в этом нет никакого смысла. Обычно на вершине стека сборки стоит
    самый простой скриптинг наподобие bash.

    Для каких-таких целей тебе нужен там C#? Какие мотивации к этому? Если желание использовать C# просто продиктовано твоим незнанием - тогда занимайся больше обучением.

    Про Python в exe уже много раз тут писали. Для серверных процессов это не нужно. А если рассматривать
    способ дистрибуции десктопов - тоже проблемно. Вечный источник вирусной угрозы.
    Ответ написан
  • Node js или пайтон для работы с изображениями и цветом?

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

    По поводу "собираюсь сделать прогу". Тебе надо обозначить правильную цель. Потому что изучать
    node это одна цель. А делать фильтр картинок это совсем другое. Смыслы как-бы разные.
    Ответ написан
  • Замена числа N, на число N+1, но только в определенных строках?

    mayton2019
    @mayton2019
    Bigdata Engineer
    Дружище. Тебе это не надо делать.

    Тебе код надо полностью переписать. Потому-что в таком виде он - ужасен.
    Заведи справочник card => item (x,y,z) и дальше я или другие тебе подскажут
    как делать.
    Ответ написан
  • Какие linux дистрибутивы можно установить на пк с 8 гигами озу?

    mayton2019
    @mayton2019
    Bigdata Engineer
    Основным консюмером памяти в десктопах является именно UI. Практически ты можешь брать любые дистрибутивы на базе XFCE и они должны норм работать. Это главная причина почему XFCE существует. По поводу вырвиглазности я вообще не понял. Ты куда смотреть будешь? В веб-содержимое или в XFCE ?

    Вообще если ты такой сёрфер которому надо 10 вкладок и скорость - то ты должен сам понимать что браузеру просто необходима память. Потому что шрифты и картинки и буферизованные видео всегда будут требовать много. И здесь просто работает обычная экономика. Если у тебя много памяти - то браузеру комфортно. Если мало - то его ресурсы падают в paging со всеми вытекающими. И здесь не будет волшебной таблетки. Будет просто плавная деградация производительности. Умеряй аппетиты короче.
    Ответ написан
    3 комментария
  • Как я могу конвертировать число в символ?

    mayton2019
    @mayton2019 Куратор тега Java
    Bigdata Engineer
    System.out.println((char)3);

    Так не надо делать. Это получение Unicode символа по коду 3.
    Оно сработает но с точки зрения code-review некрасиво и твоя команда
    будет тебя бить и чморить за такой способ кастинга.

    В java есть специальные литералы для работы с кодировками.
    Например для символа с кодом 3 (однобайтного типа ASCII)
    '\x03'
    Или например для кириллической буквы А в кодировке UTF-16
    '\u0430'
    Ответ написан
    3 комментария
  • Что можно написать новичку на асм?

    mayton2019
    @mayton2019
    Bigdata Engineer
    Если ты новичек - начни с простого. Когда я учился в универе - у меня был просто интерес написать
    графическую библиотеку для SVGA/VGA режимов графики. На дворе стояли 90-е и тогда не было
    никаких ускорителей и видяшки назывались S3/Trident. Вобщем сильно много я не написал.
    Было просто рисование цветных трапеций на экране. И это чудовищно непроизводительно для
    процесса разработки. Любой С++ ник заткнет тебя за пояс по скорости выкатки новых фич.
    А качество кода на выходе у gcc вполне себе хорошее чтобы не найти вообще кейсов где
    человек может лучше написать. Вообще в чем заключается оптимизация на асме? Держать
    в голове карту регистров и помнить какой из них под чего использован. Еще неплохо-бы
    помнить что у тебя в кешах лежит.

    Что еще из простого. Попробуй реши квадратное уравнение на FPU и на SSE. Это разные
    техно-стеки и будет познавательно сравнить какой способ лучше или удобнее.
    FPU - это легаси но он еще поддерживается в железе. Я тоже хотел когда-то написать но бросил
    в силу своей нетерпеливости. Мне было интересно понять насколько FPU близок к языку Forth.

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

    Вобщем брутфорсы и умноженя матриц это очень круто но ту просто попробуй это ПРАВИЛЬНО решить
    на языке высокого уровня и проникнись с сложностью решения. И я думаю на этом этапе ты устанешь
    и не пойдешь дальше. Вообще ассемблер - это язык очень узкого применения и какие-то языковые
    фичи (ООП) в ассемблере уж точно не нужны. Ну по крайней мере они там не имеют какого-то явного
    преимущества.
    Ответ написан
    Комментировать
  • Активно ли разработчики пользуются встроенными в Postgres функциями?

    mayton2019
    @mayton2019
    Bigdata Engineer
    Кину 5 копеек по поводу работы с датами. Да это зло. Работа с датами в современном API это
    самый большой технический долг начиная с Unix, когда дата представлялась секундами с 1970 года
    в виде DWORD. Я не встречал ни одного языка программирования и ни одной DBMS где изначально
    была-бы какая-то очень строгая и математичная концепция работы с временем. Везде были ограничители
    в основном завязанные на примитивные типы либо на строки вариативной длины. В Java например
    долгое время экплуатировался тип java.util.Date который сегодня считается дыркой (мутабельность)
    и неточным и его заменяют на java.time.* семейство типов. Параллельно с ним где-то в космосе
    висит java.sql.Date который декларирован в интерфейсах JDBC как основа для БД. С ним-же и работают
    все драйвера реляционных бд.

    По поводу вычислений на application tier. В последнее время DBMS девальвировали. И в основном
    используются в микросервисах как хранилище таблиц без особой логики. В этом есть свои смыслы.
    Например удобнее тестировать и хранить 100% кода в языках Java/Node/C#. Это создает гомогенность
    языка в проекте. В противном случае логику пришлось бы неизбежно резать на 2 слоя и хранить
    половину в application и другую половину деплоить через flyway/liquibase в БД при этом еще и
    не забыть тестировать 100% совместимость тех-же функций для работы дат-времени (никто
    кстати невкурсе что в Oracle год может быть 9999 а java.util.Date мне удалось сгенерировать
    такую Aug 17 09:12:55 EET 292 278 994. .. оптимистичненько доживем до 290 миллионов
    лет хотя проблема comparison этих типов остается) Стандарты ISO помогают но они скорее
    декларируют намерения сохранить нужное значение. Вот и если вы новичек - то я гарантирую
    что вы словите кайф в попытке в Java разобраться в проекте какой тип дат вам брать. И еще
    помножите это все на типы данных БД (их там будет 4 штуки обычно. Парочка для зональных
    и парочка для локальных).

    Использовать или нет функции PG? Ответ - it depends. В некоторых случаях оптимизатор не видит
    индекса если ты делаешь неявный кастинг из строки в дату например. Я тут не уверен надо проверять.
    Но есть старая админская поговорка. Плохой execution plan - проверь типы данных в предикатах.
    Беда реально существует для Spark/Databricks и даже включена в учебный план. По крайней мере int/Long
    различается на уровне Catalyst-optimizer. Вобщем если вы - лентяй то можете лупить строки вместо дат
    и надеятся что SQL машина правильно интерпретирует. Если вы хотите быть точным то делайте CAST или
    to_date с явным описаловом YYYY-MM и т.д.

    Еще один поинт в части где хранить логику. Это я пишу просто для кругозора. Чтобы топик
    не циклился вокруг Постгреса а люди видели пошире. В классических БД данные качаются
    к клиенту.
    Тоесть делаете SELECT * из миллирад строк - и этот миллиард будет прокачан до конца
    когда вы читаете резалт-сет по сети. Такова парадигма. Или курсор. Но суть таже. А в BigData данные
    лежат на месте но к ним "ходит" код
    . Вот такой метафизический парадокс. Сами понимаете что
    тут получается что встроенных функций даже как бы ... и нет. Подчеркиваю разницу.
    Ответ написан
    3 комментария
  • Как ускорить агрегацию данных в PostreSQL?

    mayton2019
    @mayton2019
    Bigdata Engineer
    Ммм... Можно данные разбить по периодам. Месяцы. Годы. Кварталы. И считать агрегации только по последнему
    закрытому периоду. А по старым - считать не надо. Потому что уже посчитаны. Главное сохранить куда-то.
    Типа analytic_table.
    Раньше эта техника называлась OLAP. А щас ее вроде бы уже не используют. Заменили на BigData.
    Ответ написан
  • Можно ли перенести диск с Linux(Ubuntu) на другое устройство?

    mayton2019
    @mayton2019
    Bigdata Engineer
    Это квест вообще. Более перспективный вариант как мне кажется - это все таки установить новый экземпляр
    ОС а со старого диска брать только HOME.
    Ответ написан
    Комментировать
  • Как правильно решить конфликт?

    mayton2019
    @mayton2019
    Bigdata Engineer
    Это не про GIT/Gitlab. Это про программирование.

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

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

    mayton2019
    @mayton2019
    Bigdata Engineer
    За 40 лет существования протокола TCP/IP ничего не изменилось. Чтобы один хост соединился
    с другим - ты должен знать dest_addr, dest_port.
    Ответ написан
    Комментировать
  • Как в Python перейти на другой диск?

    mayton2019
    @mayton2019
    Bigdata Engineer
    Попробуй так

    os.chdir('d:/Downloads')
    Ответ написан
    Комментировать
  • Как убрать ввод исходных чисел и операций при тестировании программы на python?

    mayton2019
    @mayton2019
    Bigdata Engineer
    Берешь текстовый файл input.txt и записываешь в него все текстовые вводы. В том числе с переводами строк.
    Потом запускаешь примерно так

    $ python3 app.py < input.txt
    Ответ написан