Mängden sekvensinformation i offentliga arkiv ökar snabbt. Även om dessa data sannolikt kommer att innehålla kliniskt viktig information som ännu inte har upptäckts, vår förmåga att effektivt minera dessa databaser är begränsad. Här introducerar vi Sequence Bloom Trees (SBT), en metod för att fråga tusentals kortlästa sekvenseringsexperiment efter sekvens, 162 gånger snabbare än befintliga tillvägagångssätt. Tillvägagångssättet söker stora dataarkiv för alla experiment som involverar en given sekvens. Vi använder SBTs för att söka 2.652 mänskliga blod, bröst och hjärna RNA-seq experiment för alla 214.293 kända transkript på under 4 dagar med mindre än 239 MB RAM och en enda CPU. Att söka sekvensarkiv i denna skala och i denna tidsram är för närvarande inte möjligt med hjälp av befintliga verktyg. National Institutes of Health (NIH) Sequence Read Archive (SRA) 1 innehåller ~3 petabaser av sekvensinformation som kan användas för att besvara biologiska frågor som enstaka experiment inte har befogenhet att ta itu med. Att söka i hela en sådan databas efter en sekvens har dock inte varit möjligt i rimlig beräkningstid. Vissa framsteg har gjorts mot att möjliggöra sekvenssökningar på stora databaser. NIH SRA ger en sekvens sökning funktionalitet 2 ; dock är sökningen begränsad till ett begränsat antal experiment. Befintliga fulltext indexering datastrukturer såsom Burrows-Wheeler transform 3, FM-index 4 eller andra 5-7 är för närvarande oförmögna att minera data av denna skala. Word-baserade index 8, 9, såsom de som används av internet sökmotorer, är inte lämpliga för editdistans-baserade biologiska sekvens sökningar. Den sekvensspecifika lösningen caBLAST och dess varianter 10-12 kräver ett index av kända genom, gener eller proteiner, och kan därför inte söka efter nya sekvenser. Dessutom kan ingen av dessa befintliga metoder matcha en frågesekvens q som spänner över många korta avläsningar. Här använder vi en indexeringsdatastruktur, Sequence Bloom Tree (SBT), för att identifiera alla experiment i en databas som innehåller en given frågesekvens q. En fråga är en godtycklig sekvens, såsom en utskrift. SBT-indexet är oberoende av eventuella frågor, så metoden är inte begränsad till att söka efter kända sekvenser, och indexet kan effektivt byggas och lagras i begränsat utrymme. Det kräver inte heller att originalsekvensfilerna behålls och kan distribueras separat från data. SBT är dynamiska, vilket möjliggör införande och radering av nya experiment. En grovkornig version av en SBT kan laddas ner och därefter förfinas eftersom mer specifika resultat behövs. De kan sökas med hjälp av lågt minne för existensen av godtyckliga frågesekvenser. Vi visar att SBTs kan söka stora samlingar av RNA-seq experiment för en given transkript order av magnitud snabbare än befintliga metoder. RESULTAT SBTs skapa en hierarki av komprimerade blomfilter 13, 14, som effektivt lagra en uppsättning objekt. Varje blomfilter innehåller den uppsättning k-mers (längd-k subsekvenser) som finns i en delmängd av sekvenseringsförsöken. SBT är binära träd där sekvenseringsförsöken är förknippade med blad, och varje nod v i SBT innehåller ett blomfilter som innehåller den uppsättning k-mers som finns i varje avläsning i varje experiment i underträdet rotat vid v (Supplementary Fig. 1).................................................................. Vi minskade utrymmet användning genom att använda blomfilter som komprimeras av RRR 15 komprimeringsschema (Online Methods). Hierarkier av blomfilter har använts för datahantering på distribuerade system 16. Men de har inte tidigare tillämpats på sekvenssökning, och vi finner att detta gör att vi kan justera blomfilter felfrekvensen mycket högre än i andra sammanhang (Theorem 2, Online Methods), kraftigt minska utrymmeskraven. Bloom filter har också använts för att lagra implicita de Bruijn grafer 17,18, och en vy av SBTs är som en generalisering av detta till flera grafer. Vi använde SBT för att söka RNA-seq experiment för uttryckta isoformer. Vi byggde ett SBT på 2.652 RNA-seq experiment i SRA för humant blod, bröst och hjärnvävnad ( Kompletterande tabell 1). Hela SBT krävde endast 200 GB (2,3% av storleken på de ursprungliga sekvenseringsdata) ( Kompletterande tabell 2 ). För dessa uppgifter tog byggandet av trädet 2,5 min per fil (kompletterande tabell 3). Dessa experiment kunde sökas för en enda utskrift fråga i, i genomsnitt, 20 min (Fig. 1), med användning av mindre än 239 MB RAM med en enda tråd (Online Methods). Vi uppskattar den jämförbara söktiden med hjälp av SRA-BLAST 2 eller kartläggning av STAR 19 att vara 2,2 d respektive 921 d, respektive (Online Methods), men SRA-BLAST och STAR returanpassningar medan SBT inte gör det. Men även en mycket snabb anpassning såsom STAR kan inte identifiera frågeinnehållande experiment så snabbt som SBT. Vi testade också satser av 100 frågor och fann SBT var en uppskattad 4 056 gånger snabbare än en batched version av kartläggningen 3 0 1 metod (kompletterande bild. 2).................................................................. Dessa frågor utfördes över varierande känslighetströskel (minimifraktionen av frågek-mers som måste finnas för att returnera en "hit") samt utskrifter per miljon (TPM) tröskel som används för att välja frågeuppsättningen ( Kompletterande figurer. 3 och 4). För ungefär hälften av frågorna gav de övre nivåerna i SBT-hierarkin betydande fördelar, särskilt när det gällde frågor som inte uttrycktes i något experiment (Supplementary Fig. 5 och kompletterande tabell 4. SBT kan påskynda användningen av algoritmer, såsom STAR eller SRA-BLAST, genom att först utesluta experiment där frågesekvenserna inte är närvarande. Detta gör det möjligt för efterföljande behandlingstid att skala med storleken på antalet träffar snarare än storleken på databasen. Vi använde först SBT för att filtrera hela datasetet bestående av 2.652 mänskliga blod-, bröst- och hjärn-RNA-seq-experiment. Vi jämförde sedan prestandan hos STAR eller SRA-BLAST på den filtrerade datasetet med tiden att bearbeta den ofiltrerade datasetet med dessa algoritmer. Genom att använda SBT för att först filtrera data minskades den totala frågetiden för STAR eller SRA-BLAST med en faktor på 3 (kompletterande bild. 6).................................................................. För att analysera noggrannheten hos SBT-filtret, jämförde vi de experiment som returnerades av SBT med de där frågesekvensen uppskattades uttryckas med hjälp av Sailfish 20. Eftersom det är opraktiskt att använda befintliga verktyg för att uppskatta uttryck över hela uppsättningen experiment, vi frågade hela trädet, men uppskattad noggrannhet på en uppsättning av 100 slumpmässiga filer som vi körde Sailfish (Fig. 2).................................................................. Tre samlingar av representativa frågor konstruerades med hjälp av Sailfish, betecknad av Hög, Medium och Låg, som inkluderade utskrifter av längd > 1000 nt som sannolikt skulle uttryckas på en högre, medium eller låg nivå i minst ett experiment som ingår i uppsättningen av 100 experiment på vilken Sailfish kördes. Den höga uppsättningen valdes till 100 slumpmässiga transkript med ett uppskattat överflöd av > 1000 TPM i minst ett experiment. De Medium och Low frågeuppsättningar valdes på liknande sätt slumpmässigt bland utskrifter med >500 och >100 TPM, respektive. Dessa Sailfish uppskattningar togs som den grundläggande sanningen i uttryck för frågeutskrifterna. Både falska positiva och falska negativa kan uppstå från en missmatchning mellan SBT definition av närvarande (täckning av k-mers över en tillräcklig bråkdel av frågan) och Sailfish definition av uttryckt (beräknas genom läsning kartläggning och en förväntan-maximization inference). Dessa två definitioner är relaterade, men inte helt i linje, vilket resulterar i en viss oenighet som kvantifieras av de falskt positiva satserna (FPR) och falskt negativa satserna i figur 2. De observerade falska negativa är främst drivs av några avvikande frågor för vilka SBT rapporterar inga resultat men deras uttryck är över TPM-tröskeln som uppskattas av Sailfish. Detta stöds av det faktum att den genomsnittliga true-positiva takten på  till = 0.7 för frågor som returnerar minst en fil var 96-100%, och medianen true-positiva frekvensen i alla frågor var 100% för alla utom den strängaste  till (Fig. 2).................................................................. Vi använde SBT för att söka alla blod, hjärna och bröst SRA sekvensering körs för att uttrycka alla 214.293 kända mänskliga transkript och använde dessa resultat för att identifiera vävnadsspecifika transkript ( Kompletterande tabell 5 och Kompletterande bild. 7)................................................................. Denna sökning tog 3.3 d med hjälp av en enda tråd (kompletterande bild. 8 ) och 8.............................................................................................................. Det finns för närvarande ingen sökning eller anpassning verktyg som kan lösa denna skala av sekvenssökning problem i en rimlig tidsram, men vi uppskattar en likvärdig sökning med Sailfish skulle ta 92 d. Hastigheten och beräkningseffektivitet SBTs kommer att göra det möjligt både enskilda laboratorier och sekvensering center för att stödja storskaliga sekvens sökningar, inte bara för RNA-seq data, men för genomiska och metagenomiska samlingar också. Forskare kan söka efter förhållanden bland tusentals som sannolikt kommer att uttrycka en viss ny isoform eller använda SBT för att identifiera metagenomiska prover som sannolikt kommer att innehålla en viss bakteriestam. Snabb sökning av denna typ kommer att vara avgörande för att på ett bra sätt utnyttja den ständigt växande insamlingen av tillgängliga sekvensdata. För närvarande är det svårt att få tillgång till alla relevanta uppgifter om en viss forskningsfråga från tillgängliga sekvenseringsförsök. Enskilda sjukhus, sekvenseringscenter, forskningskonsortier och forskargrupper samlar in data i snabb takt och står inför samma svårighet att inte snabbt kunna testa beräkningshypoteser eller att hitta de relevanta förutsättningarna för ytterligare studier. SBT möjliggör effektiv gruvdrift av dessa data och kan användas för att avslöja biologiska insikter som endast kan avslöjas genom analys av flera datamängder från olika källor. Dessutom kräver SBT inte förkunskaper om sekvenser av intresse, vilket gör det möjligt att identifiera, till exempel, uttryck av okända isoformer eller långa icke-kodande RNA. Denna algoritm gör det praktiskt att söka stora sekvensering arkiv och kan öppna upp nya användningsområden för dessa rika samlingar av data. ( 1 5 - t h r e d) Tid (min) Figur 1 Beräknade körtider för sökverktyg för en utskrift. SBT per query tid spelades in med maximalt ett enda filter i aktivt minne och en tråd. De andra barerna visar den beräknade tiden för att uppnå samma frågeresultat med hjälp av SRA-BLAST och STAR.
Experimentet upptäckt problem ställdes först av Solomon och Kingsford REF, där de introducerade sekvens Bloom träd (SBT).
Fast search of thousands of short-read sequencing experiments
{'venue': 'Nature Biotechnology', 'journal': 'Nature Biotechnology', 'mag_field_of_study': ['Biology', 'Medicine']}