ISBN

Wielkość: px
Rozpocząć pokaz od strony:

Download "ISBN 978-83-89244-90-1"

Transkrypt

1 ISBN

2 Notka biograficzna Aleksandra Gruca jest inżynierem, bioinformatykiem. Od początku swojej pracy naukowej koncentruje się na zagadnieniach związanych z zastosowaniem technik maszynowego uczenia i eksploracji danych dla celów analizy danych medycznych oraz biologicznych. Brała udział w projektach badawczych związanych z analizą danych pochodzących z mikormacierzy DNA, a w szczególności zajmuje się rozwijaniem metod i technik wspomagających proces interpretacji i opisu funkcjonalnego wyników eksperymentów biologicznych. Jest autorką lub współautorką ponad dwudziestu publikacji naukowych. Streszczenie Każdego roku w Internecie pojawia się ponad 100 nowych baz danych, które zawierają dane pochodzące z biologicznych i medycznych eksperymentów. Niniejsza książka ma za zadanie przedstawić czytelnikom najważniejsze z tych repozytoriów oraz omówić zagadnienia związane z przetwarzaniem danych w nich zawartych. Pierwsze dwa rozdziały tej książki wprowadzają czytelnika w zagadnienia bioinformatyki, nowej interdyscyplinarnej dziedziny wiedzy oraz w tematykę baz danych. Kolejne rozdziały zawierają przegląd najważniejszych bioinformatycznych baz danych wraz z opisem narzędzi powiązanych z tymi bazami danych. Przedstawiono najpopularniejsze bazy sekwencji nukleotydowych oraz sekwencji białkowych, a także metody przeszukiwania tych baz pod kątem sekwencji podobnych. Książka zawiera również przegląd baz danych rodzin białek oraz struktur białek, a także opis repozytoriów ukierunkowanych na funkcjonalną anotację genów lub białek. Książka jest przeznaczona przede wszystkim dla studentów lub pracowników naukowych kierunków technicznych i przyrodniczych, a w szczególności dla osób zainteresowanych bioinformatyką, które w ramach swojej pracy stykają się z analizą danych medycznych lub biologicznych

3 Seria: Podręczniki akademickie Edytor serii: Leonard Bolc Tom serii: 43

4

5 c Copyright by Aleksandra Gruca Warszawa 2010 c Copyright by Wydawnictwo PJWSTK Warszawa 2010 Wszystkie nazwy produktów są zastrzeżonymi nazwami handlowymi lub znakami towarowymi odpowiednich firm. Książki w całości lub w części nie wolno powielać ani przekazywać w żaden sposób, nawet za pomocą nośników mechanicznych i elektronicznych (np. zapis magnetyczny) bez uzyskania pisemnej zgody Wydawnictwa. Edytor Leonard Bolc Redaktor techniczny Ada Jedlińska Korekta Anna Bittner Komputerowy skład tekstu Grażyna Domańska-Żurek Projekt okładki Andrzej Pilich Wydawnictwo Polsko-Japońskiej Wyższej Szkoły Technik Komputerowych ul. Koszykowa 86, Warszawa tel , fax Oprawa miękka ISBN Projekt Nowoczesna kadra dla e-gospodarki program rozwoju Wydziału Zamiejscowego Informatyki w Bytomiu Polsko-Japońskiej Wyższej Szkoły Technik Komputerowych współfinansowany przez Unię Europejską ze środków Europejskiego Funduszu Społecznego w ramach Podziałania Wzmocnienie potencjału dydaktycznego uczelni Programu Operacyjnego Kapitał Ludzki

6 This book should be citated as: Gruca A Bioinformatyczne bazy danych. Warszawa: Wydawnictwo PJWSTK. Spis treści 1 Wstęp Wprowadzenie do baz danych Modele danych Relacyjne bazy danych Definiowanie zapytań Bazy danych sekwencji nukleotydowych Baza danych EMBL Format rekordu w bazie EMBL Dostęp do rekordów bazy EMBL Baza danych GenBank Format rekordu w bazie GenBank Dostęp do rekordów bazy GenBank Baza danych DDBJ Adresy Internetowe Przeszukiwanie baz danych sekwencji Dopasowywanie dwóch sekwencji Dopasowywanie sekwencji nukleotydowych Dopasowywanie sekwencji aminokwasowych Poszukiwanie sekwencji podobnych w bazach danych - BLAST 4.3 Adresy Internetowe Bazy danych sekwencji białkowych Bazy danych sekwencji białkowych Baza GenPept NCBI Entrez Protein RefSeq Baza UniProt PIR

7 VI Spis treści 5.2 Bazy rodzin białek PROSITE PRINTS Pfam ProDom PIRSF Integracja zasobów pochodzących z odrębnych baz danych InterPro iproclass iprolink Bazy danych struktur białek PDB MMDB Wizualizacja struktur białek SCOP CATH Adresy Internetowe Bazy danych anotacji funkcjonalnych KEGG Gene Ontology Anotacje genów za pomocą terminów GO Anotacje funkcjonalne grup genów FatiGO funkcjonalna anotacja grup genów Adresy Internetowe Literatura Dodatek Przykład rekordu pochodzącego z bazy sekwencji EMBL Przykład rekordu Indeks

8 1 Wstęp Ogromny rozwój technologii badawczych w dziedzinie genomiki i biologii molekularnej, któremu towarzyszył równie dynamiczny rozwój technologii informacyjnych i przyrost mocy obliczeniowej komputerów, zaowocował powstaniem nowej dziedziny nauki, w której do przetwarzania danych biologicznych wykorzystywane są metody obliczeniowe. Bioinformatyka jest stosunkowo nową, interdyscyplinarną dziedziną wiedzy, która powstała na styku różnych odrębnych dziedzin nauki takich jak: biologia i ewolucja molekularna, biologia strukturalna, genetyka, genomika, proteomika, biochemia, statystyka, matematyka, informatyka czy eksploracja danych. Rysunek 1.1. Bioinformatyka jest nauką integrującą różne dziedziny wiedzy

