Я думаю о способе разбора файла fasta в параллельно . Для тех из вас, кто не знает, fasta-формат, например:
>SEQUENCE_1
MTEITAAMVKELRESTGAGMMDCKNALSETNGDFDKAVQLLREKGLGKAAKKADRLAAEG
LVSVKVSDDFTIAAMRPSYLSYEDLDMTFVENEYKALVAELEKENEERRRLKDPNKPEHK
IPQFASRKQLSDAILKEAEEKIKEELKAQGKPEKIWDNIIPGKMNSFIADNSQLDSKLTL
MGQFYVMDDKKTVEQVIAEKEKEFGGKIKIVEFICFEVGEGLEKKTEDFAAEVAAQL
>SEQUENCE_2
SATVSEINSETDFVAKNDQFIALTKDTTAHIQSNSLQSVEELHSSTINGVKFEEYLKSQI
ATIGENLVVRRFATLKAGANGVVNGYIHTNGRVGVVIAAACDSAEVASKSRDLLRQICMH
Таким образом, строки, начинающиеся с '>', представляют собой строки заголовка, содержащие идентификатор последовательности, следующей за идентификатором.
Полагаю, вы загружаете весь файл в память, но после этого у меня возникают проблемы с поиском способа обработки этих данных.
Проблема в том, что потоки не могут начинаться с произвольной позиции, потому что они могут вырезать последовательности таким образом.
Есть ли у кого-нибудь опыт параллельного разбора файлов, когда строки зависят друг от друга? Любая идея приветствуется.