Древнее золото редко блестит

« картинки и свежие анекдоты | чат

Древнее золото редко блестит

Однажды я писал утилиту для анализа большого объёма сильно связанных данных на XML + C# — заказчик хотел модные (в 2007 году) технологии. Ничего сложного — XML-документ загружался в память, последовательно обрабатывался, результаты складывались в базу. Проблема была в сильной связанности — при обработке почти каждого узла приходилось подгружать целые секции из разных концов этого же документа.

Когда соотношение объёма входных данных и объёма ОЗУ машины пересекло критическую отметку, программа сошла с ума. Показатель Time in GC достиг значения 98%, а значит, программа не работала, вместо этого среда выполнения занималась очисткой и дефрагментацией памяти. Проведённое расследование показало — при нехватки памяти и попытке подгрузить дополнительные данные для обработки текущего узла ОС скидывала обрабатываемые данные в своп, а затем доставала их обратно. И сборщик мусора работал над свопом, что в тысячи раз медленнее работы с ОЗУ.

Решением был файловый ввод-вывод. Я переписал программу, используя свой велосипедный страничный ввод-вывод и формат CSV вместо громоздкого XML. После этого она могла обрабатывать любой объём данных, независимо от ограничений ОЗУ машины, с постоянной скоростью, не отвлекаясь на дефрагментацию своп-файла и вообще его не используя.

К чему я всё это. Файловый обмен — замечательная вещь, и мало форматов лучше, чем CSV. Он легко читается машиной и человеком, его поддерживают большинство программ — от офисных до научных пакетов. Используя магию bash, его можно бить на части (подзадачи для вычислительной фермы, например) или объединять (результаты вычислений), записывать в сеть, в устройства, в другие процессы, выложить в облачное хранилище или отправить по email, перезапросить в случае отказа сети, создать резервную копию, принять и обработать тысячей и одним способом.

Если технология существует давно, это не значит, что она плохая. Это значит, что она уже пережила пару поколений желающих использовать только новейшие технологии. Они ушли или перегорели, а технология осталась.

Комментарии:

aftepaime

We summarize the clinical and laboratory results from the period between his first visit at 9 years of age and his last postoperative follow up at 15 years of age and discuss the postoperative course of outcomes <a href=https://buycialis.hair>buy cialis uk</a>

OyFqNYhdR

<a href=https://dapoxetin.sbs>priligy reviews</a> Tender, swollen breasts are another very common early pregnancy sign

Комментарий:

Ваше имя:

Ещё интересное на этом сайте:

Мораль атеистов
Легендарный вратарь Лев Яшин.Льву Яшину исполнилось бы 86 лет
10 самых необычных вещей, которые можно подключить к смартфону
Если нельзя, но очень хочется
В Ростове голубь спровоцировал тройное ДТП
«Летающие тарелки» в небе над Камчаткой (6 фото)
Опасная встреча для любителя подводной охоты
На что способен макияж
Почему поздно заметили астероид
Она пленила 39 государств
Омск встал в 10-балльных пробках после снегопада
Странные, необычные но подлинные исторические вещи
Красноярские коммунальщики постригли заснеженный газон (фото)
Смешные смс-диалоги и приколы из социальных сетей (32 картинки)
Путин рассказал о своей поездке на Lada Vesta
Беларус о Туркмении
А был ли Тигр "королевским"?
Возлюбленные диктаторов (25 фото)
Одесский памятник Ленину превратили в памятник Дарту Вейдеру (3 фото)
Для кого закон в России? Всего 25 000 штраф за целый ряд правонарушений
« все анекдоты и картинки
Рейтинг@Mail.ru