9 2 1 Wstęp Na bioinformatykę składają się różne narzędzia i algorytmy pozwalające na badanie, rozwój i zastosowanie komputerowych metod, które wykorzystywane są w biologii do zdobywania, przetwarzania, organizowania, archiwizacji, analizy oraz wizualizacji danych biologicznych. Podstawowym celem tej dziedziny jest dostarczanie narzędzi matematycznych oraz metod komputerowych, w celu dokonywania odkryć biologicznych, które umożliwiają nam głębsze zrozumienie procesów i zależności biologicznych występujących w żywych organizmach. Nie jest nadużyciem stwierdzenie, że bez metod komputerowych dzisiejsza biologia molekularna nie mogłaby się rozwijać w dziedzinach takich jak: mapowanie sekwencji DNA, uliniowianie sekwencji DNA oraz sekwencji białkowych w celu przewidywania właściwości oraz funkcji cząsteczek, poszukiwanie i klasyfikacja rodzin białek, tworzenie przestrzennych modeli biomolekuł, i wiele innych. Tym samym nasza wiedza na temat budowy komórki oraz procesów biologicznych w niej zachodzących byłaby uboższa i znaczenie bardziej ograniczona. Wyniki eksperymentów biologicznych oraz rezultaty przetwarzania tych wyników gromadzone są od wielu lat w różnych repozytoriach danych, których celem jest umożliwienie dostępu do aktualnej wiedzy biologicznej badaczom z całego świata. Z uwagi na specyficzny rodzaj danych znajdujących się w tych bazach, bazy te określa się pojęciem bioinformatyczne bazy danych. Bioinformatyczne bazy danych to obecnie ogromne, zorganizowane zbiory danych, które pozwalają na przeszukiwanie dostępnych w repozytoriach informacji, przetwarzanie jej, a często również i przesyłanie nowych danych. Tego typu bazy charakteryzują się zazwyczaj prostym i intuicyjnym interfejsem, a także wyposażone są w oprogramowanie, które umożliwia wstępną analizę danych często przecież korzystają z tych baz osoby, które nie posiadają kierunkowego wykształcenia informatycznego. Liczba dostępnych baz danych wzrasta z każdym rokiem, a ilość danych znajdujących się w najpopularniejszych z nich rośnie wykładniczo. Każdego roku wydawany jest specjalny numer czasopisma Nucleid Acid Research poświęcony tylko i wyłącznie bioinformatycznym bazom danych. Na stronach internetowych czasopisma ( dostępna jest lista większości popularnych i uznanych bioinformatycznych baz danych, a także ich podział w zależności od typu danych, jaki jest w nich przechowywany. Podział przedstawiono poniżej, na podstawie danych dostępnych na początku 2009 roku [Galperin and Cochrane, 2009]: Bazy danych sekwencji nukleotydowych. Sekwencje dostępne w ramach INSDC. DDBJ DNA Data Bank of Japan. EMBL Nucleotide Sequence Database. GenBank. Bazy kodującego i niekodującego DNA. Struktury genów, intronów, egzonów oraz miejsc splicingu. Miejsca regulatorowe transkrypcji oraz czynników transkrypcji.

10 Bazy sekwencji RNA. Bazy sekwencji białkowych. Ogólne bazy sekwencji (baza białek NCBI, PIR, UniProt). Bazy własności białek. Bazy lokalizacji białek. Bazy sekwencji, motywów i miejsc aktywnych. Bazy domen i klasyfikacji białek. Bazy rodzin białek. Bazy danych struktur (PDB). Bazy genomowe (bezkręgowców). Bazy ścieżek metabolicznych i ścieżek sygnałowych. Bazy genomowe ludzkie oraz kręgowców. Bazy ludzkich genów i chorób. Bazy danych mikromacierzowych i bazy danych ekspresji genów. Bazy zasobów proteomicznych. Pozostałe bazy biologii molekularnej. Bazy organelli. Bazy roślinne. Bazy immunologiczne. 1 Wstęp 3 Bioinformatyczne bazy danych mogą zawierać różnego rodzaju informacje. Jednakże niezależnie od typu bazy danych, każdy wpis najczęściej składa się z dwóch elementów: części opisowej zawierającej opis danych, anotacje i odnośniki do literatury oraz części głównej zawierającej sekwencję lub wyniki obserwacji. Niektóre bazy danych umożliwiają każdemu użytkownikowi niczym nieograniczone przesłanie wyników swoich eksperymentów biologicznych, inne wymagają, żeby każda informacja przed opublikowaniem została sprawdzona przez tak zwanych kuratorów bazy danych, którzy dbają o to, aby dane znajdujące się w bazie były poprawne, aktualne i zgodne z istniejącą wiedzą biologiczną. Nadzorowane bazy danych są bardziej wiarygodne, jednakże z uwagi na fakt, iż proces sprawdzania poprawności informacji jest czasochłonny, przyrost danych w takich bazach jest dość wolny, z kolei nienadzorowane bazy danych zawierają wyniki najnowszych eksperymentów nie dając jednak żadnej gwarancji co do jakości danych użytkownikom, którzy takie dane w przyszłości z tej bazy pobierają. Pewnym kompromisem jest stosowanie różnego rodzaju automatycznych procedur kontroli jakości, które przynajmniej częściowo zastąpić mogą nadzór manualny. Na początku 2009 roku na stronach czasopisma Nucleid Acid Research wymieniono 1170 bioinformatycznych baz danych, przy czym z każdym rokiem czasopismo rejestruje około 100 nowych repozytoriów. W niniejszym opracowaniu opisano jedynie niewielką część dostępnych repozytoriów. Skoncentrowano się tutaj na najważniejszych i najpopularniejszych bioinformatycznych bazach sekwencji nukleotydowych oraz sekwencji białkowych, wraz z opisem

11 4 1 Wstęp metod poszukiwania sekwencji podobnych. W kolejnych rozdziałach przedstawiono przegląd bazy danych rodzin białek oraz bazy struktur białek, a także repozytoria ukierunkowane na funkcjonalną anotację genów lub białek.

12 2 Wprowadzenie do baz danych Zbiór informacji, które zawierają ze sobą powiązania i zostały w pewien sposób skatalogowane, określamy mianem bazy danych. W najprostszej postaci bazą danych może być kartka papieru zawierająca listę nazwisk osób przyporządkowanych do ich miejsca zamieszkania. Oczywiście w sytuacji, kiedy posiadanych danych jest coraz więcej, pojawia się potrzeba stworzenia efektywnego systemu, który pozwoli na szybkie wyszukiwanie i przetwarzanie posiadanych przez nas informacji. Stąd też obecnie, kiedy używamy terminu baza danych, mamy na myśli zarówno dane, jak i program komputerowy, który tymi danymi zarządza. System, który przechowuje dane i wyposażony jest w mechanizmy ich udostępniania określamy mianem Systemu Zarządzania Bazą Danych, SZBD (ang. DataBase Management System, DBMS). Podstawowe zadania, których oczekuje się od Systemu Zarządzania Bazą Danych są następujące [Garcia-Molina et al., 2006]: Umożliwienie użytkownikowi utworzenia nowej bazy danych i zdefiniowania jej struktury. Udostępnienie użytkownikowi możliwości pobierania oraz aktualizacji danych za pomocą odpowiedniego języka zapytań (ang. query language). Umożliwienie przechowywania ogromnych ilości danych oraz zabezpieczenie ich przed niepowołanym dostępem, a także umożliwienie efektywnego dostępu do danych. Zabezpieczenie przed utratą spójności danych w przypadku, gdy wielu użytkowników korzysta z bazy danych równocześnie. Mówiąc o bazach danych oraz o danych w nich zgromadzonych, będziemy używali następujących pojęć: Tabela (ang. table) zbiór rekordów tego samego typu. Rekord (ang. record) podstawowa jednostka informacji, pojedynczy wpis w tabeli posiadający zdefiniowaną strukturę, będący opisem pewnego konkretnego obiektu. Pole (ang. field) najmniejsza część rekordu, która zawiera niepodzielne dane.

13 6 2 Wprowadzenie do baz danych Znaczenie powyższych pojęć w odniesieniu do ogólnego schematu bazy danych przedstawiono na rysunku 2.1. Rysunek 2.1. Ogólny schemat bazy danych. W bazie danych znajdują się tabele przechowujące dane. Każda tabela zawiera rekordy, a każdy rekord składa się z pól. 2.1 Modele danych W komputerowej bazie danych dane znajdują się w ściśle zdefiniowanych strukturach, które odpowiadają założonemu modelowi danych. Struktury, które znajdują się w bazie danych, pozwalają na tworzenie powiązań pomiędzy danymi. W zależności od sposobu organizacji danych możemy wyróżnić następujące podstawowe typy baz danych: Bazy kartotekowe (płaskie pliki) (ang. flat files). Bazy hierarchiczne (ang. hierarchical databases). Bazy sieciowe (ang. network databases). Bazy relacyjne (ang. relational databases). Bazy obiektowe (ang. object-oriented databases).

14 2.2 Relacyjne bazy danych 7 Pierwsze trzy z wymienionych typów baz danych są na obecną chwilę już rozwiązaniami historycznymi. Najprostszą, a równocześnie historycznie pierwszą formą bazy danych, jest baza kartotekowa, w postaci płaskiego pliku tekstowego, w którym każda linia zawiera odrębny wpis. Cechą charakterystyczną takiego rozwiązania jest brak powiązań pomiędzy poszczególnymi plikami. W związku z tym, jeśli chcemy odszukać konkretny rekord, musimy za każdym razem przeglądać plik od góry. W przypadku baz hierarchicznych model danych reprezentowany jest w postaci struktury drzewiastej. Węzły tego drzewa odpowiadają wpisom. Węzły będące wyżej w hierarchii łączone są z węzłami będącymi niżej relacją jeden-do-wielu (każdy z węzłów-rodziców może mieć wielu potomków, natomiast każdy z potomków może mieć tylko jednego rodzica). Struktura taka umożliwia szybkie wyszukiwanie informacji zgromadzonej w bazie, natomiast do wad tego rozwiązania można zaliczyć problemy związane ze zmianą struktury bazy. Sieciowy model danych zbudowany został na podstawie modelu hierarchicznego, który został rozszerzony o możliwość definiowania relacji wiele-do-wielu pomiędzy węzłami będącymi niżej oraz wyżej w hierarchii. W relacyjnych bazach danych dane reprezentowane są w postaci tabel, pomiędzy którymi istnieją powiązania. Historycznie najnowszym spośród wymienionych modeli jest obiektowy model danych, w którym dane modelowane są za pomocą zbioru powiązanych obiektów, będących pewnymi bytami posiadającymi atrybuty (wartości) oraz metody (funkcje stosowane na obiektach). Obecnie również coraz większą popularność zyskują obiektowo relacyjne modele danych, które łączą w sobie zalety podejścia obiektowego oraz relacyjnego. Bazy danych można również podzielić ze względu na zawartość danych, które są w nich przechowywane. Standardowe postacie danych, jakie przechowywane są w bazach danych, to proste dane typu tekstowego (ciągi znaków) lub liczbowego. Istnieją jednak również bazy danych przechowujące dane multimedialne takie jak pliki audio, wideo czy obrazy. Wspólną cechą tego typu danych jest ich rozmiar, stąd też bazy przechowujące tego typu dane muszą być wyposażone w specjalne mechanizmy ich przetwarzania. 2.2 Relacyjne bazy danych Z uwagi na fakt, iż relacyjne bazy danych są obecnie najpopularniejszym podejściem, model danych w nich występujący zostanie omówiony dokładniej w niniejszym podrozdziale. Relacyjny model danych został zaproponowany w 1970 roku przez Edgara Codda i praktycznie, od drugiej połowy lat 80-tych, stał się podstawą architektury większości systemów baz danych. Bazuje on na pojęciu relacji, czyli pewnej abstrakcji intuicyjnego pojęcia dwuwymiarowej tabeli, która zawiera dane. Przykładem relacji jest na przykład tabela Pracownik (relacja Pracownik), zawierająca listę osób wraz z ich adresem zamieszkania, przedstawiona

15 8 2 Wprowadzenie do baz danych na rysunku 2.2. W dalszej części tego rozdziału terminy relacja oraz tabela używane będą zamiennie. Rysunek 2.2. Relacja Pracownik Nagłówki relacji noszą nazwę atrybutów. Atrybuty najczęściej odpowiadają tytułom kolumn relacji i odzwierciedlają w swojej nazwie opis danych, jakie znajdują się w kolumnach. W powyższej relacji atrybuty to: imię, nazwisko, ulica, numer, miasto. Nazwa relacji oraz zbiór jej atrybutów nazywane są schematem relacji. W przypadku podanego przykładu schemat relacji jest następujący: Pracownik(imię, nazwisko, ulica, numer, miasto). Wiersze relacji, czyli rekordy tabeli, nazywane są krotkami. Każdy z atrybutów ma swój odpowiednik w postaci tzw. składowej krotki, tzn. pierwsza krotka przedstawiona na rysunku 2.2 ma pięć składowych: Jan, Adamek, Sosnowa, 18, Katowice, które są kolejnymi wartościami atrybutów imię, nazwisko, ulica, numer i miasto. W relacyjnym modelu danych, kolejność atrybutów w relacji ani kolejność krotek nie ma znaczenia. Oznacza to, że ich kolejność może być dowolnie przestawiana, a wszystkie relacje, które są kombinacjami danego zbioru krotek oraz atrybutów, są sobie równoważne. Oczywiście należy pamiętać, że jeśli zmieniamy kolejność atrybutów w schemacie relacji, należy również zmienić kolejność składowych krotek. Schemat relacji definiowany jest przez nazwę relacji oraz kolejność atrybutów i jest praktycznie niezmienny. Natomiast zbiór istniejących krotek nazywamy instancją relacji. Instancja relacji zwykle jest modyfikowana i zmienia się w czasie na przykład poprzez dodanie nowych krotek, edycję krotek już istniejących lub usunięcie krotek. Klucze główne Ponieważ kolejność krotek w relacji nie ma znaczenia, musi istnieć jakiś sposób, który pozwoliłby na identyfikację konkretnego wiersza tabeli. Rolę taką spełniają tak zwane klucze główne (inaczej klucze podstawowe), czyli specjalne atrybuty, które w danej relacji pozwalają na jednoznaczną identyfikację wiersza.

16 2.2 Relacyjne bazy danych 9 W przykładowej relacji pokazanej na rysunku 2.2, takim atrybutem mogłoby być np. nazwisko. Oczywiście nietrudno wyobrazić sobie, że w tabeli zawierającej listę osób, prędzej czy później pojawi się osoba o nazwisku takim, jakie już w tabeli istnieje. W tej sytuacji można tworzyć klucze złożone na przykład poprzez wybranie zbioru zawierającego kilka atrybutów. W praktycznych zastosowaniach wykorzystuje się zazwyczaj klucze pojedyncze (składające się z jednego atrybutu). Przykładem takiego klucza może być na przykład numer PESEL, który pozwoli nam na jednoznaczne zidentyfikowanie konkretnej osoby. Najczęściej jednak do tabeli dołącza się dodatkowy, specjalny atrybut, który pełni rolę klucza głównego. Atrybut taki musi posiadać następujące własności: Musi unikalnie identyfikować każdy wiersz. Musi posiadać wartość dla każdego z wierszy, w szczególności nie może przyjmować wartości pustej, tak zwanej wartości NULL. Wartość tego atrybutu pozostaje niezmienna od momentu utworzenia rekordu i nie może być usunięta, jeśli rekord z nią powiązany istnieje w tabeli. W większości bioinformatycznych baz danych, które omawiane będą w niniejszym opracowaniu, rekordy posiadają unikalny identyfikator zwany numerem dostępu (ang. accession number). Identyfikator taki może w tabeli pełnić rolę klucza głównego. Dodatkową jego zaletą jest fakt, że zawsze pozwala odnaleźć dany wpis (np. sekwencję nukleotydową lub aminokwasową) nawet, jeśli w miarę upływu czasu zawartość rekordu jest aktualizowana. Klucze obce Klucz główny jednej tabeli może zostać umieszczony w innej tabeli. Tworzy on wówczas, w tej innej tabeli, tak zwany klucz obcy (ang. foreign key), który pozwala na łączenie tabel pomiędzy sobą i tworzenie pomiędzy nimi powiązań. Wyobraźmy sobie, że dla naszej przykładowej relacji Pracownik poza danymi o pracowniku, chcemy również w bazie danych umieścić informacje na temat posiadanych przez niego dzieci. Jednym ze sposobów mogłoby być dodanie do tabeli Pracownik nowych atrybutów, np. imię_dziecka i wiek_dziecka. Jednakże okazuje się, że nie jest to dobre rozwiązanie w przypadku kiedy pracownik posiada więcej niż jedno dziecko, będziemy zmuszeni do powielenia danych znajdujących się w rekordzie tyle razy, ile dany pracownik posiada dzieci. Ponieważ rozwiązanie takie jest bardzo nieefektywne i rodzi wiele problemów (na przykład podczas aktualizacji danych musielibyśmy aktualizować wszystkie powtarzające się rekordy), w praktyce się go nie stosuje. Zamiast tego tworzy się osobną tabelę (na przykład tabelę Dziecko), w której znajdują się informacje na temat posiadanych dzieci, a następnie umieszcza się w niej specjalne atrybuty zwane kluczami obcymi, które pozwalają na stworzenia powiązań pomiędzy tabelami. Schematyczny przykład, pokazujący w jaki sposób klucze główne i obce mogą zostać wykorzystane do utworzenia powiązania pomiędzy relacją Pracownik, a relacją Dziecko, przedstawiono na rysunku 2.3. Jak widać, do relacji

17 10 2 Wprowadzenie do baz danych Pracownik dołożony został nowy atrybut ID, będący kluczem głównym tej relacji. Atrybut ten jest równocześnie kluczem obcym relacji Dziecko i występuje w niej jako atrybut ID_pracownika. Wiedząc, że atrybut ID_pracownika w tabeli Dziecko odpowiada dokładnie atrybutowi ID w tabeli Pracownik, w łatwy sposób możemy wzajemnie przyporządkować sobie rekordy z obydwu tabel. Rysunek 2.3. Powiązanie typu 1:N pomiędzy tabelami Pracownik oraz Dziecko. Atrybut ID będący kluczem głównym tabeli Pracownik jest kluczem obcym w tabeli Dziecko. Relacje (powiązania) pomiędzy tabelami mogą być następującego typu: 1:1 relacja jeden-do-jeden jednemu rekordowi w tabeli A odpowiada dokładnie jeden rekord w tabeli B. Tego typu powiązania spotykane są rzadko, gdyż w takiej sytuacji odpowiadające sobie rekordy najczęściej umieszcza się w jednej tabeli. 1:N relacja jeden-do-wielu rekordowi w tabeli A odpowiada wiele rekordów w tabeli B, zaś jeden rekord w tabeli B ma przyporządkowany dokładnie jeden rekord w tabeli A. Przykładem takiej relacji może być wspomniana wyżej relacja typu rodzic-dzieci. M:N relacja wiele-do-wielu rekord w tabeli A może być przyporządkowany do wielu rekordów w tabeli B, a równocześnie do jednego rekordu w tabeli B może być przyporządkowanych wiele rekordów z tabeli A. Przykładem takiej relacji może być powiązanie pomiędzy pracownikami oraz zadaniami. Jeden pracownik może być przyporządkowany do wielu zadań, tak samo, jak jedno zadanie może być wykonywane przez wielu pracowników.

18 2.3 Definiowanie zapytań 11 Transakcje Transakcja jest pewnym zbiorem operacji na bazie danych, które stanowią pewną całość. Oznacza to, że wszystkie operacje w ramach transakcji powinny być wykonane od początku do końca, lub nie powinna zostać wykonana żadna z nich. Przykładem transakcji może być przelew pieniędzy z jednego konta na drugie, który składa się z dwóch operacji: pobranie pieniędzy z pierwszego konta i zaksięgowanie pobranej kwoty na drugim koncie. W przypadku jeśli wystąpią problemy z realizacją transakcji, żadna z tych operacji nie powinna zostać wykonana ponieważ wykonanie tylko jednej z nich spowodowałoby wystąpienie nieprawidłowości w bazie pojawienie się lub zniknięcie pieniędzy. Transakcje, które wykonywane są w bazie danych powinny spełniać tak zwane warunki ACID: atomicity atomowość, consistency spójność, isolation izolacja, durability trwałość. Atomowość transakcji oznacza jej niepodzielność, czyli że każda transakcja powinna zostać wykonana w całości albo wcale. Spójność oznacza, że po wykonaniu transakcji nie zostaną naruszone zasady integralności na przykład saldo konta nie powinno być ujemne. Izolacja to cecha, która mówi, że jeśli w danym czasie wykonywanych jest kilka transakcji, to każda z nich powinna się wykonywać oddzielnie, tak jakby była jedyną transakcją wykonywaną w danej chwili w bazie. Trwałość transakcji oznacza, że jeśli dana transakcja zostanie wykonana poprawnie, to efekty jej wykonania zostaną zapisane w bazie. 2.3 Definiowanie zapytań Język SQL Język SQL Strukturalny Język Zapytań (ang. Structured Query Language) umożliwia definiowanie zapytań, które pozwalają na dostęp do danych, a w szczególności na ich odczyt oraz modyfikację. Jest on również narzędziem, które pozwala na zarządzanie bazą danych i wykonywanie wszelkich czynności związanych z administrowaniem bazą danych. Przykładowe polecenie w języku SQL, który w relacji Pracownik wyszukuje wszystkie osoby zamieszkałe w Katowicach, jest następujące: SELECT * FROM pracownik WHERE miasto="katowice" W wyniku wykonania powyższego zapytania zwrócone będą dwie krotki: (Jan, Adamek, Sosnowa, 18, Katowice) oraz (Piotr, Nowak, Sasanek, 38, Katowice). Przedstawiony przykład instrukcji SELECT zawiera trzy słowa kluczowe: SELECT, FROM oraz WHERE. Słowo kluczowe SELECT określa typ instrukcji. Symbol gwiazdki ( ) oznacza, że zapytanie powinno zwrócić cały rekord spełniający dane warunki. Oczywiście nie zawsze interesują nas wszystkie atrybuty w takim przypadku należy po słowie kluczowym SELECT umieścić nazwy tych atrybutów, które powinny zostać zwrócone w wyniku zapytania,

19 12 2 Wprowadzenie do baz danych rozdzielone przecinkami. Po słowie kluczowym FROM określamy tabelę, z której chcemy pobrać dane, natomiast po słowie kluczowym WHERE definiujemy wyrażenie logiczne, które określa warunki, jakie muszą spełniać atrybuty, aby dany rekord został zwrócony w wyniku zapytania. Inne typowe instrukcje języka SQL to: INSERT dodadnie nowego rekordu do istniejącej tabeli, UPDATE aktualizacja istniejącgo rekordu, DELETE usunięcie istniejącego rekordu. Oprócz komend związanych z operacjami na tabelach, język SQL umożliwia również wykonywanie takich czynności jak tworzenie i usuwanie baz danych, tworzenie oraz usuwanie tabel w bazie czy też dodawanie użytkowników do bazy i definiowanie ich uprawnień. Formularze WWW Z uwagi na kwestie związane z bezpieczeństwem danych, zewnętrzni użytkownicy bioinformatycznych baz danych zazwyczaj nie mają możliwości bezpośredniego połączenia się z bazą danych i formułowania zapytań w języku SQL. Najczęstszym rozwiązaniem jest zapewnienie użytkownikowi dostępu do danych poprzez specjalne serwisy internetowe, zawierające odpowiednio skonstruowane formularze WWW, które pozwalają na wybór atrybutów, których wartości nas interesują oraz definiowanie warunków zapytania. Większość bioinformatycznych baz danych, które omawiane będą w niniejszej pracy, udostępnia swoje zasoby właśnie w taki sposób. Często również, poza możliwością pobierania danych, niektóre z baz udostępniają również dodatkowo formularze, które pozwalają na edycję danych i dodawanie nowych rekordów do tabel już istniejących. Metody zadawania zapytań oparte o formularze WWW są bardzo wygodne, ale sprawdzają się w przypadku, jeśli ilość informacji, jaką chcemy pobrać z bazy, jest niewielka na przykład interesują nas informacje na temat pojedynczej sekwencji. Jednak w sytuacji, kiedy ilość przetwarzanych danych jest duża, korzystanie z formularzy WWW okazuje się być nieefektywne i czasochłonne. Dlatego, oprócz formularzy WWW, część bioinformatycznych baz danych udostępnia także specjalne programy i narzędzia pozwalające na definiowanie zaawansowanych zapytań, które pozwalają na równoczesne przetwarzanie większej ilości rekordów. W zależności od potrzeb, stosując takie narzędzia, możemy w jednym zapytaniu pobrać, zaktualizować lub dodać dużą liczbę rekordów do bazy. Przykładem narzędzia, które pozwala na zdefiniowanie złożonego zapytania, które w wyniku może zwrócić wiele rekordów jest narzędzie Entrez Programming Utilities (E-utilities) dostępne w ramach zbioru baz danych Entrez. W tym wypadku użytkownik przesyła odpowiednie zapytanie do bazy poprzez adres internetowy, który tworzony jest według ściśle zdefiniowanych reguł, a w wyniku otrzymuje listę rekordów w formacie XML, które spełniają zadane kryteria. Z kolei przykładem aplikacji, która pozwala na równoczesną edycję lub dodawanie wielu rekordów do bazy danych, jest program Sequin, dostępny w ramach bazy sekwencji nukleotydowych GenBank.

20 3 Bazy danych sekwencji nukleotydowych Każde badania, które mają na celu odkrycie funkcji oraz struktury dowolnej biocząsteczki, rozpoczynają się obecnie od określenia jej sekwencji nukleotydowej. Można się spodziewać, że cząsteczki charakteryzujące się podobną sekwencją nukleotydową będą miały podobne właściwości biologiczne i fizykochemiczne. Także porównywanie sekwencji DNA poszczególnych organizmów pozwala nam prześledzić oraz poznać mechanizmy ewolucji gatunków. Stąd też we współczesnej biologii molekularnej ogromny nacisk kładziony jest na gromadzenie oraz udostępnianie odkrytych już sekwencji nukleotydowych tak, aby badacze z całego świata mogli zgromadzoną już wcześniej informację pobierać oraz wykorzystywać w trakcie swoich aktualnych badań. Obecnie na świecie istnieją trzy podstawowe bazy danych, które gromadzą oraz udostępniają niemal wszystkie dotychczas odkryte sekwencje nukleotydowe: EMBL baza danych European Molecular Biology Laboratory założona w 1982 roku przez European Bioinformatics Institute (EBI) w Cambridge w Wielkiej Brytanii [Kulkowa et al., 2007]. GenBank baza utrzymywana przez National Center for Biotechnology Information (NCBI) w US National Institute of Health (NIH) w Bethesda w Stanach Zjednoczonych [Benson et al., 2007]. DDBJ DNA Databank of Japan, utworzona w 1986 roku baza danych zarządzana w National Institute of Genetics (NIG) [Sugawara et al., 2008]. Każdy z trzech wymienionych powyżej ośrodków działa oddzielnie i dostarcza swoje własne interfejsy, za pomocą których można przesyłać dane. Wspólnie tworzą one International Sequence Database Collaboration (INSDC) i codziennie wymieniają pomiędzy sobą uzyskane informacje, tworząc tym samym spójną bazę danych sekwencji nukleotydowych dostępną dla środowiska naukowego. Dane udostępniane są w postaci plików tekstowych o zdefiniowanym formacie za pomocą FTP lub poprzez dużą liczbę różnych narzędzi i serwisów internetowych, które umożliwiają wyszukiwanie oraz analizę danych dostępnych w bazach.

21 14 3 Bazy danych sekwencji nukleotydowych Bazy sekwencji nukleotydowych tworzone są przez badaczy zarówno indywidualne laboratoria, jak i wysokoprzepustowe centra analiz danych genomowych deponują odkryte sekwencje w jednej z trzech podstawowych baz danych sekwencji nukleotydowych. Sekwencje przesyłane są bądź za pomocą aplikacji internetowych (na przykład Webin bazy EMBL), bądź za pomocą programów komputerowych (na przykład aplikacja Sequin bazy GenBank). Przesyłając dane do wybranej bazy danych, badacze dobrowolnie zgadzają się na udostępnianie swoich wyników i w ten sposób je publikują. Większość czasopism naukowych obecnie wymaga, aby publikując nowo odkrytą cząsteczkę, podać odniesienie do jej rekordu w bazie danych. Każdy wpis w bazie danych składa się z sekwencji pojedynczego, ciągłego odcinka DNA lub RNA, oraz anotacji, czyli opisu tej sekwencji, która zawiera między innymi nazwę organizmu, którego sekwencja dotyczy, odnośniki do literatury oraz opis istotnych cech biologicznych danej sekwencji. Od czasu powstania bazy GenBank liczba zdeponowanych sekwencji powiększa się dwukrotnie co półtora roku. Na rysunku 3.1 umieszczono liczbę sekwencji oraz ich długość od momentu powstania bazy GenBank. Według danych z grudnia 2007 roku, baza danych GenBank zawierała sekwencje dla ponad 260 tysięcy organizmów (w przeważającej części modelowych), przy czym każdego miesiąca w bazie rejestrowanych jest około 17 tysięcy nowych gatunków. Z uwagi na fakt, iż pomiędzy wszystkimi bazami należącymi do INSDC następuje synchronizacja umieszczonych sekwencji, rysunek 3.1 można traktować jako rysunek poglądowy dla każdego z ośrodków należących do INSDC. Najliczniej reprezentowanym gatunkiem pod względem liczby nukleotydów w tej bazie był człowiek (Homo sapiens), następnie mysz domowa (Mus musculus), szczur wędrowny (Rattus norvegicus), bydło domowe (Bos taurus), Rysunek 3.1. Liczba sekwencji i ich łączna długość (kbps) zdeponowanych w bazie GenBank w latach źródło:

22 3 Bazy danych sekwencji nukleotydowych 15 kukurydza zwyczajna (Zea mays), danio pręgowany (Danio rerio) oraz dzik (Sus scrofa). Każda z sekwencji umieszczonych w bazie GenBank należy do pewnej podsekcji, a każda z nich określona jest trzyliterowym skrótem. Obecnie w bazie GenBank istnieje 18 takich podsekcji ich lista została umieszczona w tabeli 3.1. Podział na podsekcje zgodny jest z organizmem, z którego pochodzi dana sekwencja, lub związany jest z technologią, na podstawie której dana sekwencja została wygenerowana. Obecnie podział na organizmy jest raczej podziałem historycznym i nie odnosi się do aktualnej taksonomii NCBI, a raczej służy jako wygodny system podziału bazy na mniejsze pliki, w których umieszczane są sekwencje należące do tej samej podsekcji. Tabela 3.1. Podział sekwencji zgodnie z ich typem lub pochodzeniem symbol sekcji nazwa sekcji PRI sekwencje naczelnych ROD sekwencje gryzoni MAM sekwencje innych ssaków VRT sekwencje innych kręgowców INV sekwencje bezkręgowców PLN sekwencje roślin, grzybów i glonów BCT sekwencje bakterii VRL sekwencje wirusów PHG sekwencje bakteriofagów SYN sekwencje syntetyczne UNA sekwencje nieopisane EST znaczniki sekwencji ulegających ekspresji PAT sekwencje opatentowane STS miejsca markerowe sekwencji GSS sekwencje przeglądowe genomu HTG wysokoprzepustowe sekwencje genomowe HTC wysokoprzepustowe sekwencje cdna ENV sekwencje pochodzące ze środowiska o nieznanym pochodzeniu CON sekwencje skonstruowane na podstawie innych sekwencji Sekwencje nukleotydowe w formacie FASTA Najprostszym, a zarazem najpopularniejszym formatem, który pozwala na reprezentowanie sekwencji nukleotydowych, jest format FASTA. Popularność tego formatu bierze się zapewne stąd, iż jest bardzo prosty i przystępny dla człowieka, a równocześnie te same pliki bez żadnych modyfikacji mogą być przetwarzane przez programy komputerowe. Sekwencja w formacie FASTA składa się ze znaku początku sekwencji > (znak większości), jej nazwy oraz z ciągu znaków małymi lub wielkimi literami zwyczajowo w jednej linii umieszcza się 60 symboli. Różne bazy danych,

23 16 3 Bazy danych sekwencji nukleotydowych które przechowują daną sekwencję, mogą uzupełniać ją o dodatkowe informacje umieszczone w linii nagłówka, jednakże podstawowy schemat (znak większości, nagłówek, ciąg znaków) zazwyczaj pozostaje niezmieniony. Nie istnieje żadna formalna definicja linii nagłówka, tak więc różne bazy danych po symbolu > umieszczają charakterystyczne dla siebie informacje, zachowując przy tym zgodność z formatem. Poniżej pokazano przykładową sekwencję nukleotydową w formacie FAS- TA z bazy danych GenBank. W linii nagłówka umieszczono tak zwany numer GI, numer dostępu GenBank, nazwę LOCUS oraz wiersz DEFINITION. Znaczenie poszczególnych elementów zostanie omówione poniżej. >gi gb GQ Saccharomyces cerevisiae strain TCJ154 Ste2p (STE2) gene, partial cds GCAAGGTTTAGTTAACAGTACTGTTACTCAGGCCATTATGTTTGGTGTCAGATGTGGTGCAGCTGCTTTG ACTTTGATTGTCATGTGGATGACATCGAGAAGCAGAAAAACGCCGATTTTCATTATCAACCAAGTTTCAT TGTTTTTAATCATTTTGCATTCTGCACTCTATTTTAAATATTTACTGTCTAATTACTCTTCAGTGACTTA CGCTCTCACCGGATTTCCTCAGTTCATCAGTAGAGGTGACGTTCATGTTTATGGTGCTACAAATATAATT CAAGTCCTGCTTGTGGCTTCTATTGAGACTTCACTGGTGTTTCAGATAAAAGTTATTTTCACGGGCGACA ACTTCAAAAGGATAGGTTTGATGCTGACGTCGATATCTTTCACTTTAGGAATTGCTACAGTTACCATGTA TTTTGTAAGCGCTGTTAAAGGTATGATTGTGACTTATAATGATGTTAGTGCCACCCAAGGTAAATACTTC AATGCATCCACAATTTTACTTGCATCCTCAATAAACTTTATGTCATTTGTCCTGGTAGTTAAATTGATTT TAGCTATTAGATCAAGAAGATTCCTTGGTCTCAAGCAGTTCGATAGTTTCCATATTTTACTTATAATGTC ATGTCAATCTTTGTTGGTTCCATCGATAATATTCATCCTCGCATACAGTTTGAAACCAAACCAGGGAACA GATGTCTTAACTACTGTTGCAACATTACTTGCTGTATTGTCTTTACCATTATCATCAATGTGGGCCACGG CTGCTAATAATGCATCCAAAACAAACACAATTACTTCAGACTTTACAACATCCACAGATAGGTTTTATCC AGGCACGCTGTCTAGCTTTCAAACTGATAGTATCAACAACGATGCTAAAAGCAGTCTCAGAAGTAGATTG TATGACCTATATCCTAGAAGGAAGGAAACAACATCGGATAAACATTCGGAAAGAACTTTTGTTTCTGAGA CTGCAAATGATATAGAGAAAAATCAGTTTTATCAGTTGCCCACACCTACGAGTTCAAAAAATACTAGGAT Za pomocą formatu FASTA definiować można również sekwencje białkowe. W tym przypadku symbole nukleotydów w sekwencji zastąpione są przez symbole aminokwasów: >gi gb ACU Ste2p [Saccharomyces cerevisiae] QGLVNSTVTQAIMFGVRCGAAALTLIVMWMTSRSRKTPIFIINQVSLFLIILHSALYFKYLLSNYSSVTY ALTGFPQFISRGDVHVYGATNIIQVLLVASIETSLVFQIKVIFTGDNFKRIGLMLTSISFTLGIATVTMY FVSAVKGMIVTYNDVSATQGKYFNASTILLASSINFMSFVLVVKLILAIRSRRFLGLKQFDSFHILLIMS CQSLLVPSIIFILAYSLKPNQGTDVLTTVATLLAVLSLPLSSMWATAANNASKTNTITSDFTTSTDRFYP GTLSSFQTDSINNDAKSSLRSRLYDLYPRRKETTSDKHSERTFVSETANDIEKNQFYQLPTPTSSKNTR Nie istnieje żadne standardowe rozszerzenie pliku zawierającego sekwencje w formacie FASTA, niemniej przyjęło się stosowanie rozszerzenia.fa oraz.fsa. Z kolei baza danych NCBI stosuje własną konwencję:.fna dla plików zawierających geny,.faa dla plików zawierających sekwencje kodujące białka,.ffn dla genów kodujących białka.

24 3.1 Baza danych EMBL Baza danych EMBL Baza danych EMBL jest europejskim oddziałem sieci INSDC. Baza ta utrzymywana jest przez European Bioinformatics Institute (EBI) i wraz z narzędziami, które umożliwiają wyszukiwanie danych oraz ich analizę, dostępna jest na stronie internetowej Baza EMBL została założona w 1982 roku i tym samym jest najstarszą europejską bazą sekwencji. Sekwencje umieszczone w tej bazie są publicznie dostępne i pochodzą głównie od indywidualnych badaczy, grup badawczych, European Patent Office (EPO) oraz z wymiany pomiędzy poszczególnymi członkami INSDC. Nowa wersja bazy wydawana jest co cztery miesiące. Sekwencje zdeponowane w bazie dostępne są za pomocą narzędzia Sequence Retrieval System (SRS), FTP, web serwisów oraz narzędzi wyszukiwania sekwencji podobnych. Każda sekwencja nukleotydowa stanowi odrębny wpis w bazie EMBL, który oprócz samej sekwencji musi zawierać informacje takie jak: identyfikator sekwencji, odnośniki literaturowe oraz anotacje w formie tabeli cech. Tabela cech jest bardzo istotnym elementem rekordu opisującego sekwencje i jej definicja jest wspólna dla wszystkich baz danych należących do INSDC. W tabeli cech znajdują się w zasadzie najważniejsze informacje biologiczne dotyczące danej sekwencji, jakie można uzyskać, analizując dany rekord. Dokumentacja dotycząca tabeli cech opisuje dokładnie, jakie elementy powinny i mogą się w niej znaleźć między innymi są to istotne biologiczne informacje takie jak regiony kodujące, translacje sekwencji nukleotydów na sekwencję aminokwasów, jednostki transkrypcji, miejsca modyfikacji lub mutacji Format rekordu w bazie EMBL Wpisy w bazie EMBL mają ściśle określoną strukturę i jak w większości tego typu danych w bioinformatyce są tak skonstruowane, aby informacje w nich zawarte bez trudu mogły zostać zinterpretowane przez człowieka, przy równoczesnym zapewnieniu możliwości łatwego ich przetwarzania za pomocą programów komputerowych. Dane reprezentowane są w formie tekstowej, natomiast opisy oraz różnego rodzaju komentarze zapisywane są w języku angielskim. Format rekordu w bazie EMBL różni się nieco od formatu danych baz Gen- Bank i DDBJ. Pojedyncza sekwencja zdefiniowana w bazie EMBL to wpis, który składa się z różnego typu informacji. Każda linia w pliku opisującym tę sekwencję jest oddzielnym elementem, posiada swój własny format i rozpoczyna się od dwuliterowej etykiety, na postawie której można określić, jakiego typu informację zawiera dana linia. Poniżej przedstawiono krótki opis większości etykiet linii składających się na jeden rekord w bazie EMBL: ID identyfikator sekwencji. PR identyfikator projektu INSDC.

25 18 3 Bazy danych sekwencji nukleotydowych DT data utworzenia oraz ostatniej modyfikacji. DE ogólne informacje opisujące daną sekwencję. Linia ta może zawierać nazwy genów, których dotyczy sekwencja, lokalizację genomową sekwencji i wszelkie informacje przydatne do identyfikacji sekwencji. KW słowo kluczowe, które może być wykorzystywane do identyfikacji danej sekwencji pomiędzy różnymi bazami danych. OS gatunek organizmu. OC klasyfikacja taksonomiczna organizmu. OG typ organelli. Nazwa części komórki z której pochodzi dana sekwencja. Występuje tylko dla sekwencji niepochodzących z jądra komórkowego. Rx (RN, RC, itd.) wpisy zawierające informacje na temat publikacji naukowych związanych z daną sekwencją. DR odnośniki do innych baz danych, które zawierają informacje związane z tą sekwencją. CC komentarze. FH nagłówek tabeli cech. FT rekordy związane z tabelą cech, która zawiera anotacje danej sekwencji. Wraz z poznaniem właściwości danej sekwencji tabla cech ulega zmianie, tworząc pełniejszy opis zapisanego w bazie ciągu nukleotydów. SEQ sekwencja nukleotydowa. \\ zakończenie rekordu. Nie wszystkie typy linii pojawiają się w każdym rekordzie zawierającym sekwencję. Każdy rekord zawiera takie elementy, jakie wymagane są do jego opisania zgodnie z aktualną wiedzą. Wraz z rosnącą wiedzą na temat danej sekwencji, rekord, który jej dotyczy uzupełniany jest o nowe wpisy. Przykładowy rekord pochodzący z bazy danych EMBL umieszczono w pierwszej części Dodatku Dostęp do rekordów bazy EMBL Przesyłanie nowych sekwencji Deponowanie sekwencji w publicznie dostępnych bazach stało się standardową praktyką autorów, którzy taką sekwencję chcą opublikować w czasopiśmie naukowym. Każda przesłana sekwencja otrzymuje unikalny numer dostępu (ang. accession number), który od tego momentu staje się jej identyfikatorem niezależnie od zmian jakie w przyszłości zostaną wprowadzone w trakcie edycji rekordu dotyczącego tej sekwencji. Numer dostępu danej sekwencji jest identyczny niezależnie od tego, której z baz danych należących do INSDC będziemy używać do jej przeglądania. Każda z baz danych należących do INSDC udostępnia swój własny interfejs do przesyłania danych. Z punktu widzenia użytkownika, który chce zdeponować daną sekwencję, nie ma znaczenia, do

26 3.2 Baza danych GenBank 19 której bazy danych sekwencja zostanie przesłana zdeponowane sekwencje codziennie są wymieniane pomiędzy bazami EMBL, GenBank oraz DDBJ. Baza danych EMBL udostępnia aplikację internetową Webin do deponowania nowych sekwencji nukleotydowych. Aplikacja ta pozwala na przesyłanie pojedynczych sekwencji oraz (w przypadku jeżeli liczba przesyłanych sekwencji przekracza 25) udostępnia również procedurę wsadowego przesyłania sekwencji. Procedura wsadowa może być uruchomiana, jeżeli przesyłane sekwencję są ze sobą powiązane (na przykład są to sekwencje tego samego genu, który został zsekwencjonowany dla większej liczby różnych organizmów). Możliwe jest również przesyłanie danych do bazy za pomocą aplikacji Sequin. Jest to odrębna aplikacja, którą należy zainstalować na komputerze użytkownika. Aplikacja ta została stworzona w NCBI i za jej pomocą można przesłać sekwencję nukleotydów do wybranego członka INSDC. Z uwagi na fakt, iż interfejs Webin posiada odpowiednie mechanizmy pozwalające na sprawdzenie zgodności przesyłanych danych z formatem EMBL, jest to zalecana przez EMBL metoda przesyłania sekwencji. Pobieranie sekwencji zdeponowanych Głównym narzędziem dostępu do sekwencji zdeponowanych w bazie EMBL jest SRS (Sequence Retrieval System). Dodatkowo dane udostępniane są za pomocą serwera FTP oraz za pomocą różnego rodzaju narzędzi wyszukiwania sekwencji podobnych. EMBL udostępnia również szereg narzędzi takich jak Dbfetch, Wsdbfetch, netsev, pozwalających na wyszukiwanie konkretnych sekwencji na podstawie numeru dostępu. 3.2 Baza danych GenBank Baza danych GenBank została założona w 1982 roku, w Los Alamos National Laboratory. Pod koniec lat 80-tych ubiegłego wieku została przeniesiona do National Center for Biotechnology Information (NCBI), gdzie obecnie jest utrzymywana. NCBI jest oddziałem National Library Medicine (NLM) i zlokalizowane jest na terenie US National Health Institute (US NIH) w Bethesda w Stanach Zjednoczonych. Strona internetowa bazy GenBank, jak również i liczne narzędzia do przetwarzania danych zgromadzonych w GenBanku znajduje się pod adresem na stronach NIH. Sekwencje umieszczone w bazie GenBank pochodzą podobnie jak w bazie EMBL głównie od indywidualnych laboratoriów, wysokoprzepustowych centrów sekwencjonowania, US Office Patents and Trademarks Office (USPTO) oraz poprzez wymianę sekwencji pomiędzy członkami INSDC. Nowe wersje bazy wydawane są co dwa miesiące. Tak samo jak w przypadku danych EMBL, sekwencje umieszczone w bazie są publicznie dostępne poprzez różnego rodzaju narzędzia wyszukiwania sekwencji oraz poprzez anonimowe serwery FTP.

27 20 3 Bazy danych sekwencji nukleotydowych Format rekordu w bazie GenBank Format GenBank jest chyba jednym z najczęściej stosowanych formatów przechowywania sekwencji genomowych. Każdy rekord zawiera zwięzły opis sekwencji, nazwę systematyczną organizmu, z którego pochodzi sekwencja, odnośniki do literatury, tabelę cech oraz oczywiście ciąg nukleotydów składających się na sekwencję. Porównując rekord bazy EMBL z rekordem bazy Gen- Bank, widać, że informacje zawarte w rekordach GenBank są praktycznie takie same jak informacje, które znajdują się w EMBL. Pola rekordu zawierają dane, których typ określony jest poprzez etykiety. Poniżej przedstawiono, jakie informacje zawierają poszczególne etykiety: LOCUS pole LOCUS zawiera dane takie jak nazwa locus, czyli kodowe oznaczenie określonego rekordu (obecnie ma znaczenie historyczne), długość sekwencji, typ cząsteczki (zazwyczaj DNA, RNA, mrna itd.), przynależność sekwencji do podsekcji GenBank (patrz tabela 3.1) oraz datę ostatniej modyfikacji. DEFINITION krótki opis sekwencji. ACCESION numer odstępu, który jest unikalnym identyfikatorem sekwencji. Identyfikator ten zazwyczaj składa się z jednej litery i pięciu cyfr (np. U12345) lub z 2 liter i sześciu cyfr (np. AF123456). VERSION informacja o liczbie zmian w rekordzie, które zostały dokonane od momentu przesłania sekwencji do bazy danych. Wartość umieszczana w polu VERSION tworzona jest na podstawione numeru dostępu (np. dla numeru dostępu podanego powyżej: AF ). Wiersz ten zawiera również identyfikator GI (ang. geninfo identifier). Jeżeli w rekordzie zostaną wprowadzone zmiany, wartość VERSION po kropce zwiększana jest o 1 oraz nadawany jest nowy numer GI. KEYWORDS słowa kluczowe przypisane do sekwencji przez jej autora. Z uwagi na fakt, że nie istnieją żadne reguły dodawania słów kluczowych do rekordu, obecnie pole to na raczej wartość historyczną. SOURCE nazwa organizmu, z którego pochodzi sekwencja. Pole to również zawiera podetykietę ORGANISM, w której umieszczana jest formalna, taksonomiczna nazwa organizmu. REFERENCE pole zawierające publikacje związane z daną sekwencją. FEATURES początek tabeli cech. BASE COUNT informacje na temat liczby poszczególnych nukleotydów wchodzących w skład sekwencji. ORIGIN pole to może być puste lub zawierać wskazanie lokalizacji genomowej pierwszego nukleotydu sekwencji (w starszych rekordach). Poniżej tego słowa kluczowego podana jest sekwencja nukleotydowa. \\ etykieta końca rekordu. Przykładowy rekord pochodzący z bazy danych GenBank został umieszczony w drugiej części Dodatku.

28 3.2.2 Dostęp do rekordów bazy GenBank Przesyłanie nowych sekwencji 3.2 Baza danych GenBank 21 Przesyłanie nowych sekwencji do bazy GenBank odbywa się głównie za pomocą aplikacji internetowej BankIt lub za pomocą programu Sequin. Obecnie co trzecia sekwencja przesyłana jest do GenBanku za pomocą aplikacji BankIt, która pozwala na łatwe przesyłanie sekwencji bez konieczności poznawania reguł formatowania danych czy szczegółowych reguł nazewnictwa. Metoda ta polecana jest jeżeli przesyłane sekwencje nie są długie i ich liczba również nie jest duża. Aplikacja BankIt może być także wykorzystywana do edycji istniejących w bazie sekwencji. W sytuacji, jeżeli liczba sekwencji do przesłania jest większa lub sekwencja jest bardzo długa, polecany jest program Sequin, natomiast w sytuacji jeśli przesyłane sekwencje są jeszcze większe (na przykład przesyłany jest cały genom), można wykorzystać do tego celu aplikację linii poleceń Tbl2asn. Każda przesłana sekwencja podlega walidacji przez pracowników Gen- Bank, a po sprawdzeniu wszystkich błędów nadawany jej jest numer dostępu (ang. accession number). Zazwyczaj czas oczekiwania na nadanie numeru wynosi około dwóch dni roboczych (codziennie pracownicy GenBanku nadają około 1600 numerów). Następnie tak sprawdzony rekord przesyłany jest do jego autora w celu zaakceptowania wprowadzonych poprawek. Nadanie numeru dostępu oznacza, że sekwencja została zapisana w bazie i jest dostępna dla jej użytkowników. W przypadku jeżeli autor nie chce jej ujawniać, do czasu pojawienia się publikacji, może ona pozostać utajniona. Pobieranie sekwencji zdeponowanych Podstawowym narzędziem dostępu do sekwencji zapisanych w bazie GenBank jest Entrez internetowa aplikacja podłączona do 35 biologicznych baz danych, która umożliwia wyszukiwanie interesujących informacji (nie tylko sekwencji) zarówno pomiędzy różnymi bazami danych, jak i w pojedynczej, wybranej przez użytkownika bazie danych. Bazy danych dostępne w ramach aplikacji Entrez to bazy zawierające sekwencje nukleotydowe oraz aminokwasowe pochodzące z bazy GenBank i z innych źródeł, mapy genomowe i populacyjne, zbiory sekwencji filogenetycznych oraz środowiskowych, dane pochodzące z ekspresji genów, baza taksonomii NCBI, bazy danych struktur białkowych oraz domen. Każda z baz danych dostępnych w ramach Entrez połączona jest z bazami danych publikacji PubMed oraz PubMed Central. Innym sposobem dostępu do danych bazy GenBank jest korzystanie z narzędzi służących do porównywania sekwencji. Porównywanie sekwencji jest jednym z najbardziej podstawowych, a zarazem najpopularniejszym sposobem analizy danych dostępnych w ramach bazy GenBank. W tym celu udostępniono szereg narzędzi z godziny BLAST, które pozwalają na wyszukiwanie podobieństw pomiędzy zadaną sekwencją a sekwencjami umieszczonymi w bazie.

29 22 3 Bazy danych sekwencji nukleotydowych Analizy BLAST mogą być wykonywane zarówno poprzez udostępnione internetowe aplikacje, jak i za pomocą aplikacji instalowanych na komputerze użytkownika, a udostępnianych poprzez FTP. Ostatnim sposobem dostępu do danych zlokalizowanych w bazie GenBank jest pobieranie wersji bazy w postaci plików tekstowych (w formacie GenBank lub ASN.1), które udostępniane są poprzez serwer FTP. 3.3 Baza danych DDBJ Baza danych DDBJ powstała w 1986 roku w National Institute of Genetics (NIG) w Mishima w Japonii pod nadzorem Japońskiego Ministerstwa Edukacji, Kultury, Sportów, Nauki i Technologii. Dostęp do wszystkich zasobów bazy DDBJ znajduje się pod adresem: Od roku 1987 baza ta stanowi azjatycki oddział INSDC. Format rekordu w bazie DDBJ jest identyczny z formatem rekordu bazy danych GenBank, nie będzie więc on ponownie tutaj opisywany. Nowe wersje bazy danych wydawane są raz na kwartał. Ponad 90% sekwencji, które przesyłane są z Japonii, umieszczane są w zasobach INSDC poprzez bazę DDBJ, pozostałe sekwencje umieszczane w bazie DDBJ przesyłane są z Korei oraz z Chin. Tak jak w przypadku pozostałych baz danych sekwencje przesyłane są zarówno przez indywidualne laboratoria badawcze, jak i wysokoprzepustowe centra sekwencjonowania genów. Dodatkowo baza danych posiada dział, który zawiera sekwencje opatentowane zbierane i przetwarzane przez Japanese Patent Office, Korean Intellectual Property Office, USPTO oraz EPO. Deponowanie danych w bazie DDBJ może odbywać się za pomocą internetowej aplikacji Sakura. W przypadku konieczności przesyłania dużej liczby sekwencji albo sekwencji opisanych dużą liczbą cech lub bardzo długich (powyżej 500 tys. par zasad), zalecane jest przesyłanie sekwencji bezpośrednio do DDBJ za pomocą procedury MSS (Massive Submission System). Tak samo jak w przypadku pozostałych baz należących do INSDC można również korzystać z programu Sequin. 3.4 Adresy Internetowe Adresy internetowych baz danych: DDBJ EMBL GenBank INSDC NCBI

30 4 Przeszukiwanie baz danych sekwencji Podstawowe analizy zawartości publicznych baz danych sekwencji związane są z poszukiwaniem podobieństw (i różnic) pomiędzy sekwencjami, które są dla badacza interesujące. Znajdowanie podobieństw pomiędzy sekwencjami pozwala badaczom na przewidywanie funkcji nowo zsekwencjonowanych genów, przewidywanie nowych członków rodzin genów oraz zrozumienie strukturalnych, funkcjonalnych i ewolucyjnych zależności występujących pomiędzy badanymi sekwencjami. Obecnie gdy w internetowych bazach danych umieszczane są sekwencje całych genomów, poszukiwanie sekwencji podobnych pozwala na przewidywanie lokalizacji oraz funkcji regionów kodujących białka i miejsc regulujących transkrypcję. Materiał genetyczny, który przekazywany jest z pokolenia na pokolenie, ulega ciągłym zmianom poprzez mutacje, którymi poddawane są sekwencje reprezentujące ten materiał. Najprostsze formy mutacji, jakie mogą się pojawiać na poziomie molekularnym, to: substytucja (zamiana jednego nukleotydu na inny), insercja (wstawienie dodatkowego nukleotydu) lub delecja (usunięcie nukleotydu). Przyjmując założenia, że sekwencje różnicowały się poprzez wymienione proste formy mutacji, porównując sekwencje, badacze mogą określać, czy geny lub białka przez nie reprezentowane są homologami, czyli czy posiadają wspólnego przodka. Zazwyczaj nie jesteśmy w stanie określić, jaka jest sekwencja przodka, ale badając podobieństwo, potrafimy stwierdzić, czy dwie sekwencje mają wspólne pochodzenie ewolucyjne. Dopasowując do siebie dwie sekwencje, możemy znajdować pewne obszary, które pozostają niezmienione lub podlegają zmianie w bardzo niewielkim stopniu mówimy wtedy, że pewne fragmenty sekwencji są silnie zakonserwowane. Może to świadczyć, że reprezentują one ważne obszary z punktu widzenia funkcjonowania genu czy też białka. Wyszukiwanie podobieństw pomiędzy sekwencjami pełni bardzo istotną rolę nie tylko dla zrozumienia zależności ewolucyjnych pomiędzy sekwencjami, ale także wykorzystywane jest często w procesie automatycznego przewidywania funkcji nowych genów lub białek. Innym zagadnieniem, które zostanie poruszone w niniejszym rozdziale, jest przeszukiwanie baz danych sekwencji w celu znalezienia grupy sekwencji podo-

31 24 4 Przeszukiwanie baz danych sekwencji bnych do sekwencji, która jest zapytaniem. Jest to zagadnienie o wiele bardziej złożone w porównaniu z zadaniem dokładnego dopasowania dwóch sekwencji. Niemniej obecnie jest to najbardziej podstawowy sposób analizy zawartości baz danych sekwencji. Celem takiego przeszukiwanie jest najczęściej znalezienie grupy sekwencji homologicznych do danej sekwencji, co pozwala określić, które spośród setek tysięcy sekwencji dostępnych w bazie danych mogą być potencjalnie spokrewnione z interesującą nas sekwencją. Biorąc pod uwagę dzisiejszy rozmiar baz danych sekwencji, zadanie to jest nietrywialne i wymaga zastosowania wyspecjalizowanych algorytmów porównywania sekwencji. 4.1 Dopasowywanie dwóch sekwencji Dopasowywanie (zwane inaczej uliniowieniem) dwóch sekwencji polega na znalezieniu najlepszej relacji pomiędzy sekwencjami, która będzie pokazywać zależność jeden-do-jeden pomiędzy zasadami tworzącymi sekwencję nukleotydowe lub pomiędzy aminokwasami tworzącymi sekwencję białkową. Z uwagi na ogromną liczbę możliwych dopasowań problem, który należy rozwiązać podczas dopasowywania dwóch sekwencji, związany jest z określeniem, jakie zestawienie sekwencji jest najlepsze. Poniżej przedstawiono klika różnych sposobów dopasowania dwóch sekwencji nukleotydowych: agatccga oraz ctagacga. Dopasowanie niewykazujące podobieństwa sekwencji: ggatccga ctagacga Dopasowanie bez przerw: ggatccga ctagacga Dopasowanie z przerwami: ggatccga--- c--ta-gacga Inne dopasowanie z przerwami: ---ggatccga ctaga--c-ga Jak widać na powyższym przykładzie, istnieje wiele różnych sposobów dopasowania dwóch sekwencji. Pierwszy problem, jaki się pojawia, związany jest z właściwym wprowadzeniem przerw pomiędzy poszczególnym zasadami. I tak, dopasowując do siebie poszczególne elementy sekwencji, możemy spotkać się z następującymi sytuacjami:

32 Dopasowanie (ang. match). Niedopasowanie (ang. mismatch). Przerwa (ang. gap). 4.1 Dopasowywanie dwóch sekwencji 25 Najprostszym sposobem oceny jakości dopasowania wydaje się stworzenie pewnego systemu punktacji (kar i nagród) za podobieństwo lub jego brak pomiędzy poszczególnymi zasadami lub aminokwasami tworzącymi sekwencję. Dodatkowo każdy system punktacji musi brać pod uwagę nie tylko występowanie substytucji oraz insercji i delecji, ale również długość przerw, które są ich wynikiem. Insercje lub delecje często określane są terminem indels z uwagi na fakt, że tak naprawdę nie wiadomo, czy w procesie ewolucji sekwencji pojawiło się wstawienie nukleotydu czy jego usunięcie. Oceniając jakość dopasowania, możemy zastosować dwa różne podejścia: Punktacja za podobieństwo (ang. similarity scores) im bardziej podobne sekwencje, tym wyższa wartość punktacji (ang. score). Miary odległości (ang. distance measures) im bardziej podobne sekwencje, tym mniejsza wartość miary odległości. W niniejszym rozdziale przedstawione zostaną sposoby dopasowywania sekwencji bazujące na ich wzajemnym podobieństwie. Dopasowywanie sekwencji może odbywać się globalnie, kiedy próbujemy dopasować dwie sekwencje na całej ich długości oraz lokalnie, gdy próbujemy znaleźć najlepsze dopasowanie jedynie dla fragmentu sekwencji. Dopasowywanie sekwencji nukleotydowych różni się od dopasowywania sekwencji białkowych. Podstawowa różnica związana jest z liczbą liter występujących w alfabetach obu rodzajach sekwencji: w sekwencjach nukleotydowych występują tylko 4 litery symbolizujące odpowiednie zasady azotowe, podczas gdy w sekwencjach białkowych mamy 20 liter symbolizujących aminokwasy. Z uwagi na te różnice, obydwa rodzaje sekwencji będą w niniejszym rozdziale rozpatrywane oddzielnie Dopasowywanie sekwencji nukleotydowych Najprostszy schemat oceny dopasowania sekwencji nukleotydowych polega na określeniu jakości dopasowania (ang. score), poprzez nagradzanie występowania identycznych par nukleotydów w uliniowieniu oraz karanie sytuacji braku dopasowania lub wystąpienia przerwy. Mógłby on wyglądać następująco: (ilość dopasowań) (ilość niedopasowań oraz przerw) Powyższy schemat jest bardzo często wykorzystywany przy definiowaniu jakości dopasowywaniu sekwencji. Ważnym elementem takiego dopasowania jest określenie wartości kary za wystąpienie przerwy. Jeśli w danym dopasowaniu mamy przerwę o długości l znaków, to karę za wystąpienie takiej przerwy można przedstawić w postaci pewnej funkcji, której wartość zależna będzie od długości l, i oznaczyć jako δ(l). Funkcja taka pozwala na wyznaczenie warto-

33 26 4 Przeszukiwanie baz danych sekwencji ści kary za wystąpienie przerwy, przeważnie jest wartością zerową lub ujemną. Najprostszy schemat wyznaczanie kary za wystąpienie przerwy nosi nazwę liniowego modelu przerw (ang. linear gap model), gdzie wartość kary wyznacza się następująco: δ(l) = w l, przy założeniu, że w jest pewną nieujemną wartością kary (wagą) za wystąpienie przerwy. Funkcja kary za przerwy może pojawić się w dwóch wariantach: Nieafiniczny model (ang. non-affine model) każde wystąpienie przerwy traktowane jest tak samo. Afiniczny model (ang. affine model) każde utworzenie nowej przerwy jest karane dodatkowo, mamy więc dwie wagi: w gap_start karę, którą przyznajemy za rozpoczęcie nowej przerwy oraz w gap wartość kary, którą przyznajemy każdej następnej przerwy w danym ciągu. Stąd też jeżeli w dopasowaniu sekwencji występuje przerwa o długości l, to wartość funkcji kary wyznaczana będzie w sposób następujący: δ(l) = w gap_start + w gap (l). Dodatkowo można określić maksymalną negatywną wartość kary, która będzie przyznawana, jeśli przerwy w dopasowaniu będą zbyt długie. Poniżej przedstawiono przykłady różnych wartości, jakie można uzyskać dla różnych sposobów dopasowania tych samych sekwencji i dla różnych modeli dopasowania. Wyznaczając wartość dopasowania przyjęto następujące wartości: dopasowanie aminokwasów: +1, brak dopasowania: -1, przerwa: -2, początek przerwy: -4 Sposób I: cgaatcgaacaacatcctca agattcgac--acc----ca Wartość dopasowania dla nieafinicznego modelu: =-6 Wartość dopasowania dla afinicznego modelu: =-14 Sposób II: cgaatcaagcaacttctcta agattcga-c-ac--c--ca Wartość dopasowania dla nieafinicznego modelu: =-2 Wartość dopasowania dla afinicznego modelu: =-18 Analizując powyższe przykłady, warto porównać wyniki jakości dopasowania dla różnych modeli dopasowania. Można zauważyć, że drugi sposób dopasowa-

34 4.1 Dopasowywanie dwóch sekwencji 27 nia, który na pierwszy rzut oka wydaje się dopasowywać do siebie poprawnie więcej zasad niż sposób pierwszy, ma o wiele niższą wartość punktacji przy zastosowaniu modelu afinicznego. Bierze się to stąd, iż z punktu widzenia ewolucji nie można założyć, że wystąpienie np. czterech przerw w sekwencji jest tak samo prawdopodobne, jak wystąpienie jednej przerwy o długości cztery. Należy pamiętać, że pojawienie się przerwy jest wynikiem mutacji samo pojawienie się przerwy jest o wiele mniej prawdopodobne niż jej późniejsze wydłużenie lub skrócenie. Dopasowywanie dwóch sekwencji w sposób podany powyżej jest kosztowne obliczeniowo, polega na sprawdzeniu wszystkich możliwych kombinacji i wyznaczeniu kombinacji najlepszej. Przy analizie dłuższych sekwencji wykorzystanie takiej metody w praktyce jest niemożliwe liczba dopasowań dla pary sekwencji o długościach m oraz n wynosi ( ) m+n n. Stąd też stosuje się metody przybliżone tak zwane programowanie dynamiczne (patrz algorytm Needelmana Wunscha dla dopasowań globalnych [Needleman and Wunsch, 1970] oraz algorytm Smitha Watermana dla dopasowań lokalnych [Smith and Waterman, 1981]), które pozwalają na znalezienie najlepszego dopasowania sekwencji w czasie wielomianowym. Przedstawione powyżej podejście nie bierze jednak pod uwagę składu nukleotydowego porównywanych sekwencji. Na przykład znany jest fakt, że tranzycje (zasada purynowa za zasadę purynową, zasada pirymidynowa za zasadę pirymidynową) pomiędzy zasadami o wiele częstsze niż transwersje (zasada purynowa zamiast zasady pirymidynowej i wice wersa). Mechanizm ten przedstawiono na rysunku 4.1. Rysunek 4.1. Mechanizm tranzycji oraz transwersji pomiędzy zasadami. Przerywanymi strzałkami zaznaczono tranzycje, ciągłymi transwersje Jeżeli wszystkie mutacje zdarzałyby się jednakowo często, stosunek tranzycji do transwersji wynosiłby 1/2. Tymczasem analizy dopasowań wykazują, że stosunek ten wynosi około 4. Stąd też wyznaczając kary oraz nagrody dla sekwencji nukleotydowych, często wykorzystuje się różnego rodzaju macierze korekcji tranzycji oraz transwersji. Innego rodzaju macierze korekcji, które również mogą być wykorzystywane przy wyznaczaniu jakości oceny dopasowania dwóch sekwencji tworzone są na podstawie modeli ewolucyjnych, które uwzględniają prawdopodobieństwa mutacji nukleotydów w czasie.

35 28 4 Przeszukiwanie baz danych sekwencji Dopasowywanie sekwencji aminokwasowych W przypadku dopasowywania sekwencji aminokwasowych liczba możliwych symboli, które mogą się pojawić w sekwencji, wynosi 20. Stąd też dopasowywanie tego rodzaju sekwencji jest trudniejsze i wymaga konstrukcji bardziej złożonych modeli niż w przypadku dopasowywania sekwencji nukleotydowych. Dopasowując sekwencje nukleotydowe, wykorzystuje się wyspecjalizowane macierze substytucji, które pozwalają na uwzględnienie w punktacji prawdopodobieństwa zamiany jednego aminokwasu w drugi. Dwie najpopularniejsze macierze substytucji, które wykorzystywane są do oceny dopasowań sekwencji to macierze PAM oraz BLOSUM. Macierze BLOSUM Macierze BLOSUM (BLOcks SUbstitution Matrix) zostały zaproponowane w 1992 roku w pracy [Henikoff and Henikoff, 1992]. Autorzy przeszukali bazę rodzin białek BLOCKS pod kątem występowania silnie zakonserwowanych regionów domen białek. Następnie na podstawie znalezionych bloków zakonserwowanych fragmentów (czyli takich zbiorów lokalnych dopasowań sekwencji, w których nie występują przerwy w dopasowaniu), dla każdej pary aminokwasów (w sumie jest 210 takich możliwych par), wyliczono częstości występowania poszczególnych dopasowań oraz częstości oczekiwane. Wartości macierzy BLOSUM wyznaczane są metodą różnic logarytmicznych odrębnie dla każdej pary, jako logarytm ze stosunku zaobserwowanej częstości (czyli biologicznie wyznaczonego prawdopodobieństwa, że dwa aminokwasy zostaną ze sobą zamienione) do częstości oczekiwanej (czyli prawdopodobieństwa przypadkowej zamiany aminokwasów). Istnieje kilka różnych rodzajów macierzy BLOSUM w zależności od tego, z jaką dokładnością dobierane były sekwencje tworzące bloki, na podstawie których wyliczane są później wartości macierzy. Każda z macierzy oznaczona jest symbolem BLOSUMX, gdzie X określa procent identyczności sekwencji podczas ich grupowania. Tak więc, np. macierz BLOSUM62 oznacza, że sekwencje tworzące blok były co najmniej w 62% identyczne. Im mniej zróżnicowane są sekwencje dopasowywane, tym większy numer powinna zawierać macierz BLOSUM wykorzystywana do ustalenia punktacji dopasowania. Macierze BLOSUM biorą pod uwagę jedynie wzajemne podobieństwo sekwencji źródłowego dopasowania, autorzy macierzy nie stosują żadnego modelu ewolucyjnego do określenia prawdopodobieństwa przejścia jednego aminokwasu w drugi. Zaletą takiego podejścia jest fakt, że dane do utworzenia macierzy pochodzą bezpośrednio z obserwacji, a nie są budowane na podstawie modelu ewolucji sekwencji. Macierze PAM Macierze PAM (Accepted Point Mutations) zostały zaproponowane przez grupę M.Dayhoff w 1978 r. [Dayhoff et al., 1978] i oparte są na modelu ewolucyjnym tak zwanych akceptowanych mutacji punktowych.

36 4.1 Dopasowywanie dwóch sekwencji 29 Akceptowana mutacja punktowa oznacza zastąpienie jednego aminokwasu w sekwencji innym. Takim aminokwasem, który jest akceptowany przez ewolucję w tym sensie, że dla danego gatunku mutacja nie tylko powstała, ale również się utrwaliła. Podobnie jak w przypadku macierzy BLOSUM, konstrukcja macierzy PAM rozpoczyna się od grupowania silnie zakonserwowanych fragmentów domen w bloki, które zawierają sekwencje odpowiednio podobne w oryginalnym podejściu Dayhoff przyjęto założenie, że sekwencje tworzące dany blok nie mogą być od siebie różne bardziej niż w 15%. W przeciwieństwie do macierzy BLOSUM, gdzie dopasowuje się tylko silnie zakonserwowane fragmenty sekwencji (czyli dopasowanie odbywa się lokalnie), w metodzie Dayhoff poszukiwanie sekwencji podobnych ma charakter globalny. Dla każdej grupy sekwencji tworzone są drzewa filogenetyczne (tak konstruowane, aby w całym drzewie liczba podstawień była minimalna), a następnie wykorzystuje się te drzewa do zliczenia wszystkich możliwych przypadków podstawienia aminokwasów. W wyniku otrzymujemy tak zwaną macierz zliczeń, która dla każdej pary aminokwasów zawiera liczbę możliwych podstawień. Na podstawie macierzy zliczeń wyznaczana jest względna mutowalność każdego aminokwasu, czyli prawdopodobieństwo, że w danej jednostce czasu zostanie on zastąpiony innym aminokwasem. 1 PAM oznacza, że w danym czasie sekwencja ta uległa średnio zmianie w 1%, czyli zostało wymienione około 1% wszystkich reszt aminokwasowych (na 100 reszt aminokwasowych jedna uległa zmianie). Oczywiście po okresie 100 PAM nie każdy aminokwas na 100 zostanie wymieniony niektóre mogły zmutować kilka razy, a inne pozostały niezmienione. Model ewolucyjny dla macierzy PAM zakłada, że zmiany zachodzące w białkach są efektem skumulowanych, nieskorelowanych mutacji. Stąd macierz zawierająca prawdopodobieństwo wystąpienia n podstawień powstaje poprzez n krotne pomnożenie przez siebie macierzy. Na podstawie macierzy prawdopodobieństw mutacji, będącej odzwierciedleniem pewnego modelu ewolucyjnego, tworzona jest macierz punktacji prawdopodobieństwa substytucji PAM. Macierz punktacji jest macierzą różnic logarytmicznych i wyznaczamy ją, dzieląc wartości znajdujące się w macierzy prawdopodobieństw mutacji przez wartość prawdopodobieństwa mutacji wynikające tylko z częstości występowania reszt aminokwasowych. W celu dobrania odpowiedniej skali otrzymany wynik dzielenia jest logarytmowany logarytmem o podstawie 10, a następnie mnożony razy 10. Wartości w macierzy PAM powyżej 1 oznaczają, że dana para aminokwasów ulega mutacji częściej niż wynikałoby to z przypadku. Takie aminokwasy mają zazwyczaj podobne właściwości fizykochemiczne. Wartości równe 1 oznaczają, że prawdopodobieństwo mutacji równe jest prawdopodobieństwu wynikającemu z przypadku, natomiast wartości w macierzy poniżej jedynki oznaczają, że aminokwasy różnią się od siebie własnościami fizykochemicznymi. Podobieństwo (lub jego brak) pomiędzy dwoma aminokwasami może wynikać z ich kształtu, rozmiaru, lokalnych koncentracji ładunku elektrostatycznego,

37 30 4 Przeszukiwanie baz danych sekwencji konformacji powierzchni van der Waalsa czy też ich cech hydrofobowych i hydrofilowych. Najpopularniejszą macierzą z rodziny PAM jest macierz PAM250, co wynika z tego, że była to jedyna macierz opublikowana oryginalnie przez grupę Dayhoff. Odległość ewolucyjna 250PAM oznacza, że tylko jeden aminokwas na pięć nie uległ substytucji, czyli sekwencja uległa zmianie w 80% (na każde 100 reszt aminokwasowych przypadło 250 zamian). W zależności od tego, czy analizujemy sekwencje blisko ze sobą spokrewnione, czy dalekie, powinniśmy używać różnych macierzy dla sekwencji odległych najlepiej sprawdzają się macierze PAM o wysokich numerach (takich jak PAM200 czy PAM250), z kolei dla sekwencji blisko ze sobą spokrewnionych, lepsze wyniki dają macierze o niższych numerach. Warto zwrócić uwagę, że tendencja ta jest odwrotna niż w przypadku macierzy BLOSUM. 4.2 Poszukiwanie sekwencji podobnych w bazach danych - BLAST W przypadku, gdy przeszukujemy bazę danych względem pewnej konkretnej sekwencji, podstawowym celem, jaki stawiamy przed sobą, jest znalezienie możliwie dużej liczby homologicznych sekwencji, a nie jak w przypadku uliniowiania sekwencji znalezienia możliwie najlepszego sposobu na dopasowanie do siebie poszczególnych nukleotydów lub aminokwasów składających się na daną sekwencję. Stąd też do przeszukiwania baz danych wykorzystuje się dedykowane, heurystyczne algorytmy, które pozwalają na możliwe szybkie przeszukiwanie zasobów zawartych w bazach sekwencji i z dużym prawdopodobieństwem umożliwiają znalezienie sekwencji możliwie najbardziej podobnych do sekwencji zadanej. Większość programów poszukiwania sekwencji działa w podobny sposób: w pierwszym korku eliminowane są sekwencje, które są niepodobne do sekwencji będącej zapytaniem, a następnie sekwencje najbardziej podobne są dopasowywane do siebie. Najczęściej wykorzystywanym narzędziem do wyszukiwania sekwencji homologicznych jest program BLAST (ang. Basic Local Alignment Search Tool) [Ye et al., 2006] oraz jego liczne rozszerzenia. Program ten dostępny jest w wielu różnych wersjach, między innymi jako aplikacja internetowa. Z punktu widzenia użytkownika obsługa programu jest bardzo prosta: wystarczy bowiem wkleić sekwencję będącą zapytaniem w odpowiednie pole tekstowe, ustawić parametry programu i uruchomić wyszukiwanie, aby po chwili w wyniku otrzymać listę sekwencji najbardziej podobnych do zadanej sekwencji wraz z informacją o jakości tego podobieństwa. Na rysunku 4.2 przedstawiono formatkę wejściową programu BLAST w wersji aplikacji internetowej dostępnej na stronach NCBI. Zależnie od rodzaju sekwencji, która jest zapytaniem przesłanym przez użytkownika i bazy danych, która przeszukiwana jest względem podobieństwa sekwencji, dostępne są różne wersje programu BLAST:

38 4.2 Poszukiwanie sekwencji podobnych Rysunek 4.2. Formatka wejściowa dla programu BLAST blastn, megablast sekwencja nukleotydowa vs. baza sekwencji nukleotydowych. Na podstawie sekwencji nukleotydowej program zwraca listę najbardziej podobnych sekwencji nukleotydowych pochodzących z wybranej przez użytkownika bazy sekwencji.

39 32 4 Przeszukiwanie baz danych sekwencji blastp, psi-blast, phi-blast sekwencja białkowa vs. baza sekwencji białkowych. Na podstawie sekwencji białkowej program zwraca listę najbardziej podobnych sekwencji białkowych pochodzących z bazy sekwencji wybranej przez użytkownika. blastx przetłumaczona sekwencja nukleotydowa vs. baza sekwencji białkowych. Sekwencja nukleotydowa tłumaczona jest na sekwencję białkową we wszystkich możliwych sześciu ramkach odczytu, a następnie porównywana z sekwencjami białkowymi. tblastx przetłumaczona sekwencja nukleotydowa vs. przetłumaczone sekwencje nukleotydowe. Sekwencja nukleotydowa tłumaczona jest na sekwencję białkową we wszystkich możliwych sześciu ramkach odczytu, a następnie porównywana z przetłumaczonymi na sekwencje białkowe sekwencjami nukleotydowymi. Celem takiego przeszukiwania jest znalezienie bardzo zależności pomiędzy bardzo odległymi sekwencjami nukleotydowymi. tblastn sekwencja białkowa vs. przetłumaczone sekwencje nukleotydowe. Sekwencja białkowa porównywana jest z listą sekwencji białkowych pochodzących z tłumaczenia sekwencji nukleotydowych we wszystkich możliwych sześciu ramkach odczytu. oraz adaptacje programu BLAST takie jak: psi-blast program pozwalający na znajdowanie zależności pomiędzy odległymi ewolucyjnie białkami. Na podstawie sekwencji białkowej będącej zapytaniem wyszukiwane są sekwencje podobne, które tworzą profil (czyli zestaw cech charakterystycznych) wykorzystywany do przeszukiwania bazy sekwencji białkowych. rps-blast wyszukiwanie domen białek. Działanie programu BLAST oparte jest na metodzie heurystycznej, bazującej na lokalnych dopasowaniach krótkich fragmentów sekwencji. Sekwencja zapytanie dzielona jest na krótkie, nakładające się słowa o długości W, następnie zaś, baza danych sekwencji przeszukiwana jest w celu znalezienia fragmentów sekwencji o długości W, takich samych jak słowa pochodzące z oryginalnej sekwencji. Dla różnych wersji algorytmu parametr W jest zmienny, np. w blastp domyślnie W =3, w blastn W =11, a w megablast W =28. Dodatkowo, w zależności od wersji programu BLAST, w dopasowywaniu mogą brać udział oryginalne krótkie słowa albo tak zwane słowa sąsiednie (ang. neighbourhood words), których podobieństwo do słów pochodzących z oryginalnej sekwencji nie przekracza pewnej wartości progowej T. Następnie dla każdego znalezionego identycznego fragmentu sekwencji wyznacza się jego dopasowanie z oryginalną sekwencją, rozszerzając dopasowanie w obie strony i oceniając jakość tego dopasowania zgodnie z macierzami punktacji dla sekwencji białkowych lub nukleotydowych (dla sekwencji białkowych domyślną macierzą punktacji jest macierz BLOSUM62) i założonymi wartościami kar za występowanie przerw w dopasowaniu. Dla każdej pary sekwencji poszukuje się najlepszych dopasowań tworzących pary MSP (ang. maximal scoring pair) lub HSP (ang.

40 4.2 Poszukiwanie sekwencji podobnych high scoring pair). Określona jest pewna wartość progowa S punktacji dopasowania, która musi być spełniona, aby dane uliniowienie zostało przez program uznane za dopasowanie MSP lub HSP. W przypadku, jeżeli dane dopasowanie nie może być poprawione przez dalsze wydłużanie lub skracanie sekwencji dopasowywanej, proces dopasowywania jest przerywany, a dopasowany region zapamiętywany jako wynik działania algorytmu. Schemat poszukiwania par HSP przedstawiono na rysunku 4.3. Rysunek 4.3. Schemat wyszukiwania par HSP za pomocą algorytmu BLAST. Na postawie: Dla każdego zapamiętanego dopasowania wyznaczana jest jego jakość, korzystając z macierzy substytucji. Niemniej nie jest to informacja wystarczająca potrzebna jest również jakaś metoda, która pozwoli na stwierdzenie, czy dane dopasowanie oznacza, że dwie sekwencje są względem siebie homologiczne. Innymi słowy, potrzebny jest pewien model statystyczny, który pozwoli określić, czy dane dopasowanie jest znamienne statystycznie (a tym samym prawdopodobne ewolucyjnie), czy wynika jedynie z przypadku. Znamienność statystyczna każdego dopasowania określana jest za pomocą E-wartości (ang. E-value, expected value), która może być interpretowana jako szansa przypadkowego zaistnienia dopasowania o danej długości i wartości punktacji S. E-wartość jest parametrem, który określa jakiej liczby przypadkowych dopasowań moglibyśmy się spodziewać, gdybyśmy przeszukiwali bazę danych sekwencji o określonej długości. Wraz ze wzrostem wartości S, E-wartość maleje wykładniczo. Przykładowo dopasowanie, dla którego E-wartość

41 34 4 Przeszukiwanie baz danych sekwencji wynosi 1, oznacza że dla bazy danych o aktualnym rozmiarze można się spodziewać jednego przypadkowego dopasowania o wartości punktacji równej S. Im mniejsza E-wartość i im bliższa jest ona zeru, tym większa jest istotność dopasowania. W celu wyznaczenia E-wartości w programie BLAST wykorzystuje się zaproponowany przez Karlina i Altchula [Karlin and Altschul, 1993] model statystyczny. Model ten może być stosowany dla lokalnych dopasowań sekwencji bez przerw w dopasowaniach. Zgodnie z modelem statystycznym Karlina i Altchula, rozkład wyników lokalnych dopasowań (wartości punktacji) z przypadkowymi sekwencjami dąży do rozkładu wartości ekstremalnej (ang. extreme value distribution). Krzywa reprezentująca rozkład wartości ekstremalnej jest niesymetryczna tempo przyrostu przed maksimum jest mniejsze od tempa zmniejszania się wartości po maksimum. Rozkład ten jest zależny od dwóch parametrów λ oraz K. Parametr K określa wartość maksimum rozkładu, natomiast parametr λ wpływa na szerokość rozkładu. Na rysunku 4.4 pokazano, w jaki sposób parametry λ i K wpływają na kształt krzywej rozkładu. Rysunek 4.4. Wpływ parametrów rozkładu wartości ekstremalnej na kształt krzywej rozkładu Przyjmując założenie, że mamy sekwencje zapytanie o długości m oraz bazę danych sekwencji o długości n, oczekiwana liczba przypadkowych dopasowań

42 4.2 Poszukiwanie sekwencji podobnych sekwencji o wartości podobieństwa co najmniej S wyznaczana jest wzorem: E = Kmne λs, gdzie wartości λ i K są parametrami związanymi z przestrzenią przeszukiwań i systemem punktacji. Znamienność statystyczna danego dopasowania związana jest z wielkością przeszukiwanej bazy danych oraz z długością sekwencji zapytania. Im więcej jest sekwencji w bazie danych, tym wyższa jest ocena S najlepszego dopasowania parą sekwencji, w efekcie czego musi być ona wyższa, by została uznana za znamienną statystycznie. Jest to wynikiem tego, że bazy danych zawierające dużą liczbę sekwencji zwiększają szanse przypadkowego uzyskania takich dopasowań. Przedstawiony powyżej model statystyczny został skonstruowany dla lokalnych dopasowań niezawierających przerw. W takim przypadku wartości K oraz λ można wyznaczyć w sposób analityczny. Niestety, nie ma obecnie dostępnego modelu dla dopasowań zawierających przerwy. Stąd też dla tego rodzaju dopasowań parametry wyznaczane są w sposób symulacyjny. Dla tego rodzaju dopasowań programy z rodziny BLAST korzystają z gotowych już zestawów parametrów wyznaczonych dla niektórych macierzy substytucji oraz wartości kar za wystąpienie przerwy. Wyniki wyszukiwania sekwencji za pomocą programów z rodziny BLAST najczęściej przedstawiane mogą być albo w postaci standardowego raportu, w formacie wygodnym do interpretacji przez człowieka, w postaci tabeli trafień (ang. hit table), albo w postaci strukturyzowanej w formacie XML lub ASN.1. Poniżej zostanie krótko omówiona postać raportu w formacie standardowym. Typowy raport rozpoczyna się od części nagłówkowej zawierającej skrótową informacje na temat zapytania, jego identyfikator, typ molekuły, oraz informacje na temat bazy danych, która była przeszukiwana. Właściwe wyniki wyszukiwanie udostępnione są w formie graficznej, która pozwala na szybkie zorientowanie się w rezultatach wyszukiwania. Na rysunku 4.5 przedstawiono przykładowe wyniki przeszukiwania bazy sekwencji białkowych za pomocą narzędzia blastp, dla sekwencji o długości 570 reszt aminokwasowych. Sekwencja zapytanie reprezentowana jest za pomocą czerwonego paska na samej górze rysunku. Znalezione w bazie danych sekwencje pasujące są uliniowione w stosunku do sekwencji zapytania, a kolory reprezentują jakość tego dopasowania. Najgorzej dopasowane sekwencje (poniżej 40 reszt) zaznaczone są kolorem czarnym, a najlepiej (powżej 200 reszt dopasowanych) zaznaczone są kolorem czerwonym. Kliknięcie myszką na dowolne dopasowanie przenosi użytkownika do części wyników zawierających uliniowienie konkretnego dopasowania do sekwencji zapytania. Poniżej graficznej reprezentacji wyników znajduje się lista sekwencji, które zostały dopasowane wraz z punktacją dopasowania oraz E-wartością. Przykład takiej listy przedstawiono na rysunku 4.6. Ostatni fragment raportu zawiera uliniowienie znalezionych dopasowań sekwencji. Pojawiają się tu takie informacje jak: punktacja dopasowania (score),

43 36 4 Przeszukiwanie baz danych sekwencji Rysunek 4.5. Graficzna reprezentacja wyników wyszukiwania sekwencji homologicznych za pomocą narzędzia blastp Rysunek 4.6. Wyniki wyszukiwania sekwencji za pomocą programu blastp lista znalezionych sekwencji wraz z punktacją i E-wartością

Bioinformatyka. Michał Bereta mbereta@pk.edu.pl www.michalbereta.pl

Bioinformatyka. Michał Bereta mbereta@pk.edu.pl www.michalbereta.pl Bioinformatyka Michał Bereta mbereta@pk.edu.pl www.michalbereta.pl 1 Bazy danych biologicznych Bazy danych sekwencji nukleotydowych Pierwotne bazy danych (ang. primary database) Wykorzystywane do zbierania

Bardziej szczegółowo

Bioinformatyka. Michał Bereta

Bioinformatyka. Michał Bereta Bioinformatyka Michał Bereta mbereta@pk.edu.pl www.michalbereta.pl 1 Bazy danych biologicznych Bazy danych sekwencji nukleotydowych Pierwotne bazy danych (ang. primary database) Wykorzystywane do zbierania

Bardziej szczegółowo

PRZESTRZENNE BAZY DANYCH WYKŁAD 2

PRZESTRZENNE BAZY DANYCH WYKŁAD 2 PRZESTRZENNE BAZY DANYCH WYKŁAD 2 Baza danych to zbiór plików, które fizycznie przechowują dane oraz system, który nimi zarządza (DBMS, ang. Database Management System). Zadaniem DBMS jest prawidłowe przechowywanie

Bardziej szczegółowo

Krzysztof Kadowski. PL-E3579, PL-EA0312,

Krzysztof Kadowski. PL-E3579, PL-EA0312, Krzysztof Kadowski PL-E3579, PL-EA0312, kadowski@jkk.edu.pl Bazą danych nazywamy zbiór informacji w postaci tabel oraz narzędzi stosowanych do gromadzenia, przekształcania oraz wyszukiwania danych. Baza

Bardziej szczegółowo

WPROWADZENIE DO BAZ DANYCH

WPROWADZENIE DO BAZ DANYCH WPROWADZENIE DO BAZ DANYCH Pojęcie danych i baz danych Dane to wszystkie informacje jakie przechowujemy, aby w każdej chwili mieć do nich dostęp. Baza danych (data base) to uporządkowany zbiór danych z

Bardziej szczegółowo

Bazy danych - wykład wstępny

Bazy danych - wykład wstępny Bazy danych - wykład wstępny Wykład: baza danych, modele, hierarchiczny, sieciowy, relacyjny, obiektowy, schemat logiczny, tabela, kwerenda, SQL, rekord, krotka, pole, atrybut, klucz podstawowy, relacja,

Bardziej szczegółowo

2017/2018 WGGiOS AGH. LibreOffice Base

2017/2018 WGGiOS AGH. LibreOffice Base 1. Baza danych LibreOffice Base Jest to zbiór danych zapisanych zgodnie z określonymi regułami. W węższym znaczeniu obejmuje dane cyfrowe gromadzone zgodnie z zasadami przyjętymi dla danego programu komputerowego,

Bardziej szczegółowo

Laboratorium Technologii Informacyjnych. Projektowanie Baz Danych

Laboratorium Technologii Informacyjnych. Projektowanie Baz Danych Laboratorium Technologii Informacyjnych Projektowanie Baz Danych Komputerowe bazy danych są obecne podstawowym narzędziem służącym przechowywaniu, przetwarzaniu i analizie danych. Gromadzone są dane w

Bardziej szczegółowo

Diagramy związków encji. Laboratorium. Akademia Morska w Gdyni

Diagramy związków encji. Laboratorium. Akademia Morska w Gdyni Akademia Morska w Gdyni Gdynia 2004 1. Podstawowe definicje Baza danych to uporządkowany zbiór danych umożliwiający łatwe przeszukiwanie i aktualizację. System zarządzania bazą danych (DBMS) to oprogramowanie

Bardziej szczegółowo

Baza danych. Baza danych to:

Baza danych. Baza danych to: Baza danych Baza danych to: zbiór danych o określonej strukturze, zapisany na zewnętrznym nośniku (najczęściej dysku twardym komputera), mogący zaspokoić potrzeby wielu użytkowników korzystających z niego

Bardziej szczegółowo

Pojęcie bazy danych. Funkcje i możliwości.

Pojęcie bazy danych. Funkcje i możliwości. Pojęcie bazy danych. Funkcje i możliwości. Pojęcie bazy danych Baza danych to: zbiór informacji zapisanych według ściśle określonych reguł, w strukturach odpowiadających założonemu modelowi danych, zbiór

Bardziej szczegółowo

Bazy danych. wprowadzenie teoretyczne. Piotr Prekurat 1

Bazy danych. wprowadzenie teoretyczne. Piotr Prekurat 1 Bazy danych wprowadzenie teoretyczne Piotr Prekurat 1 Baza danych Jest to zbiór danych lub jakichkolwiek innych materiałów i elementów zgromadzonych według określonej systematyki lub metody. Zatem jest

Bardziej szczegółowo

Rozdział 1 Wprowadzenie do baz danych. (c) Instytut Informatyki Politechniki Poznańskiej 1

Rozdział 1 Wprowadzenie do baz danych. (c) Instytut Informatyki Politechniki Poznańskiej 1 Rozdział 1 Wprowadzenie do baz danych 1 Model danych 2 Funkcje systemu zarządzania bazą danych Wymagania spójność bazy danych po awarii trwałość danych wielodostęp poufność danych wydajność rozproszenie

Bardziej szczegółowo

Systemy baz danych. mgr inż. Sylwia Glińska

Systemy baz danych. mgr inż. Sylwia Glińska Systemy baz danych Wykład 1 mgr inż. Sylwia Glińska Baza danych Baza danych to uporządkowany zbiór danych z określonej dziedziny tematycznej, zorganizowany w sposób ułatwiający do nich dostęp. System zarządzania

Bardziej szczegółowo

Wprowadzenie do baz danych

Wprowadzenie do baz danych Wprowadzenie do baz danych Bazy danych stanowią obecnie jedno z ważniejszych zastosowań komputerów. Podstawowe zalety komputerowej bazy to przede wszystkim szybkość przetwarzania danych, ilość dostępnych

Bardziej szczegółowo

Wykład 2. Relacyjny model danych

Wykład 2. Relacyjny model danych Wykład 2 Relacyjny model danych Wymagania stawiane modelowi danych Unikanie nadmiarowości danych (redundancji) jedna informacja powinna być wpisana do bazy danych tylko jeden raz Problem powtarzających

Bardziej szczegółowo

Alicja Marszałek Różne rodzaje baz danych

Alicja Marszałek Różne rodzaje baz danych Alicja Marszałek Różne rodzaje baz danych Rodzaje baz danych Bazy danych można podzielić wg struktur organizacji danych, których używają. Można podzielić je na: Bazy proste Bazy złożone Bazy proste Bazy

Bardziej szczegółowo

Podstawowe pojęcia dotyczące relacyjnych baz danych. mgr inż. Krzysztof Szałajko

Podstawowe pojęcia dotyczące relacyjnych baz danych. mgr inż. Krzysztof Szałajko Podstawowe pojęcia dotyczące relacyjnych baz danych mgr inż. Krzysztof Szałajko Czym jest baza danych? Co rozumiemy przez dane? Czym jest system zarządzania bazą danych? 2 / 25 Baza danych Baza danych

Bardziej szczegółowo

Podstawowe zagadnienia z zakresu baz danych

Podstawowe zagadnienia z zakresu baz danych Podstawowe zagadnienia z zakresu baz danych Jednym z najważniejszych współczesnych zastosowań komputerów we wszelkich dziedzinach życia jest gromadzenie, wyszukiwanie i udostępnianie informacji. Specjalizowane

Bardziej szczegółowo

BAZY DANYCH. Co to jest baza danych. Przykłady baz danych. Z czego składa się baza danych. Rodzaje baz danych

BAZY DANYCH. Co to jest baza danych. Przykłady baz danych. Z czego składa się baza danych. Rodzaje baz danych BAZY DANYCH Co to jest baza danych Przykłady baz danych Z czego składa się baza danych Rodzaje baz danych CO TO JEST BAZA DANYCH Komputerowe bazy danych już od wielu lat ułatwiają człowiekowi pracę. Są

Bardziej szczegółowo

Pojęcie systemu informacyjnego i informatycznego

Pojęcie systemu informacyjnego i informatycznego BAZY DANYCH Pojęcie systemu informacyjnego i informatycznego DANE wszelkie liczby, fakty, pojęcia zarejestrowane w celu uzyskania wiedzy o realnym świecie. INFORMACJA - znaczenie przypisywane danym. SYSTEM

Bardziej szczegółowo

Baza danych. Modele danych

Baza danych. Modele danych Rola baz danych Systemy informatyczne stosowane w obsłudze działalności gospodarczej pełnią funkcję polegającą na gromadzeniu i przetwarzaniu danych. Typowe operacje wykonywane na danych w systemach ewidencyjno-sprawozdawczych

Bardziej szczegółowo

Technologia informacyjna

Technologia informacyjna Technologia informacyjna Pracownia nr 9 (studia stacjonarne) - 05.12.2008 - Rok akademicki 2008/2009 2/16 Bazy danych - Plan zajęć Podstawowe pojęcia: baza danych, system zarządzania bazą danych tabela,

Bardziej szczegółowo

Bazy Danych. C. J. Date, Wprowadzenie do systemów baz danych, WNT - W-wa, (seria: Klasyka Informatyki), 2000

Bazy Danych. C. J. Date, Wprowadzenie do systemów baz danych, WNT - W-wa, (seria: Klasyka Informatyki), 2000 Bazy Danych LITERATURA C. J. Date, Wprowadzenie do systemów baz danych, WNT - W-wa, (seria: Klasyka Informatyki), 2000 J. D. Ullman, Systemy baz danych, WNT - W-wa, 1998 J. D. Ullman, J. Widom, Podstawowy

Bardziej szczegółowo

BIOLOGICZNE BAZY DANYCH SYLABUS

BIOLOGICZNE BAZY DANYCH SYLABUS BIOLOGICZNE BAZY DANYCH SYLABUS Elementy składowe sylabusu Nazwa jednostki prowadzącej kierunek Nazwa kierunku studiów Poziom kształcenia Profil studiów Forma studiów Kod Język Rodzaj Rok studiów /semestr

Bardziej szczegółowo

Podstawowe pakiety komputerowe wykorzystywane w zarządzaniu przedsiębiorstwem. dr Jakub Boratyński. pok. A38

Podstawowe pakiety komputerowe wykorzystywane w zarządzaniu przedsiębiorstwem. dr Jakub Boratyński. pok. A38 Podstawowe pakiety komputerowe wykorzystywane w zarządzaniu przedsiębiorstwem zajęcia 1 dr Jakub Boratyński pok. A38 Program zajęć Bazy danych jako podstawowy element systemów informatycznych wykorzystywanych

Bardziej szczegółowo

Systemy baz danych w zarządzaniu przedsiębiorstwem. W poszukiwaniu rozwiązania problemu, najbardziej pomocna jest znajomość odpowiedzi

Systemy baz danych w zarządzaniu przedsiębiorstwem. W poszukiwaniu rozwiązania problemu, najbardziej pomocna jest znajomość odpowiedzi Systemy baz danych w zarządzaniu przedsiębiorstwem W poszukiwaniu rozwiązania problemu, najbardziej pomocna jest znajomość odpowiedzi Proces zarządzania danymi Zarządzanie danymi obejmuje czynności: gromadzenie

Bardziej szczegółowo

Pytania SO Oprogramowanie Biurowe. Pytania: Egzamin Zawodowy

Pytania SO Oprogramowanie Biurowe. Pytania: Egzamin Zawodowy Pytania SO Oprogramowanie Biurowe Pytania: Egzamin Zawodowy Pytania SO Oprogramowanie Biurowe (1) Gdzie w edytorze tekstu wprowadza się informację lub ciąg znaków, który ma pojawić się na wszystkich stronach

Bardziej szczegółowo

Plan. Formularz i jego typy. Tworzenie formularza. Co to jest formularz? Typy formularzy Tworzenie prostego formularza Budowa prostego formularza

Plan. Formularz i jego typy. Tworzenie formularza. Co to jest formularz? Typy formularzy Tworzenie prostego formularza Budowa prostego formularza 4 Budowa prostych formularzy, stany sesji, tworzenie przycisków Plan Co to jest formularz? Typy formularzy Tworzenie prostego formularza Budowa prostego formularza 2 Formularz i jego typy Tworzenie formularza

Bardziej szczegółowo

Model relacyjny bazy danych

Model relacyjny bazy danych Bazy Danych Model relacyjny bazy danych Przygotował: mgr inż. Maciej Lasota Bazy Danych 1 1) Model relacyjny bazy danych Relacyjny model bazy danych pojawił się po raz pierwszy w artykule naukowym Edgara

