Имя пользователя:
Пароль:  
Помощь | Регистрация | Забыли пароль?  | Правила  

Компьютерный форум OSzone.net » Компьютеры + Интернет » Хочу все знать » как работать с большими файлами

Ответить
Настройки темы
как работать с большими файлами

Ветеран


Сообщения: 580
Благодарности: 2

Профиль | Отправить PM | Цитировать


есть файл весит хрен знает сколько , сотни гигов, в этом файле одни цифры, их надо упорядочить от 0 и до победного конца
вопрос как это сделать, чтобы сервак совсем не крякнуть

как сделать сортировку это всего лишь полстрочки в питоне (sort функция)
вопрос если просто это сделать сервер умрет.
Подскажите, как бы мне разделить на батчи целиковый файл, чтобы его просортировать, да так,чтобы сервер не убить и сколько примерно по времени такой файл будет отрабатывать. Как бы минимзировать вычислительную сложность ,чтобы он не 100 лет думал?

Отправлено: 12:57, 07-02-2020

 

Ветеран


Сообщения: 3806
Благодарности: 824

Профиль | Отправить PM | Цитировать


Цитата Iska:
Спасибо за пожелание, но — нет . Я не планирую писать чушь. »
спасибо - поправил

Цитата Iska:
Цитата Busla:
Языки высокого уровня потому и существуют, что это по сути набор ассемблерных функций надёжность и эффективность которых за вас вылизывала толпа умнейших людей. »
ЯВУ существуют исключительно для того, чтобы сократить временные затраты на написание приложений, а вовсе не потому, что озвучили Вы, коллега. »
куда-то у вас логика потерялась
то, что я озвучил и есть "временные затраты на написание приложений"

Отправлено: 19:03, 09-02-2020 | #21



Для отключения данного рекламного блока вам необходимо зарегистрироваться или войти с учетной записью социальной сети.

Если же вы забыли свой пароль на форуме, то воспользуйтесь данной ссылкой для восстановления пароля.


Ветеран


Сообщения: 27449
Благодарности: 8086

Профиль | Отправить PM | Цитировать


Busla, тогда соглашусь с Вами.

Дело в том, что, по оценкам примерно пятнадцатилетней давности, даже самое лучшее, вылизанное от и до с точки зрения эффективности времени исполнения приложение, созданное высококлассным программистом с идеальным исходным алгоритмом, будучи написано на каком-нибудь Watcom C (даже не C++, который с этой точки зрения ещё хуже) со всеми оптимизациями, с профилированием и последующей заменой критических участков на ассемблерные вставки, и каком-нибудь произвольном ассемблере — давало тридцати-сорокапроцентную разницу во времени исполнения. Такая же ситуация и по затратам памяти. Это в идеальных условиях. В не идеальных, в случае обычных программистов — разница бывала уже кратная.

Почему же все не пишут на ассемблере — это тоже понятно: оплачивается время работы программистов, а критическая эффективность исполнения требуется в очень и очень немногих случаях, и приоритет отдаётся первому (почему мы все не летаем на вертолётах, скажем — да?). Плюс, многие вещи на ЯВУ, существенные для корректного исполнения приложений, но занудные для постоянного ручного отслеживания (вроде выхода индекса за пределы массива) там делаются автоматически — не следует считать, что компиляторы «просто хуже» [Busla, это я уже не для Вас пишу, а для тех, кто будет читать и при том достаточно далёк от низкоуровнего программирования].

Насколько время обработки и затраты по оперативной памяти критичны окажутся для коллеги r-studio — кто знает. Я бы всё-таки предпочёл, чтобы он выяснил исходную задачу, потому как может оказаться, что в реальности и не потребуется сортировки всего массива данных.

Отправлено: 20:07, 09-02-2020 | #22


Deadooshka


Сообщения: 2482
Благодарности: 671

Профиль | Отправить PM | Цитировать


Там для каждой позиции (строки видимо) нужно по всем оставшимся строкам файла до конца проходиться (обычный алгоритм сортировки). Это долго, но памяти нужно только для двух строк, чтобы сравнивать по каким-то критериям. Либо можно в БД перегнать, там отсортировать и обратно...

Отправлено: 20:30, 09-02-2020 | #23


