Программисты спасут мир. Как всем известно программисты могут оптимизировать автоматизировать и решить любую задачу. Ну посмотрим. Предположим что у нас есть 3 триллиона текстовых документа, в этом каждом документе по 3 миллиарда букв.Каким образом мы одновременно сможем сделать исправление в трех триллионах файлах txt в определенном месте (буквах) из 3 миллиардов. Решив эту задачу вы спасете мир. Какие предложения? Представьте что речь реально идет о текстовом документе а не как образец. Поехали.
>>211553094 (OP)Нормально сформулируй условия задачи блядь, а не свои шизойдный пассажи, а по сабжу:Р Е Г У Л Я Р Н Ы Е В Ы Р А Ж Е Н И ЯЕГУЛЯРНЫЕВЫРАЖЕНИЯ
>>211553094 (OP)Берешь 3 триллиона компов, закачиваешь в каждый по файлу, исправляешь. Хуле тут думать?
>>211553094 (OP)бля прогеры тут не в тему. Прогеры бы сделали если бы документ был электронным а не бумажным. так что бери тыщу додиков и ставь им эту задачу. Иначе никак. Только дохуя ручного труда.
>>211553094 (OP)а бля туплю. Перебираем в цикле каждый файл, и исправляем. Хуйли тут сложного? Можно многопоток заебенить.
>>211553308Конечно тупой, настрочил какой то графоманской хуйни по спасению мира, где непонятно или задача супер тупая или ту не можешь в формулирование мыслей.
>>211553094 (OP)Одновременно во всех вряд ли вообще сможем. Разве что у нас есть процессор с триллионами ядер и устройство хранения данных, которое сможет одновременно писать и читать в триллион мест одновременно.
>>211553829Ну это же оптимизация. Да и где ты столько оперативы возьмешь, чтобы 3 триллиона файлов по 96ГБ закачать?
>>211553094 (OP)Либо хранишь их в ФС / БД, которая позволит такое провернуть, либо вместо изменения самих файлов делаешь один патч, и при запросе любого из файлов применяешь все патчи, которые его касаются.
>>211554056После этого ты опять потеряешь время так, как нужно что бы эти файлы были вместе на одном носители. Давай идею о распределение текстовых документов на другие носители вообще уберем.
>>211553872Вообще в природе мало что происходит буквально одновременно. События могут пересекаться по времени либо между ними может пройти какой-то близкий к нулю промежуток времени. А примеров того, когда что-то буквально одновременно происходит, я даже вспомнить не могу
>>211554071>Либо хранишь их в ФС / БД, которая позволитГлавное чтобы это все было в одном месте не разделено, грубо говоря в одной папке. >либо вместо изменения самих файлов делаешь один патч, и при запросе любого из файлов применяешь все патчи, которые его касаются.Подробнее поясни.
>>211554184Свет не распространяется же с задержкой. Пучок сразу летит со скоростью света, а там уже зависит от места нахождения наблюдающего.
>>211554317>Свет не распространяется же с задержкой. Пучок сразу летит со скоростью светаПодучи физику, без задержки у него свет...
>>211554226>>211554317В классических кремниевых процессорах операции в любом случае выполняются поочередно, т.е. 1 операция в определенный момент времени. Поэтому если нужно чтобы все файлы были на одном носителе и все апдейты выполнились одновременно, то нужно либо чтобы у компьютера было 3 триллиона ядер, ну либо квантовые компьютеры использовать, я хз.
>>211554674>квантовые компьютеры использовать, я хз.в них тоже поочерёдно будет выполняться, скорость будет невъебенно-въебеническая
>>211554674Тут не столько ядра важны, сколько количество записывающих головок у жесткого диска, потому что упрешься ты именно в производительность ввода-вывода
>>211555094Так то да, и то и другое одинаково важно. Большинство современных SSD дисков насколько я знаю поддерживают только до 8 параллельных операций записи.
>>211553094 (OP)Очевидно же. Ставим три триллиона компов, на каждом синхронизируем время и запускаем скрипт, который исправит нужные буквы.
>>211553435Не буду удалять. Просто их скопирую в другую папку и так же накопирую правильный документ.
>>211553259Лол. (нет)>>211553382Это уже обсуждается на уровне бизнеса, что можно, а что нельзя. Если нельзя - то времени займет куда больше.
>>211555847Просто заменяешь весь текст в ячейке на правильный, лол, хули тут мудрить.Тем не менее факт: на бигдате нихуя прям пиздец ОДНОВРЕМЕННОГО не бывает. Любые репликации проходят за конечное время.
>>211555644Потому что операции выполняются на уровне процессора, а загрузка\выгрузка на уровне оперативщины.местный контингент оставляет желать лучшего.ушел.
>>211553094 (OP)> Программисты спасут мирУ тебя в розетке кончается электричество@спасение мира отменяется
>>211556208На распределительном посту РАО ЕЭС просыпается дежурный@Звонит программисту@Тот чинит ПО системы управления распред щитом@ Тот спасает мир.хотя ясен хуй в этой стране до сих пор в энергетике все оборудование аналоговое, максимум 70х годов выпуска, лол
>>211553094 (OP)Архивируем по принципу слово оп = 0, хуй = 1, и = 2, пидорас = 3. То есть фраза оп хуй и пидорас будет 0 1 2 3, после чего заменяем в таблице значение x, на значение y: 3 = коммунист. Теперь во всех файлах запись 0 1 2 3 значит оп хуй и коммунист .
>>211556322Ну по сути хэш-таблица, которая для каждой нужной буквы в каждом файле будет хранить позиции где эта буква встречается.
>>211556287Не бывает частичных замен, при любой правке любая сущность (файл, запись в бд, да почти любой высокоуровневый объект) полностью меняется на новую. Кроме, разве что, дописывания в конец файла.
>>211553094 (OP)Хули тут сложного, упаковываешь в архив, меняешь в одном месте, распаковываешь архив.
>>211556627Интересненько, а как это на деле будет работать, что будет с таблицой связываться и что делать в случае идентичных совпадений но в разных местах, как мы будем идентефицировать чтобы прога понимала
>>211555644Потому что время, которое у тебя уйдет на сами вычисления (полагаю, это будет просто последовательный перебор данных из файла) очень мало по сравнению с временем, которое уйдет на то чтобы прочитать и записать данные на диск. Плюс у диска количество одновременных операций ограничивается количеством головок>>211555462Подозреваю, даже если у тебя гипотетически есть объем оперативки, способный все это добро вместить, ты все равно в производительность памяти упрешьсяВообще единственный способ решения, чтобы это действительно одновременно было, который мне видится -- это дублировать исправленные файлы в отдельную папку и по окончании исправления просто файловой системе сообщить, что теперь содержимое этой папки находится там, где новые файлы. Но "одновременность" тут будет зависеть от операционки и файловой системы
>>211556627> для каждой нужной буквы в каждом файле будет хранить позиции где эта буква встречается.Эта хэштаблица скушает места больше чем сам исходный файл.
>>211556454> все оборудование аналоговое, максимум 70х годовКошак бежит за мышкой @Сгорает секция @Программист в темноте@Тапком открывает банку с тушонкой
>>211553094 (OP)>>211553094 (OP)Хуясе. Ты вообще в курсе с чего начинается решение таких задач?3 x 10^12 файлов (предположим в ASCII, порядок не сильно будет отличатся, даже если ты захочешь UTF-32)3 x 10^9 символов в каждом файлеЭто примерно 10^22 байт, или 10 зеттабайт. Ты вообще в курсе, насколько это большая цифра? В всём интернете информации на порядки меньше.Предположим, что у тебя даже есть устройство, где ты даже можешь это как-то хранить.> Каким образом мы одновременно сможем сделать исправление в трех триллионах файлах txt в определенном месте (буквах) из 3 миллиардов.Первый вопрос. Что, по твоему значит "одновременно"? Такие исправления будут с 99,999...% вероятностью делатся обычным алгоритмом Find & Replace, только бустанутым и оптимизированым до небес. Что такое эта твоя одновременность?Второй вопрос. В какой структуре данных хранятся эти файлы? Учитывая задачу и масштабы, имеет смысл сделать файловую систему специально заточенную под твоё устройство хранения и специально под хранение текстовых файлов. Могу сразу сказать, что если это не квантово-блевотно-сверхсветовой SSD, то все современные FS должны скурвиться.Для начала хватит. Доопредели задачу. Иначе можешь до тепловой смерти вселенной искать исполнителя.
>>211554147>Давай идею о распределение текстовых документов на другие носители вообще уберем. В смысле? Это основной способ ускорения с тех пор, как компы перестали наращивать мощность как в законе Мура.Сначала раскидываешь, потом снова собираешь и хоп - они снова на одном носителе.>>211557383Дваждую.
>>211553094 (OP)3 миллиарда букв в unicode32 это 11Gb.3 миллиарда по 11.2Gb это 26.6 экзобайт данных. Всего-то.Но ты не задал ограничений по памяти, времени выполнения и temporary storage.Так что я просто решу это через map-reduce с регулярками. То что обрабатывало петабайты пережует и экзабайты (конечно если у тебя регулярки не многострочные - тогда в худшем случае придется грузит целый файл в память скорее всего. А это либо быстро и дорого с кучей жирных 16Gb RAM серверов или медленно и дешево с парочкой 16Gb RAM серверов).
>>211557732Отлично. Если ты не хочешь доопределять задачу, а хочешь ответа в "общем" виде, то ты его уже получил. В первом посте. И в других, слепой ты хуй.РЕГУЛЯРНЫЕ ВЫРАЖЕНИЯ
>>211553094 (OP)Тут выше головы не прыгнешь, операции с диском - последовательные, по этому буду втупую открывать каждый файл, fseek в нужную позицию, переписывать, закрывать файл. Одновременно этого не сделать.
>>211557876НУЖНО БОЛЬШЕ МНОГОЗАДАЧНОСТИ, ОДНОВРЕМЕННО ПОНИМАЕШЬ, ОНДВОРМЕННО, СУПЕР КВАНТВОВЫЕ КОМПЬЮТЕРЫ ХУЁ МОЕ
>>211557383>>211557967Ну не бомби ты так. Ещё один шизик с его великой idee fixe. Такая редкость на двощах, да?
>>211558166https://ru.wiktionary.org/wiki/идея_фиксhttps://en.wikipedia.org/wiki/Idée_fixe_(psychology)Идее фикс же. Незнакомое выражение?
>>211553094 (OP)> Предположим что у нас есть 3 триллиона текстовых документа, в этом каждом документе по 3 миллиарда букв.> Каким образом мы одновременно сможем сделать исправление в трех триллионах файлах txt в определенном месте (буквах) из 3 миллиардов.> Решив эту задачу вы спасете мир. Какие предложения?ЛЕГКО решу, даже на стареньком 286 и MS-DOS.Ответ:При отображении текста на экран из .txt файла, искомая последовательность букв заменяется.Так пользователь всегда получает исправленный документ.https://ru.wikipedia.org/wiki/Звук_падающего_дерева_в_лесу
>>211553094 (OP)> Каким образом мы одновременно сможем сделать исправление в трех триллионах файлах txt в определенном месте (буквах) из 3 миллиардовНахуя?
>>211553094 (OP)>Программисты спасут мир.Каждый раз обсираюсь с даунов, которые считают, что программисты - это нечто божественное.Поясняю тебе, маня. Если бы не было рабочих, которые построили твой дом, инженеров, которые его спроектировали, электриков, которые подключили твою квартиру к электричеству, швейных фабрик, которые сшили тебе одежду, китайцев, которые делают на заводах гаджеты для того, что бы ты мог программировать, инженеров и рабочих для того, чтобы добывать цветные металлы, для тех же гаджетов, сельских рабочих, которые поставляют еду в магазины, в которых нужны продавщицы, врачей, которые лечат тебя, фармацевтов, которые придумывают лекарств и прочего-прочего, то ты, мамкин программист, сидел бы в пещере и думал бы, каким образом совместить палку и камень, что бы получилось примитивнейшее орудие труда. Мир спасут и спасают рабочие и врачи.
>>211553094 (OP)>Предположим что у нас есть 3 триллиона текстовых документа, в этом каждом документе по 3 миллиарда букв.Все документы одинаковые, или каждый - уникальный?>Каким образом мы одновременно сможем сделать исправление в трех триллионах файлах txt в определенном месте (буквах) из 3 миллиардов. Что значит "определенное место", блядь? Тебе надо поменять каждую определенную букву, или тебе надо поменять букву на определенной строке, или тебе надо поменять точную по счету букву?А может тебе за щеку натолкать за такое условие задачи?
>>211558534Часто замечаю, что программисты создают треды про то, как охуенно быть погромистом, будто такими тредами сами себя убеждая, что они элита.
>>211558650Как заболеешь - не иди к врачу.Когда ребёнок родится - не давай этим мразям поставить прививки, а то покалечат
>>211558740Тут дело в том, что программистом может, и чаще всего становится, именно двачерский тип личности, потому что:1. Программером можно стать, сидя дома у мамы на шее не имея никаких социальных навыков.2. Отсутствие социальных навыков в купе с трудолюбием даёт годного программиста.Кроме того, программист - профессия новая на данный момент и требующая определённой усидчивости, что делает программистов дефицитом. А так как оцифровывания мира идёт семимильными шагами, то получается, что прогеров мало, тем более годных, а запросы на них огромные, в следствии чего высокая ЗП. Но, по законам экономики, в скором времени ЗП программиста будет на уровне ЗП остальных инженеров, т.к. высокие ЗП привлекут огромное количество народу, конкуренции станет больше + начнут подтянут высшее учебные заведения под эту специальность. Не сомневаюсь, что в будущем, хотя бы основы программирования введут в школьную программу, так что каждый школьник будет хоть немного да шарить в этом, хотя бы азы.А на данный момент высокие ЗП и, что особенно важно для битарда, возможность обучению сидя дома у мамки на шее, без соц. контактов делает эту профессия чуть ли не божественной для двачеров.
>>211553094 (OP)Ни как, на кудахтере не хватит объёма памяти ПЗУ и ОЗУ, а если и хватит, то эта залупа будет деться слишком долго.997446 петабайт памяти, если у тебя на пекарне столько нет, то иди нахуй
>>211553094 (OP)Многопоточный кластер суперкомпьютера. Мы знаем начальные адреса документов, по сдвигу находим нужный символ, заменяем. Задача o(n). Запускаем условный тредпклэкзекьютор на все доступные потоки, по факту на 3 трилиона файлов. Тоже o(n)/k потоков. Единственное ограничение - доступ к винту через шину, контроллер не даст менять все одновременно, поэтому будет долго. Вот собственно и все
>>211557832> Отлично. Если ты не хочешь доопределять задачу, а хочешь ответа в "общем" виде, то ты его уже получил. В первом посте. И в других, слепой ты хуй.> РЕГУЛЯРНЫЕ ВЫРАЖЕНИЯВ простейшем случае даже не регулярки а линуксовый tr.
>>211557876> Тут выше головы не прыгнешь, операции с диском - последовательные, по этому буду втупую открывать каждый файл, fseek в нужную позицию, переписывать, закрывать файл. Одновременно этого не сделать.mapreduce + любая distributed FS.Гугел такие задачи в 2000х решал, сейчас может решить любой васян с каким-нибудь кибернетисом, drbd и кластером из говносерверов.
>>211558669Проблема в том что таких букв или нужной нам последовальности букв будет дохуя, вот и сложность возникнет в том что бы найти нужную
>>211559591> . Мы знаем начальные адреса документов, по сдвигу находим нужный символ, заменяем. >>211560751
>>211553094 (OP)Скажу, что нужен хадуп, буду с ним ебаться, пока не кончится финансирование, параллельно ища следующий проект подальше от ебанутых.
>>211561319А ты ОП? Ты заостряешь внимание на некоторых мелких деталях, отказываясь пояснить то, что у тебя спрашивают люди.Т.е. тебе важны именно эти мелкие (но не важные по делу) детали. Обычный признак фиксации.Вот этот пост >>211557732 это просто апогей больного мономанией, блядь.
>>211562825Да нет же! Чтобы можно было переписать Имя Бога во всех священных текстах одновременно! И эти тексты должны находиться в одном месте, чтобы эффект был потрясающим воображение.