Bardziej szczegółowo

ECDL/ICDL Użytkowanie baz danych Moduł S1 Sylabus - wersja 6.0

ECDL/ICDL Użytkowanie baz danych Moduł S1 Sylabus - wersja 6.0 ECDL/ICDL Użytkowanie baz danych Moduł S1 Sylabus - wersja 6.0 Przeznaczenie Sylabusa Dokument ten zawiera szczegółowy Sylabus dla modułu ECDL/ICDL Użytkowanie baz danych. Sylabus opisuje zakres wiedzy

Bardziej szczegółowo

Uzupełnij pola tabeli zgodnie z przykładem poniżej,

Uzupełnij pola tabeli zgodnie z przykładem poniżej, 1. Wykonaj bazę danych biblioteki szkolnej, Otwórz MS Access a następnie z menu plik wybierz przycisk nowy, w oknie nowy plik wybieramy pusta baza danych nadaj jej nazwę Biblioteka i wybierz miejsce w

Bardziej szczegółowo

Informatyka Ćwiczenie 10. Bazy danych. Strukturę bazy danych można określić w formie jak na rysunku 1. atrybuty

Informatyka Ćwiczenie 10. Bazy danych. Strukturę bazy danych można określić w formie jak na rysunku 1. atrybuty Informatyka Ćwiczenie 10 Bazy danych Baza danych jest zbiór informacji (zbiór danych). Strukturę bazy danych można określić w formie jak na rysunku 1. Pracownik(ID pracownika, imie, nazwisko, pensja) Klient(ID

Bardziej szczegółowo

Bazy Danych. Bazy Danych i SQL Podstawowe informacje o bazach danych. Krzysztof Regulski WIMiIP, KISiM,

Bazy Danych. Bazy Danych i SQL Podstawowe informacje o bazach danych. Krzysztof Regulski WIMiIP, KISiM, Bazy Danych Bazy Danych i SQL Podstawowe informacje o bazach danych Krzysztof Regulski WIMiIP, KISiM, regulski@metal.agh.edu.pl Oczekiwania? 2 3 Bazy danych Jak przechowywać informacje? Jak opisać rzeczywistość?

Bardziej szczegółowo

Wprowadzenie do baz danych

Wprowadzenie do baz danych Wprowadzenie do baz danych Dr inż. Szczepan Paszkiel szczepanpaszkiel@o2.pl Katedra Inżynierii Biomedycznej Politechnika Opolska Wprowadzenie DBMS Database Managment System, System za pomocą którego można

Bardziej szczegółowo

Bazy danych TERMINOLOGIA

Bazy danych TERMINOLOGIA Bazy danych TERMINOLOGIA Dane Dane są wartościami przechowywanymi w bazie danych. Dane są statyczne w tym sensie, że zachowują swój stan aż do zmodyfikowania ich ręcznie lub przez jakiś automatyczny proces.

Bardziej szczegółowo

Program wykładu. zastosowanie w aplikacjach i PL/SQL;

Program wykładu. zastosowanie w aplikacjach i PL/SQL; Program wykładu 1 Model relacyjny (10 godz.): podstawowe pojęcia, języki zapytań (algebra relacji, relacyjny rachunek krotek, relacyjny rachunek dziedzin), zależności funkcyjne i postaci normalne (BCNF,

Bardziej szczegółowo

SQL - Structured Query Language -strukturalny język zapytań SQL SQL SQL SQL

SQL - Structured Query Language -strukturalny język zapytań SQL SQL SQL SQL Wprowadzenie do SQL SQL - Structured Query Language -strukturalny język zapytań Światowy standard przeznaczony do definiowania, operowania i sterowania danymi w relacyjnych bazach danych Powstał w firmie

Bardziej szczegółowo

Wrocławska Wyższa Szkoła Informatyki Stosowanej. Bazy danych. Dr hab. inż. Krzysztof Pieczarka. Email: krzysztof.pieczarka@gmail.

Wrocławska Wyższa Szkoła Informatyki Stosowanej. Bazy danych. Dr hab. inż. Krzysztof Pieczarka. Email: krzysztof.pieczarka@gmail. Wrocławska Wyższa Szkoła Informatyki Stosowanej Bazy danych Dr hab. inż. Krzysztof Pieczarka Email: krzysztof.pieczarka@gmail.com Literatura: Connoly T., Begg C., Systemy baz danych Praktyczne metody projektowania,

Bardziej szczegółowo

RELACYJNE BAZY DANYCH

RELACYJNE BAZY DANYCH RELACYJNE BAZY DANYCH Aleksander Łuczyk Bielsko-Biała, 15 kwiecień 2015 r. Ludzie używają baz danych każdego dnia. Książka telefoniczna, zbiór wizytówek przypiętych nad biurkiem, encyklopedia czy chociażby

Bardziej szczegółowo

Dr Michał Tanaś(http://www.amu.edu.pl/~mtanas)

Dr Michał Tanaś(http://www.amu.edu.pl/~mtanas) Dr Michał Tanaś(http://www.amu.edu.pl/~mtanas) Bazy danych podstawowe pojęcia Baza danych jest to zbiór danych zorganizowany zgodnie ze ściśle określonym modelem danych. Model danych to zbiór ścisłych

Bardziej szczegółowo

Spis treści. Przedmowa... XI. Wprowadzenie i biologiczne bazy danych. 1 Wprowadzenie... 3. 2 Wprowadzenie do biologicznych baz danych...

Spis treści. Przedmowa... XI. Wprowadzenie i biologiczne bazy danych. 1 Wprowadzenie... 3. 2 Wprowadzenie do biologicznych baz danych... Przedmowa... XI Część pierwsza Wprowadzenie i biologiczne bazy danych 1 Wprowadzenie... 3 Czym jest bioinformatyka?... 5 Cele... 5 Zakres zainteresowań... 6 Zastosowania... 7 Ograniczenia... 8 Przyszłe

Bardziej szczegółowo

SIECI KOMPUTEROWE I BAZY DANYCH

SIECI KOMPUTEROWE I BAZY DANYCH KATEDRA MECHANIKI I ROBOTYKI STOSOWANEJ WYDZIAŁ BUDOWY MASZYN I LOTNICTWA, POLITECHNIKA RZESZOWSKA SIECI KOMPUTEROWE I BAZY DANYCH Laboratorium DB2: TEMAT: Relacyjne bazy danych Cz. I, II Cel laboratorium

Bardziej szczegółowo

Wykład I. Wprowadzenie do baz danych

Wykład I. Wprowadzenie do baz danych Wykład I Wprowadzenie do baz danych Trochę historii Pierwsze znane użycie terminu baza danych miało miejsce w listopadzie w 1963 roku. W latach sześcdziesątych XX wieku został opracowany przez Charles

Bardziej szczegółowo

ECDL/ICDL Użytkowanie baz danych Moduł S1 Sylabus - wersja 5.0

ECDL/ICDL Użytkowanie baz danych Moduł S1 Sylabus - wersja 5.0 ECDL/ICDL Użytkowanie baz danych Moduł S1 Sylabus - wersja 5.0 Przeznaczenie Sylabusa Dokument ten zawiera szczegółowy Sylabus dla modułu ECDL/ICDL Użytkowanie baz danych. Sylabus opisuje zakres wiedzy

Bardziej szczegółowo

Definicja bazy danych TECHNOLOGIE BAZ DANYCH. System zarządzania bazą danych (SZBD) Oczekiwania wobec SZBD. Oczekiwania wobec SZBD c.d.

Definicja bazy danych TECHNOLOGIE BAZ DANYCH. System zarządzania bazą danych (SZBD) Oczekiwania wobec SZBD. Oczekiwania wobec SZBD c.d. TECHNOLOGIE BAZ DANYCH WYKŁAD 1 Wprowadzenie do baz danych. Normalizacja. (Wybrane materiały) Dr inż. E. Busłowska Definicja bazy danych Uporządkowany zbiór informacji, posiadający własną strukturę i wartość.

Bardziej szczegółowo

Model logiczny SZBD. Model fizyczny. Systemy klientserwer. Systemy rozproszone BD. No SQL

Model logiczny SZBD. Model fizyczny. Systemy klientserwer. Systemy rozproszone BD. No SQL Podstawy baz danych: Rysunek 1. Tradycyjne systemy danych 1- Obsługa wejścia 2- Przechowywanie danych 3- Funkcje użytkowe 4- Obsługa wyjścia Ewolucja baz danych: Fragment świata rzeczywistego System przetwarzania

Bardziej szczegółowo

Mariusz Trzaska Modelowanie i implementacja systemów informatycznych

Mariusz Trzaska Modelowanie i implementacja systemów informatycznych Mariusz Trzaska Modelowanie i implementacja systemów informatycznych Notka biograficzna Dr inż. Mariusz Trzaska jest adiunktem w Polsko-Japońskiej Wyższej Szkole Technik Komputerowych, gdzie zajmuje się

Bardziej szczegółowo

Transformacja modelu ER do modelu relacyjnego

Transformacja modelu ER do modelu relacyjnego Transformacja modelu ER do modelu relacyjnego Wykład przygotował: Robert Wrembel BD wykład 4 (1) 1 Plan wykładu Transformacja encji Transformacja związków Transformacja hierarchii encji BD wykład 4 (2)

Bardziej szczegółowo

LABORATORIUM 8,9: BAZA DANYCH MS-ACCESS

LABORATORIUM 8,9: BAZA DANYCH MS-ACCESS UNIWERSYTET ZIELONOGÓRSKI INSTYTUT INFORMATYKI I ELEKTROTECHNIKI ZAKŁAD INŻYNIERII KOMPUTEROWEJ Przygotowali: mgr inż. Arkadiusz Bukowiec mgr inż. Remigiusz Wiśniewski LABORATORIUM 8,9: BAZA DANYCH MS-ACCESS

Bardziej szczegółowo

Biologiczne bazy i modele danych

Biologiczne bazy i modele danych Biologiczne bazy i modele danych Przełom XX i XXI wieku to okres dynamicznego rozwoju programów sekwencjonowania genomów: 1995 genom Haemophilus influenzae 1997 genom E. coli 1997 genom drożdży S. cerevisiae

Bardziej szczegółowo

BAZY DANYCH wprowadzenie. Opracował: dr inż. Piotr Suchomski

BAZY DANYCH wprowadzenie. Opracował: dr inż. Piotr Suchomski BAZY DANYCH wprowadzenie Opracował: dr inż. Piotr Suchomski Prowadzący Katedra Systemów Multimedialnych dr inż. Piotr Suchomski (e-mail: pietka@sound.eti.pg.gda.pl) (pok. 730) dr inż. Andrzej Leśnicki

Bardziej szczegółowo

Laboratorium nr 4. Temat: SQL część II. Polecenia DML

Laboratorium nr 4. Temat: SQL część II. Polecenia DML Laboratorium nr 4 Temat: SQL część II Polecenia DML DML DML (Data Manipulation Language) słuŝy do wykonywania operacji na danych do ich umieszczania w bazie, kasowania, przeglądania, zmiany. NajwaŜniejsze

Bardziej szczegółowo

Bazy danych Wykład zerowy. P. F. Góra

Bazy danych Wykład zerowy. P. F. Góra Bazy danych Wykład zerowy P. F. Góra http://th-www.if.uj.edu.pl/zfs/gora/ 2012 Patron? Św. Izydor z Sewilli (VI wiek), biskup, patron Internetu (sic!), stworzył pierwszy katalog Copyright c 2011-12 P.

Bardziej szczegółowo

ORGANIZACJA I ZARZĄDZANIE INFORMACJĄ W BAZIE DNYCH. podstawowe pojęcia.

ORGANIZACJA I ZARZĄDZANIE INFORMACJĄ W BAZIE DNYCH. podstawowe pojęcia. ORGANIZACJA I ZARZĄDZANIE INFORMACJĄ W BAZIE DNYCH. podstawowe pojęcia. 1. Definicja bazy danych, Baza danych to uporządkowany zbiór danych z pewnej dziedziny tematycznej, zorganizowany w sposób ułatwiający

Bardziej szczegółowo

Bazy i modele danych

Bazy i modele danych Bazy i modele danych Przełom XX i XXI wieku to okres dynamicznego rozwoju programów sekwencjonowania genomów: 1995 genom Haemophilus influenzae 1997 genom E. coli 1997 genom drożdży S. cerevisiae 1998

Bardziej szczegółowo

Adam Cankudis IFP UAM

Adam Cankudis IFP UAM W s t ę p d o r e l a c y j n y c h b a z d a n y c h Adam Cankudis IFP UAM B i b l i o g r a f i a T. Morzy i in., Bazy danych, [w:] Studia Informatyczne, Pierwszy stopie ń, http://wazniak.mimuw.edu.pl/

Bardziej szczegółowo

Projektowanie systemów baz danych

Projektowanie systemów baz danych Projektowanie systemów baz danych Seweryn Dobrzelewski 4. Projektowanie DBMS 1 SQL SQL (ang. Structured Query Language) Język SQL jest strukturalnym językiem zapewniającym możliwość wydawania poleceń do

Bardziej szczegółowo

PL 198457 B1. ABB Sp. z o.o.,warszawa,pl 17.12.2001 BUP 26/01. Michał Orkisz,Kraków,PL Mirosław Bistroń,Jarosław,PL 30.06.

PL 198457 B1. ABB Sp. z o.o.,warszawa,pl 17.12.2001 BUP 26/01. Michał Orkisz,Kraków,PL Mirosław Bistroń,Jarosław,PL 30.06. RZECZPOSPOLITA POLSKA (12) OPIS PATENTOWY (19) PL (11) 198457 (13) B1 (21) Numer zgłoszenia: 340813 (51) Int.Cl. G06F 17/21 (2006.01) G06Q 10/00 (2006.01) Urząd Patentowy Rzeczypospolitej Polskiej (22)

Bardziej szczegółowo

P o d s t a w y j ę z y k a S Q L

P o d s t a w y j ę z y k a S Q L P o d s t a w y j ę z y k a S Q L Adam Cakudis IFP UAM Użytkownicy System informatyczny Aplikacja Aplikacja Aplikacja System bazy danych System zarządzania baz ą danych Schemat Baza danych K o n c e p

Bardziej szczegółowo

Ogólny plan przedmiotu. Strony WWW. Literatura BAZY DANYCH. Materiały do wykładu: http://aragorn.pb.bialystok.pl/~gkret

Ogólny plan przedmiotu. Strony WWW. Literatura BAZY DANYCH. Materiały do wykładu: http://aragorn.pb.bialystok.pl/~gkret Ogólny plan przedmiotu BAZY DANYCH Wykład 1: Wprowadzenie do baz danych Małgorzata Krętowska Politechnika Białostocka Wydział Informatyki Wykład : Wprowadzenie do baz danych Normalizacja Diagramy związków

Bardziej szczegółowo

Bazy Danych. Bazy Danych i SQL Podstawowe informacje o bazach danych. Krzysztof Regulski WIMiIP, KISiM, regulski@metal.agh.edu.pl

Bazy Danych. Bazy Danych i SQL Podstawowe informacje o bazach danych. Krzysztof Regulski WIMiIP, KISiM, regulski@metal.agh.edu.pl Bazy Danych Bazy Danych i SQL Podstawowe informacje o bazach danych Krzysztof Regulski WIMiIP, KISiM, regulski@metal.agh.edu.pl Literatura i inne pomoce Silberschatz A., Korth H., S. Sudarshan: Database

Bardziej szczegółowo

Bioinformatyka. Ocena wiarygodności dopasowania sekwencji.

Bioinformatyka. Ocena wiarygodności dopasowania sekwencji. Bioinformatyka Ocena wiarygodności dopasowania sekwencji www.michalbereta.pl Załóżmy, że mamy dwie sekwencje, które chcemy dopasować i dodatkowo ocenić wiarygodność tego dopasowania. Interesujące nas pytanie

Bardziej szczegółowo

Systemy GIS Tworzenie zapytań w bazach danych

Systemy GIS Tworzenie zapytań w bazach danych Systemy GIS Tworzenie zapytań w bazach danych Wykład nr 6 Analizy danych w systemach GIS Jak pytać bazę danych, żeby otrzymać sensowną odpowiedź......czyli podstawy języka SQL INSERT, SELECT, DROP, UPDATE

Bardziej szczegółowo

Bazy danych 2. Wykład 1

Bazy danych 2. Wykład 1 Bazy danych 2 Wykład 1 Sprawy organizacyjne Materiały i listy zadań zamieszczane będą na stronie www.math.uni.opole.pl/~ajasi E-mail: standardowy ajasi@math.uni.opole.pl Sprawy organizacyjne Program wykładu

Bardziej szczegółowo

Relacyjne bazy danych

Relacyjne bazy danych Relacyjne bazy danych W roku 1970 dr Edgar Ted Codd z firmy IBM zaprezentował relacyjny model danych. W modelu tym dane miały być przechowywane w prostych plikach liniowych, które to pliki nazywane są

Bardziej szczegółowo

Bioinformatyczne bazy danych

Bioinformatyczne bazy danych Bioinformatyczne bazy danych Czym jest bioinformatyka? Bioinformatyka jest nauką integrującą różne dziedziny wiedzy Gruca (2010) Czym jest bioinformatyka? Bioinformatyka obejmuje technologie wykorzystujące

Bardziej szczegółowo

Modelowanie hierarchicznych struktur w relacyjnych bazach danych

Modelowanie hierarchicznych struktur w relacyjnych bazach danych Modelowanie hierarchicznych struktur w relacyjnych bazach danych Wiktor Warmus (wiktorwarmus@gmail.com) Kamil Witecki (kamil@witecki.net.pl) 5 maja 2010 Motywacje Teoria relacyjnych baz danych Do czego

Bardziej szczegółowo

Możliwości współczesnej inżynierii genetycznej w obszarze biotechnologii

Możliwości współczesnej inżynierii genetycznej w obszarze biotechnologii Możliwości współczesnej inżynierii genetycznej w obszarze biotechnologii 1. Technologia rekombinowanego DNA jest podstawą uzyskiwania genetycznie zmodyfikowanych organizmów 2. Medycyna i ochrona zdrowia

Bardziej szczegółowo

Zasady transformacji modelu DOZ do projektu tabel bazy danych

Zasady transformacji modelu DOZ do projektu tabel bazy danych Zasady transformacji modelu DOZ do projektu tabel bazy danych A. Obiekty proste B. Obiekty z podtypami C. Związki rozłączne GHJ 1 A. Projektowanie - obiekty proste TRASA # * numer POZYCJA o planowana godzina

Bardziej szczegółowo

SZKOLENIE: Administrator baz danych. Cel szkolenia

SZKOLENIE: Administrator baz danych. Cel szkolenia SZKOLENIE: Administrator baz danych. Cel szkolenia Kurs Administrator baz danych skierowany jest przede wszystkim do osób zamierzających rozwijać umiejętności w zakresie administrowania bazami danych.

Bardziej szczegółowo

PODSTAWOWE POJĘCIA BAZ DANYCH

PODSTAWOWE POJĘCIA BAZ DANYCH Baza danych (data base) - uporządkowany zbiór danych o określonej strukturze, przechowywany na nośniku informacji w komputerze. System bazy danych można zdefiniować jako bazę danych wraz z oprogramowaniem

Bardziej szczegółowo

Instrukcja do panelu administracyjnego. do zarządzania kontem FTP WebAs. www.poczta.greenlemon.pl

Instrukcja do panelu administracyjnego. do zarządzania kontem FTP WebAs. www.poczta.greenlemon.pl Instrukcja do panelu administracyjnego do zarządzania kontem FTP WebAs www.poczta.greenlemon.pl Opracowanie: Agencja Mediów Interaktywnych GREEN LEMON Spis treści 1.Wstęp 2.Konfiguracja 3.Konto FTP 4.Domeny

Bardziej szczegółowo

PHP: bazy danych, SQL, AJAX i JSON

PHP: bazy danych, SQL, AJAX i JSON 1 PHP: bazy danych, SQL, AJAX i JSON SYSTEMY SIECIOWE Michał Simiński 2 Bazy danych Co to jest MySQL? Jak się połączyć z bazą danych MySQL? Podstawowe operacje na bazie danych Kilka dodatkowych operacji

Bardziej szczegółowo

77. Modelowanie bazy danych rodzaje połączeń relacyjnych, pojęcie klucza obcego.

77. Modelowanie bazy danych rodzaje połączeń relacyjnych, pojęcie klucza obcego. 77. Modelowanie bazy danych rodzaje połączeń relacyjnych, pojęcie klucza obcego. Przy modelowaniu bazy danych możemy wyróżnić następujące typy połączeń relacyjnych: jeden do wielu, jeden do jednego, wiele

Bardziej szczegółowo

RELACYJNE BAZY DANYCH I ICH ZNACZENIE W SYSTEMACH INFORMACJI GEOGRAFICZNEJ

RELACYJNE BAZY DANYCH I ICH ZNACZENIE W SYSTEMACH INFORMACJI GEOGRAFICZNEJ RELACYJNE BAZY DANYCH I ICH ZNACZENIE W SYSTEMACH INFORMACJI GEOGRAFICZNEJ RELACYJNE BAZY DANYCH I ICH ZNACZENIE W SYSTEMACH INFORMACJI GEOGRAFICZNEJ 1. ELEMENTY SYSTEMU INFORMACJI GEOGRAFICZNEJ DANE GEOGRAFICZNE

Bardziej szczegółowo

Bioinformatyka. Bazy danych. Wykład 3. E. Banachowicz. Wykład monograficzny Bioinformatyka. Wykład 3, Zakład Biofizyki Molekularnej IF UAM

Bioinformatyka. Bazy danych. Wykład 3. E. Banachowicz. Wykład monograficzny Bioinformatyka. Wykład 3, Zakład Biofizyki Molekularnej IF UAM Bioinformatyka Wykład 3. E. Banachowicz Zakład Biofizyki Molekularnej IF UAM http://www.amu.edu.pl/~ewas Bazy danych Wykład 3, 2008 1 Niesekwencyjne BazyDanych bibliograficzne kliniczne ścieżek metabolicznych

Bardziej szczegółowo

Baza danych to zbiór wzajemnie powiązanych ze sobą i zintegrowanych danych z pewnej dziedziny.

Baza danych to zbiór wzajemnie powiązanych ze sobą i zintegrowanych danych z pewnej dziedziny. PI-14 01/12 Baza danych to zbiór wzajemnie powiązanych ze sobą i zintegrowanych danych z pewnej dziedziny.! Likwidacja lub znaczne ograniczenie redundancji (powtarzania się) danych! Integracja danych!

Bardziej szczegółowo

Projektowanie baz danych za pomocą narzędzi CASE

Projektowanie baz danych za pomocą narzędzi CASE Projektowanie baz danych za pomocą narzędzi CASE Metody tworzenia systemów informatycznych w tym, także rozbudowanych baz danych są komputerowo wspomagane przez narzędzia CASE (ang. Computer Aided Software

Bardziej szczegółowo

SQL (ang. Structured Query Language)

SQL (ang. Structured Query Language) SQL (ang. Structured Query Language) SELECT pobranie danych z bazy, INSERT umieszczenie danych w bazie, UPDATE zmiana danych, DELETE usunięcie danych z bazy. Rozkaz INSERT Rozkaz insert dodaje nowe wiersze

Bardziej szczegółowo

PRZEWODNIK PO PRZEDMIOCIE

PRZEWODNIK PO PRZEDMIOCIE Nazwa przedmiotu: Bazy danych Database Kierunek: Rodzaj przedmiotu: obieralny Rodzaj zajęć: wykład, laboratorium Matematyka Poziom kwalifikacji: I stopnia Liczba godzin/tydzień: 2W, 2L Semestr: III Liczba

Bardziej szczegółowo

PLAN REALIZACJI MATERIAŁU NAUCZANIA Z INFORMATYKI II. Uczeń umie: Świadomie stosować się do zasad regulaminów (P).

PLAN REALIZACJI MATERIAŁU NAUCZANIA Z INFORMATYKI II. Uczeń umie: Świadomie stosować się do zasad regulaminów (P). PLAN REALIZACJI MATERIAŁU NAUCZANIA Z INFORMATYKI II DZIAŁ I: KOMPUTER W ŻYCIU CZŁOWIEKA. 1. Lekcja organizacyjna. Zapoznanie uczniów z wymaganiami edukacyjnymi i PSP. 2. Przykłady zastosowań komputerów

Bardziej szczegółowo

Ewa Stemposz Andrzej Jodłowski Alina Stasiecka. Zarys metodyki wspierającej naukę projektowania systemów informacyjnych

Ewa Stemposz Andrzej Jodłowski Alina Stasiecka. Zarys metodyki wspierającej naukę projektowania systemów informacyjnych Ewa Stemposz Andrzej Jodłowski Alina Stasiecka Zarys metodyki wspierającej naukę projektowania systemów informacyjnych Dr inż. Ewa Stemposz prowadzi działalność naukowo-dydaktyczną w Polsko-Japońskiej

Bardziej szczegółowo

OPRACOWANIE: SŁAWOMIR APANOWICZ

OPRACOWANIE: SŁAWOMIR APANOWICZ PROJEKTOWANIE RELACYJNEJ BAZY DANYCH OPRACOWANIE: SŁAWOMIR APANOWICZ 1. Ogólne informacje o projektowaniu bazy danych Przystępując do projektowania bazy danych należy określić jej cel oraz zadania, jakie

Bardziej szczegółowo

Tworzenie bazy danych na przykładzie Access

Tworzenie bazy danych na przykładzie Access Tworzenie bazy danych na przykładzie Access Tworzenie tabeli Kwerendy (zapytania) Selekcja Projekcja Złączenie Relacja 1 Relacja 2 Tworzenie kwedend w widoku projektu Wybór tabeli (tabel) źródłowych Wybieramy

Bardziej szczegółowo

I. Interfejs użytkownika.

I. Interfejs użytkownika. Ćwiczenia z użytkowania systemu MFG/PRO 1 I. Interfejs użytkownika. MFG/PRO w wersji eb2 umożliwia wybór użytkownikowi jednego z trzech dostępnych interfejsów graficznych: a) tekstowego (wybór z menu:

Bardziej szczegółowo

Projekt Hurtownia, realizacja rejestracji dostaw produktów

Projekt Hurtownia, realizacja rejestracji dostaw produktów Projekt Hurtownia, realizacja rejestracji dostaw produktów Ćwiczenie to będzie poświęcone zaprojektowaniu formularza pozwalającego na rejestrację dostaw produktów dla naszej hurtowni. Dane identyfikujące

Bardziej szczegółowo

Bioinformatyczne bazy danych

Bioinformatyczne bazy danych Bioinformatyczne bazy danych Czym jest bioinformatyka? Bioinformatyka jest nauką integrującą różne dziedziny wiedzy Gruca (2010) http://bioinformaticsonline.com/file/view/4482/bioinformatics-definitions-and-applications

Bardziej szczegółowo

TI - Bazy TECHNOLOGIE INFORMACYJNE

TI - Bazy TECHNOLOGIE INFORMACYJNE TI - Bazy TECHNOLOGIE INFORMACYJNE 1 TI - Bazy Baza danych to zbiór danych zapisanych w ściśle określony sposób w strukturach odpowiadających założonemu modelowi danych. W potocznym ujęciu obejmuje dane

Bardziej szczegółowo

QUERY język zapytań do tworzenia raportów w AS/400

QUERY język zapytań do tworzenia raportów w AS/400 QUERY język zapytań do tworzenia raportów w AS/400 Dariusz Bober Katedra Informatyki Politechniki Lubelskiej Streszczenie: W artykule przedstawiony został język QUERY, standardowe narzędzie pracy administratora

Bardziej szczegółowo

INTERNETOWY KURS PODSTAW IT

INTERNETOWY KURS PODSTAW IT INTERNETOWY KURS PODSTAW IT LEKCJA 13. KWERENDY I KROTKI. WPROWADZENIE DO BAZ DANYCH. Witaj po raz trzynasty! Poprzednia lekcja przybliżyła Ci idee wykorzystania frameworków w procesie wytwarzania oprogramowania.

Bardziej szczegółowo

Budowa aplikacji ASP.NET współpracującej z bazą dany do obsługi przesyłania wiadomości

Budowa aplikacji ASP.NET współpracującej z bazą dany do obsługi przesyłania wiadomości Budowa aplikacji ASP.NET współpracującej z bazą dany do obsługi przesyłania wiadomości część 2 Zaprojektowaliśmy stronę dodaj_dzial.aspx proszę jednak spróbować dodać nowy dział nie podając jego nazwy

Bardziej szczegółowo

Co to są relacyjne bazy danych?

Co to są relacyjne bazy danych? Co to są relacyjne bazy danych? Co to są relacyjne bazy danych? O Są to zbiory danych pogrupowane w tabele o strukturze: kolejne kolumny określają kolejne porcje informacji potrzebne dla każdego wystąpienia,

Bardziej szczegółowo

Podstawy bioinformatyki - biologiczne bazy danych

Podstawy bioinformatyki - biologiczne bazy danych Podstawy bioinformatyki - biologiczne bazy danych Czym jest bioinformatyka? Bioinformatyka Bioinformatyka jest interdyscyplinarną dziedziną nauki obejmującą wykorzystanie metod obliczeniowych do badania

Bardziej szczegółowo

Instytut Mechaniki i Inżynierii Obliczeniowej fb.com/groups/bazydanychmt/

Instytut Mechaniki i Inżynierii Obliczeniowej  fb.com/groups/bazydanychmt/ Instytut Mechaniki i Inżynierii Obliczeniowej www.imio.polsl.pl fb.com/imiopolsl @imiopolsl fb.com/groups/bazydanychmt/ Wydział Mechaniczny technologiczny Politechnika Śląska Laboratorium 4 (Asocjacje,

Bardziej szczegółowo

030 PROJEKTOWANIE BAZ DANYCH. Prof. dr hab. Marek Wisła

030 PROJEKTOWANIE BAZ DANYCH. Prof. dr hab. Marek Wisła 030 PROJEKTOWANIE BAZ DANYCH Prof. dr hab. Marek Wisła Elementy procesu projektowania bazy danych Badanie zależności funkcyjnych Normalizacja Projektowanie bazy danych Model ER, diagramy ERD Encje, atrybuty,

Bardziej szczegółowo

Krzysztof Kluza proste ćwiczenia z baz danych

Krzysztof Kluza proste ćwiczenia z baz danych Bazy danych Baza danych to uporządkowany zbiór danych, dający się łatwo przeszukiwać. Każda pozycja bazy danych nazywana jest rekordem, z kolei rekordy składają się z pól. Przyjmując, że dysponujemy bazą

Bardziej szczegółowo

Model relacyjny. Wykład II

Model relacyjny. Wykład II Model relacyjny został zaproponowany do strukturyzacji danych przez brytyjskiego matematyka Edgarda Franka Codda w 1970 r. Baza danych według definicji Codda to zbiór zmieniających się w czasie relacji

Bardziej szczegółowo

Karta (sylabus) modułu/przedmiotu Mechanika i Budowa Maszyn Studia I stopnia

Karta (sylabus) modułu/przedmiotu Mechanika i Budowa Maszyn Studia I stopnia Karta (sylabus) modułu/przedmiotu Mechanika i Budowa Maszyn Studia I stopnia Przedmiot: Bazy danych Rodzaj przedmiotu: Podstawowy Kod przedmiotu: MBM 1 S 0 5 64-4 _1 Rok: III Semestr: 5 Forma studiów:

Bardziej szczegółowo