Забанен


Сообщения: 6345
Благодарности: 1436

Профиль | Цитировать


Цитата Sham:
Либо можно в БД перегнать, там отсортировать и обратно... »
Какую именно - реляционную, ключ-значение типа redis, или, может, документоориентрованную? Также интересно узнать прикидки, сколько такого ненужного ресурса как RAM понадобится, чтобы провести сортировку 100 гигабайт.

Отправлено: 21:04, 09-02-2020 | #24


Deadooshka


Сообщения: 2482
Благодарности: 671

Профиль | Отправить PM | Цитировать


Можно поменьше файл сгенерировать для бенчмарков с разными БД. Redis in-memory же.

Отправлено: 22:02, 09-02-2020 | #25


Забанен


Сообщения: 6345
Благодарности: 1436

Профиль | Цитировать


Так задача как раз гигантский текстовый файл отсортировать.

Отправлено: 22:19, 09-02-2020 | #26


Ветеран


Сообщения: 27449
Благодарности: 8086

Профиль | Отправить PM | Цитировать


Цитата Sham:
Либо можно в БД перегнать, там отсортировать… »
Именно так. Я всё ждал, предложит ли сие кто-нибудь — и не ошибся . При всех недостатках данный способ позволяет не заморачиваться деталями реализации того или иного выбранного конкретного алгоритма внешней сортировки, а поручить сие самой СУБД (примерно то, что озвучил ранее коллега Busla). Рекордов производительности ждать, понятно, також не стоит, но при данном подходе это меньшее из зол (и наиболее управляемое в дальнейшем).

Цитата Sham:
…и обратно... »
Обратно, возможно, и не понадобится. Я таки надеюсь, что коллега r-studio выяснит конечную цель сего действа, и, возможно, задача упростится.

Цитата Jula0071:
Какую именно - реляционную »
Угу. Есть ли смысл, при текущих озвученных условиях, пользовать что-то другое?!

Отправлено: 23:15, 09-02-2020 | #27


Забанен


Сообщения: 6345
Благодарности: 1436

Профиль | Цитировать


Нет никакого смысла для решения задачи использовать любую субд. Они не для этого. И реляционная сожрёт всю память и сдохнет. Чудес не бывает.

Отправлено: 23:58, 09-02-2020 | #28


Ветеран


Сообщения: 27449
Благодарности: 8086

Профиль | Отправить PM | Цитировать


Цитата Jula0071:
И реляционная сожрёт всю память и сдохнет. »
Вы это сейчас серьёзно? Вы проверяли подобное утверждение или это Ваши предположения?

Отправлено: 00:34, 10-02-2020 | #29


Забанен


Сообщения: 6345
Благодарности: 1436

Профиль | Цитировать


Печаль такая, всю жизнь работаешь с базами данных, оптимизируешь всяко, и тут такой приходит с вопросом "проверял ли ты лучший способ положить базу?"
Нет, конечно не проверял. И проверять не буду - если я захочу завершить карьеру взрывным способом, то как-нибудь в другой раз.
Iska, какая у вас должность и зарплата? тысчонок хотя бы 30 евро в год? Ну так, чтоб я понимал ваш уровень.

Отправлено: 01:03, 10-02-2020 | #30



Компьютерный форум OSzone.net » Компьютеры + Интернет » Хочу все знать » как работать с большими файлами

Участник сейчас на форуме Участник сейчас на форуме Участник вне форума Участник вне форума Автор темы Автор темы Шапка темы Сообщение прикреплено

Похожие темы
Название темы Автор Информация о форуме Ответов Последнее сообщение
Разное - Папки с файлами на флешке стали файлами, что делать? dd300 Microsoft Windows 10 6 11-12-2019 14:57
Sharepoint - MS Sharepoint 2010 - проблема с большими HTML-файлами в области совместной работы Greyman Другие серверные продукты 0 08-10-2018 17:14
HDD - Беспричинный шум головок при отсутствии нагрузки после операций с большими файлами. sputnikk Накопители (SSD, HDD, USB Flash) 4 18-06-2017 04:59
Установка - загружается как бы по кадрам с большими задержками, видео так же Дашка Microsoft Windows 2000/XP 4 10-07-2011 14:28




 
Переход