Technologie Informacyjne - Bazy danych · sprzedawca id imi nazwisko 1 Jan Nowak 2 Janina Kowalska...

37
Plaskie pliki Hierarchiczne bazy danych Sieciowe bazy danych Relacyjne bazy danych Kolumnowe Bazy Danych NoSQL i rozproszenie Podsumowa Technologie Informacyjne Bazy danych Adam Krasuski Szkola Glówna Slużby Pożarniczej Zaklad Informatyki i Lączności November 28, 2016 Adam Krasuski Technologie Informacyjne

Transcript of Technologie Informacyjne - Bazy danych · sprzedawca id imi nazwisko 1 Jan Nowak 2 Janina Kowalska...

Page 1: Technologie Informacyjne - Bazy danych · sprzedawca id imi nazwisko 1 Jan Nowak 2 Janina Kowalska transakcje id produkt_id sprzedawca_id data ilo obrót region 1 1 1 12.03.04 12

Płaskie pliki Hierarchiczne bazy danych Sieciowe bazy danych Relacyjne bazy danych Kolumnowe Bazy Danych NoSQL i rozproszenie Podsumowanie

Technologie InformacyjneBazy danych

Adam Krasuski

Szkoła Główna Służby PożarniczejZakład Informatyki i Łączności

November 28, 2016

Adam Krasuski Technologie Informacyjne

Page 2: Technologie Informacyjne - Bazy danych · sprzedawca id imi nazwisko 1 Jan Nowak 2 Janina Kowalska transakcje id produkt_id sprzedawca_id data ilo obrót region 1 1 1 12.03.04 12

Płaskie pliki Hierarchiczne bazy danych Sieciowe bazy danych Relacyjne bazy danych Kolumnowe Bazy Danych NoSQL i rozproszenie Podsumowanie

1 Płaskie pliki

2 Hierarchiczne bazy danych

3 Sieciowe bazy danych

4 Relacyjne bazy danych

5 Kolumnowe Bazy Danych

6 NoSQL i rozproszenie

7 Podsumowanie

Adam Krasuski Technologie Informacyjne

Page 3: Technologie Informacyjne - Bazy danych · sprzedawca id imi nazwisko 1 Jan Nowak 2 Janina Kowalska transakcje id produkt_id sprzedawca_id data ilo obrót region 1 1 1 12.03.04 12

Płaskie pliki Hierarchiczne bazy danych Sieciowe bazy danych Relacyjne bazy danych Kolumnowe Bazy Danych NoSQL i rozproszenie Podsumowanie

Płaskie pliki

produkt rok miesiąc obrót ilość sprzedawca region

płatki śniadaniowe 2002 grudzień 125,00 zł 58954 Jan Nowak centrumjogurt 2005 kwiecień 454 546,00 zł 547 Jan Nowak centrumjogurt 2008 styczeń 1 547,00 zł 45 Jan Nowak centrumpłatki śniadaniowe 2003 wrzesień 4 564 654,00 zł 548 Janina Kowalska centrumjogurt 2008 wrzesień 45 874,00 zł 56465 Janina Kowalska centrumpłatki śniadaniowe 2003 lipiec 5 200 140,00 zł 4584 Jan Nowak małopolskajogurt 2002 luty 12,00 zł 5965 Jan Nowak małopolskajogurt 2003 październik 540,00 zł 5412 Janina Kowalska małopolskapłatki śniadaniowe 2006 październik 4 040,00 zł 5 Janina Kowalska małopolskapłatki śniadaniowe 2002 grudzień 5 465,00 zł 56 Jan Nowak pomorzepłatki śniadaniowe 2008 marzec 3 132,00 zł 5 Jan Nowak pomorzejogurt 2005 marzec 540,00 zł 2 Jan Nowak pomorzejogurt 2006 luty 21,00 zł 58 Janina Kowalska pomorzepłatki śniadaniowe 2005 luty 5 050,00 zł 254 Janina Kowalska pomorzepłatki śniadaniowe 2003 styczeń 45,00 zł 587 Janina Kowalska pomorzepłatki śniadaniowe 2005 grudzień 4 548,00 zł 5412 Jan Nowak wielkopolskapłatki śniadaniowe 2002 luty 410 520,00 zł 24 Jan Nowak wielkopolskajogurt 2006 marzec 321,00 zł 541 Jan Nowak wielkopolskapłatki śniadaniowe 2002 październik 4 523,00 zł 45 Jan Nowak wielkopolskapłatki śniadaniowe 2002 lipiec 654,00 zł 456 Janina Kowalska wielkopolskajogurt 2002 wrzesień 540,00 zł 5265 Janina Kowalska wielkopolska

Adam Krasuski Technologie Informacyjne

Page 4: Technologie Informacyjne - Bazy danych · sprzedawca id imi nazwisko 1 Jan Nowak 2 Janina Kowalska transakcje id produkt_id sprzedawca_id data ilo obrót region 1 1 1 12.03.04 12

Płaskie pliki Hierarchiczne bazy danych Sieciowe bazy danych Relacyjne bazy danych Kolumnowe Bazy Danych NoSQL i rozproszenie Podsumowanie

Zapis danych na kartach

”FortranCardPROJ039.agr” by Arnold Reinhold - Licensed under Wikimedia Commons

Adam Krasuski Technologie Informacyjne

Page 5: Technologie Informacyjne - Bazy danych · sprzedawca id imi nazwisko 1 Jan Nowak 2 Janina Kowalska transakcje id produkt_id sprzedawca_id data ilo obrót region 1 1 1 12.03.04 12

Płaskie pliki Hierarchiczne bazy danych Sieciowe bazy danych Relacyjne bazy danych Kolumnowe Bazy Danych NoSQL i rozproszenie Podsumowanie

Magnetyczne nośniki danych

„Poland Jaworzyna Slaska - Museum of Industry and Railway in Lower Silesia - tape memory PT3 for Odra computer” autorstwa I, Merlin.Licencja na podstawie Wikimedia Commons

Adam Krasuski Technologie Informacyjne

Page 6: Technologie Informacyjne - Bazy danych · sprzedawca id imi nazwisko 1 Jan Nowak 2 Janina Kowalska transakcje id produkt_id sprzedawca_id data ilo obrót region 1 1 1 12.03.04 12

Płaskie pliki Hierarchiczne bazy danych Sieciowe bazy danych Relacyjne bazy danych Kolumnowe Bazy Danych NoSQL i rozproszenie Podsumowanie

Odczyt z taśmy

produkt rok miesiąc obrót ilość sprzedawca region

płatki śniadaniowe 2002 grudzień 125,00 zł 58954 Jan Nowak centrumjogurt 2005 kwiecień 454 546,00 zł 547 Jan Nowak centrumjogurt 2008 styczeń 1 547,00 zł 45 Jan Nowak centrumpłatki śniadaniowe 2003 wrzesień 4 564 654,00 zł 548 Janina Kowalska centrumjogurt 2008 wrzesień 45 874,00 zł 56465 Janina Kowalska centrumpłatki śniadaniowe 2003 lipiec 5 200 140,00 zł 4584 Jan Nowak małopolskajogurt 2002 luty 12,00 zł 5965 Jan Nowak małopolskajogurt 2003 październik 540,00 zł 5412 Janina Kowalska małopolskapłatki śniadaniowe 2006 październik 4 040,00 zł 5 Janina Kowalska małopolskapłatki śniadaniowe 2002 grudzień 5 465,00 zł 56 Jan Nowak pomorzepłatki śniadaniowe 2008 marzec 3 132,00 zł 5 Jan Nowak pomorzejogurt 2005 marzec 540,00 zł 2 Jan Nowak pomorzejogurt 2006 luty 21,00 zł 58 Janina Kowalska pomorzepłatki śniadaniowe 2005 luty 5 050,00 zł 254 Janina Kowalska pomorzepłatki śniadaniowe 2003 styczeń 45,00 zł 587 Janina Kowalska pomorzepłatki śniadaniowe 2005 grudzień 4 548,00 zł 5412 Jan Nowak wielkopolskapłatki śniadaniowe 2002 luty 410 520,00 zł 24 Jan Nowak wielkopolskajogurt 2006 marzec 321,00 zł 541 Jan Nowak wielkopolskapłatki śniadaniowe 2002 październik 4 523,00 zł 45 Jan Nowak wielkopolskapłatki śniadaniowe 2002 lipiec 654,00 zł 456 Janina Kowalska wielkopolskajogurt 2002 wrzesień 540,00 zł 5265 Janina Kowalska wielkopolska

Adam Krasuski Technologie Informacyjne

Page 7: Technologie Informacyjne - Bazy danych · sprzedawca id imi nazwisko 1 Jan Nowak 2 Janina Kowalska transakcje id produkt_id sprzedawca_id data ilo obrót region 1 1 1 12.03.04 12

Płaskie pliki Hierarchiczne bazy danych Sieciowe bazy danych Relacyjne bazy danych Kolumnowe Bazy Danych NoSQL i rozproszenie Podsumowanie

Hierarchiczny Model Danych

root

centrum małopolska pomorze

Janina Kowalska Jan Nowak

płatki śniadaniowe

jogurtpłatki

śniadaniowepłatki śniadaniowepłatki śniadaniowepłatki śniadaniowe

jogurtjogurt

jogurtjogurt

Level 0

Level 1

Level 2

Level 3

Adam Krasuski Technologie Informacyjne

Page 8: Technologie Informacyjne - Bazy danych · sprzedawca id imi nazwisko 1 Jan Nowak 2 Janina Kowalska transakcje id produkt_id sprzedawca_id data ilo obrót region 1 1 1 12.03.04 12

Płaskie pliki Hierarchiczne bazy danych Sieciowe bazy danych Relacyjne bazy danych Kolumnowe Bazy Danych NoSQL i rozproszenie Podsumowanie

Hierarchiczny Model Danych

root

centrum małopolska pomorze

Janina Kowalska Jan Nowak

płatki śniadaniowe

jogurtpłatki

śniadaniowepłatki śniadaniowepłatki śniadaniowepłatki śniadaniowe

jogurtjogurt

jogurtjogurt

płatki śniadaniowe

jogurtpłatki

śniadaniowepłatki śniadaniowepłatki śniadaniowepłatki śniadaniowe

jogurtjogurt

jogurtjogurt

Janina Kowalska Jan Nowak

płatki śniadaniowe

jogurtpłatki

śniadaniowepłatki śniadaniowepłatki śniadaniowepłatki śniadaniowe

jogurtjogurt

jogurtjogurt

płatki śniadaniowe

jogurtpłatki

śniadaniowepłatki śniadaniowepłatki śniadaniowepłatki śniadaniowe

jogurtjogurt

jogurtjogurt

Janina Kowalska Jan Nowak

płatki śniadaniowe

jogurtpłatki

śniadaniowepłatki śniadaniowepłatki śniadaniowepłatki śniadaniowe

jogurtjogurt

jogurtjogurt

płatki śniadaniowe

jogurtpłatki

śniadaniowepłatki śniadaniowepłatki śniadaniowepłatki śniadaniowe

jogurtjogurt

jogurtjogurt

Adam Krasuski Technologie Informacyjne

Page 9: Technologie Informacyjne - Bazy danych · sprzedawca id imi nazwisko 1 Jan Nowak 2 Janina Kowalska transakcje id produkt_id sprzedawca_id data ilo obrót region 1 1 1 12.03.04 12

Płaskie pliki Hierarchiczne bazy danych Sieciowe bazy danych Relacyjne bazy danych Kolumnowe Bazy Danych NoSQL i rozproszenie Podsumowanie

Sieciowy Model Danych

centrum małopolska pomorze

Janina Kowalska Jan Nowak

płatki śniadaniowe

jogurtpłatki

śniadaniowepłatki śniadaniowepłatki śniadaniowepłatki śniadaniowe

jogurtjogurt

jogurtjogurt

płatki śniadaniowe

jogurtpłatki

śniadaniowepłatki śniadaniowepłatki śniadaniowepłatki śniadaniowe

jogurtjogurt

jogurtjogurt

Adam Krasuski Technologie Informacyjne

Page 10: Technologie Informacyjne - Bazy danych · sprzedawca id imi nazwisko 1 Jan Nowak 2 Janina Kowalska transakcje id produkt_id sprzedawca_id data ilo obrót region 1 1 1 12.03.04 12

Płaskie pliki Hierarchiczne bazy danych Sieciowe bazy danych Relacyjne bazy danych Kolumnowe Bazy Danych NoSQL i rozproszenie Podsumowanie

Relacyjny Model Danych

produkt

id nazwa

1 płatki śniadaniowe2 jogurt

sprzedawca

id imię nazwisko

1 Jan Nowak2 Janina Kowalska

transakcje

id produkt_id sprzedawca_id data ilość obrót region

1 1 1 12.03.04 12 12 231 zł centrum 2 2 1 13.04.09 123 1 zł pomorze 3 1 2 12.03.05 27 12 231 zł centrum 4 1 2 17.05.08 1 231 zł małopolska 5 2 1 12.06.06 132 1 231 zł pomorze 6 1 2 21.03.06 19 2 231 zł pomorze 7 2 1 12.09.11 12 12 zł małopolska 8 1 2 02.03.09 56 31 zł wielkopolska 9 2 1 01.11.01 12 281 zł pomorze 10 2 1 12.12.07 89 12 231 zł centrum 11 2 2 27.09.09 198 52 231 zł centrum

Adam Krasuski Technologie Informacyjne

Page 11: Technologie Informacyjne - Bazy danych · sprzedawca id imi nazwisko 1 Jan Nowak 2 Janina Kowalska transakcje id produkt_id sprzedawca_id data ilo obrót region 1 1 1 12.03.04 12

Płaskie pliki Hierarchiczne bazy danych Sieciowe bazy danych Relacyjne bazy danych Kolumnowe Bazy Danych NoSQL i rozproszenie Podsumowanie

Structured Query Language

produkt

id nazwa

1 płatki śniadaniowe2 jogurt

sprzedawca

id imię nazwisko

1 Jan Nowak2 Janina Kowalska

transakcje

id produkt_id sprzedawca_id data ilość obrót region

1 1 1 12.03.04 12 12 231 zł centrum 2 2 1 13.04.09 123 1 zł pomorze 3 1 2 12.03.05 27 12 231 zł centrum 4 1 2 17.05.08 1 231 zł małopolska 5 2 1 12.06.06 132 1 231 zł pomorze 6 1 2 21.03.06 19 2 231 zł pomorze 7 2 1 12.09.11 12 12 zł małopolska 8 1 2 02.03.09 56 31 zł wielkopolska 9 2 1 01.11.01 12 281 zł pomorze 10 2 1 12.12.07 89 12 231 zł centrum 11 2 2 27.09.09 198 52 231 zł centrum

SELECT ilość FROM transakcje WHERE region = ’centrum’;

SELECT sum(ilość) FROM transakcje WHERE region = ’centrum’;SELECT count(*) FROM transakcje WHERE region = ’centrum’;SELECT nazwa, data, ilość, obrót, region FROM transakcje JOINprodukt ON produkt.id = transakcje.produkt id WHERE region =’centrum’;SELECT nazwa, imie, nazwisko, data, ilość, obrót, region FROMtransakcje JOIN produkt ON produkt.id = transakcje.produkt id JOINsprzedawca ON sprzedawca.id = transakcje.sprzedawca id;

Adam Krasuski Technologie Informacyjne

Page 12: Technologie Informacyjne - Bazy danych · sprzedawca id imi nazwisko 1 Jan Nowak 2 Janina Kowalska transakcje id produkt_id sprzedawca_id data ilo obrót region 1 1 1 12.03.04 12

Płaskie pliki Hierarchiczne bazy danych Sieciowe bazy danych Relacyjne bazy danych Kolumnowe Bazy Danych NoSQL i rozproszenie Podsumowanie

Structured Query Language

produkt

id nazwa

1 płatki śniadaniowe2 jogurt

sprzedawca

id imię nazwisko

1 Jan Nowak2 Janina Kowalska

transakcje

id produkt_id sprzedawca_id data ilość obrót region

1 1 1 12.03.04 12 12 231 zł centrum 2 2 1 13.04.09 123 1 zł pomorze 3 1 2 12.03.05 27 12 231 zł centrum 4 1 2 17.05.08 1 231 zł małopolska 5 2 1 12.06.06 132 1 231 zł pomorze 6 1 2 21.03.06 19 2 231 zł pomorze 7 2 1 12.09.11 12 12 zł małopolska 8 1 2 02.03.09 56 31 zł wielkopolska 9 2 1 01.11.01 12 281 zł pomorze 10 2 1 12.12.07 89 12 231 zł centrum 11 2 2 27.09.09 198 52 231 zł centrum

SELECT ilość FROM transakcje WHERE region = ’centrum’;

SELECT sum(ilość) FROM transakcje WHERE region = ’centrum’;

SELECT count(*) FROM transakcje WHERE region = ’centrum’;SELECT nazwa, data, ilość, obrót, region FROM transakcje JOINprodukt ON produkt.id = transakcje.produkt id WHERE region =’centrum’;SELECT nazwa, imie, nazwisko, data, ilość, obrót, region FROMtransakcje JOIN produkt ON produkt.id = transakcje.produkt id JOINsprzedawca ON sprzedawca.id = transakcje.sprzedawca id;

Adam Krasuski Technologie Informacyjne

Page 13: Technologie Informacyjne - Bazy danych · sprzedawca id imi nazwisko 1 Jan Nowak 2 Janina Kowalska transakcje id produkt_id sprzedawca_id data ilo obrót region 1 1 1 12.03.04 12

Płaskie pliki Hierarchiczne bazy danych Sieciowe bazy danych Relacyjne bazy danych Kolumnowe Bazy Danych NoSQL i rozproszenie Podsumowanie

Structured Query Language

produkt

id nazwa

1 płatki śniadaniowe2 jogurt

sprzedawca

id imię nazwisko

1 Jan Nowak2 Janina Kowalska

transakcje

id produkt_id sprzedawca_id data ilość obrót region

1 1 1 12.03.04 12 12 231 zł centrum 2 2 1 13.04.09 123 1 zł pomorze 3 1 2 12.03.05 27 12 231 zł centrum 4 1 2 17.05.08 1 231 zł małopolska 5 2 1 12.06.06 132 1 231 zł pomorze 6 1 2 21.03.06 19 2 231 zł pomorze 7 2 1 12.09.11 12 12 zł małopolska 8 1 2 02.03.09 56 31 zł wielkopolska 9 2 1 01.11.01 12 281 zł pomorze 10 2 1 12.12.07 89 12 231 zł centrum 11 2 2 27.09.09 198 52 231 zł centrum

SELECT ilość FROM transakcje WHERE region = ’centrum’;SELECT sum(ilość) FROM transakcje WHERE region = ’centrum’;

SELECT count(*) FROM transakcje WHERE region = ’centrum’;

SELECT nazwa, data, ilość, obrót, region FROM transakcje JOINprodukt ON produkt.id = transakcje.produkt id WHERE region =’centrum’;SELECT nazwa, imie, nazwisko, data, ilość, obrót, region FROMtransakcje JOIN produkt ON produkt.id = transakcje.produkt id JOINsprzedawca ON sprzedawca.id = transakcje.sprzedawca id;

Adam Krasuski Technologie Informacyjne

Page 14: Technologie Informacyjne - Bazy danych · sprzedawca id imi nazwisko 1 Jan Nowak 2 Janina Kowalska transakcje id produkt_id sprzedawca_id data ilo obrót region 1 1 1 12.03.04 12

Płaskie pliki Hierarchiczne bazy danych Sieciowe bazy danych Relacyjne bazy danych Kolumnowe Bazy Danych NoSQL i rozproszenie Podsumowanie

Structured Query Language

produkt

id nazwa

1 płatki śniadaniowe2 jogurt

sprzedawca

id imię nazwisko

1 Jan Nowak2 Janina Kowalska

transakcje

id produkt_id sprzedawca_id data ilość obrót region

1 1 1 12.03.04 12 12 231 zł centrum 2 2 1 13.04.09 123 1 zł pomorze 3 1 2 12.03.05 27 12 231 zł centrum 4 1 2 17.05.08 1 231 zł małopolska 5 2 1 12.06.06 132 1 231 zł pomorze 6 1 2 21.03.06 19 2 231 zł pomorze 7 2 1 12.09.11 12 12 zł małopolska 8 1 2 02.03.09 56 31 zł wielkopolska 9 2 1 01.11.01 12 281 zł pomorze 10 2 1 12.12.07 89 12 231 zł centrum 11 2 2 27.09.09 198 52 231 zł centrum

SELECT ilość FROM transakcje WHERE region = ’centrum’;SELECT sum(ilość) FROM transakcje WHERE region = ’centrum’;SELECT count(*) FROM transakcje WHERE region = ’centrum’;

SELECT nazwa, data, ilość, obrót, region FROM transakcje JOINprodukt ON produkt.id = transakcje.produkt id WHERE region =’centrum’;

SELECT nazwa, imie, nazwisko, data, ilość, obrót, region FROMtransakcje JOIN produkt ON produkt.id = transakcje.produkt id JOINsprzedawca ON sprzedawca.id = transakcje.sprzedawca id;

Adam Krasuski Technologie Informacyjne

Page 15: Technologie Informacyjne - Bazy danych · sprzedawca id imi nazwisko 1 Jan Nowak 2 Janina Kowalska transakcje id produkt_id sprzedawca_id data ilo obrót region 1 1 1 12.03.04 12

Płaskie pliki Hierarchiczne bazy danych Sieciowe bazy danych Relacyjne bazy danych Kolumnowe Bazy Danych NoSQL i rozproszenie Podsumowanie

Structured Query Language

produkt

id nazwa

1 płatki śniadaniowe2 jogurt

sprzedawca

id imię nazwisko

1 Jan Nowak2 Janina Kowalska

transakcje

id produkt_id sprzedawca_id data ilość obrót region

1 1 1 12.03.04 12 12 231 zł centrum 2 2 1 13.04.09 123 1 zł pomorze 3 1 2 12.03.05 27 12 231 zł centrum 4 1 2 17.05.08 1 231 zł małopolska 5 2 1 12.06.06 132 1 231 zł pomorze 6 1 2 21.03.06 19 2 231 zł pomorze 7 2 1 12.09.11 12 12 zł małopolska 8 1 2 02.03.09 56 31 zł wielkopolska 9 2 1 01.11.01 12 281 zł pomorze 10 2 1 12.12.07 89 12 231 zł centrum 11 2 2 27.09.09 198 52 231 zł centrum

SELECT ilość FROM transakcje WHERE region = ’centrum’;SELECT sum(ilość) FROM transakcje WHERE region = ’centrum’;SELECT count(*) FROM transakcje WHERE region = ’centrum’;SELECT nazwa, data, ilość, obrót, region FROM transakcje JOINprodukt ON produkt.id = transakcje.produkt id WHERE region =’centrum’;

SELECT nazwa, imie, nazwisko, data, ilość, obrót, region FROMtransakcje JOIN produkt ON produkt.id = transakcje.produkt id JOINsprzedawca ON sprzedawca.id = transakcje.sprzedawca id;

Adam Krasuski Technologie Informacyjne

Page 16: Technologie Informacyjne - Bazy danych · sprzedawca id imi nazwisko 1 Jan Nowak 2 Janina Kowalska transakcje id produkt_id sprzedawca_id data ilo obrót region 1 1 1 12.03.04 12

Płaskie pliki Hierarchiczne bazy danych Sieciowe bazy danych Relacyjne bazy danych Kolumnowe Bazy Danych NoSQL i rozproszenie Podsumowanie

Indeksy

id produkt_id sprzedawca_id data ilość obrót region

1 1 1 12.03.04 12 12 231 zł centrum 2 2 1 13.04.09 123 1 zł pomorze 3 1 2 12.03.05 27 12 231 zł centrum 4 1 2 17.05.08 1 231 zł małopolska 5 2 1 12.06.06 132 1 231 zł pomorze 6 1 2 21.03.06 19 2 231 zł pomorze 7 2 1 12.09.11 12 12 zł małopolska 8 1 2 02.03.09 56 31 zł wielkopolska 9 2 1 01.11.01 12 281 zł pomorze 10 2 1 12.12.07 89 12 231 zł centrum 11 2 2 27.09.09 198 52 231 zł centrum

Adam Krasuski Technologie Informacyjne

Page 17: Technologie Informacyjne - Bazy danych · sprzedawca id imi nazwisko 1 Jan Nowak 2 Janina Kowalska transakcje id produkt_id sprzedawca_id data ilo obrót region 1 1 1 12.03.04 12

Płaskie pliki Hierarchiczne bazy danych Sieciowe bazy danych Relacyjne bazy danych Kolumnowe Bazy Danych NoSQL i rozproszenie Podsumowanie

Indeksy

Ile osób z SP-C16 jest dzisiaj w SGSP?

Adam Krasuski Technologie Informacyjne

Page 18: Technologie Informacyjne - Bazy danych · sprzedawca id imi nazwisko 1 Jan Nowak 2 Janina Kowalska transakcje id produkt_id sprzedawca_id data ilo obrót region 1 1 1 12.03.04 12

Płaskie pliki Hierarchiczne bazy danych Sieciowe bazy danych Relacyjne bazy danych Kolumnowe Bazy Danych NoSQL i rozproszenie Podsumowanie

Indeksy

Wykorzystanie planu zajęć

Adam Krasuski Technologie Informacyjne

Page 19: Technologie Informacyjne - Bazy danych · sprzedawca id imi nazwisko 1 Jan Nowak 2 Janina Kowalska transakcje id produkt_id sprzedawca_id data ilo obrót region 1 1 1 12.03.04 12

Płaskie pliki Hierarchiczne bazy danych Sieciowe bazy danych Relacyjne bazy danych Kolumnowe Bazy Danych NoSQL i rozproszenie Podsumowanie

Indeksy

id produkt_id sprzedawca_id data ilość obrót region

1 1 1 12.03.04 12 12 231 zł centrum 2 2 1 13.04.09 123 1 zł pomorze 3 1 2 12.03.05 27 12 231 zł centrum 4 1 2 17.05.08 1 231 zł małopolska 5 2 1 12.06.06 132 1 231 zł pomorze 6 1 2 21.03.06 19 2 231 zł pomorze 7 2 1 12.09.11 12 12 zł małopolska 8 1 2 02.03.09 56 31 zł wielkopolska 9 2 1 01.11.01 12 281 zł pomorze 10 2 1 12.12.07 89 12 231 zł centrum 11 2 2 27.09.09 198 52 231 zł centrum

centrum 1,3,10,11małopolska 4,7pomorze 2,5,6,9wielkopolska 8

Adam Krasuski Technologie Informacyjne

Page 20: Technologie Informacyjne - Bazy danych · sprzedawca id imi nazwisko 1 Jan Nowak 2 Janina Kowalska transakcje id produkt_id sprzedawca_id data ilo obrót region 1 1 1 12.03.04 12

Płaskie pliki Hierarchiczne bazy danych Sieciowe bazy danych Relacyjne bazy danych Kolumnowe Bazy Danych NoSQL i rozproszenie Podsumowanie

B-drzewa

Adam Krasuski Technologie Informacyjne

Page 21: Technologie Informacyjne - Bazy danych · sprzedawca id imi nazwisko 1 Jan Nowak 2 Janina Kowalska transakcje id produkt_id sprzedawca_id data ilo obrót region 1 1 1 12.03.04 12

Płaskie pliki Hierarchiczne bazy danych Sieciowe bazy danych Relacyjne bazy danych Kolumnowe Bazy Danych NoSQL i rozproszenie Podsumowanie

B-drzewa

Adam Krasuski Technologie Informacyjne

Page 22: Technologie Informacyjne - Bazy danych · sprzedawca id imi nazwisko 1 Jan Nowak 2 Janina Kowalska transakcje id produkt_id sprzedawca_id data ilo obrót region 1 1 1 12.03.04 12

Płaskie pliki Hierarchiczne bazy danych Sieciowe bazy danych Relacyjne bazy danych Kolumnowe Bazy Danych NoSQL i rozproszenie Podsumowanie

Kolumnowe Bazy Danych

id produkt_id sprzedawca_id data ilość obrót region

1 1 1 12.03.04 12 12 231 zł centrum 2 2 1 13.04.09 123 1 zł pomorze 3 1 2 12.03.05 27 12 231 zł centrum 4 1 2 17.05.08 1 231 zł małopolska 5 2 1 12.06.06 132 1 231 zł pomorze 6 1 2 21.03.06 19 2 231 zł pomorze 7 2 1 12.09.11 12 12 zł małopolska 8 1 2 02.03.09 56 31 zł wielkopolska 9 2 1 01.11.01 12 281 zł pomorze 10 2 1 12.12.07 89 12 231 zł centrum 11 2 2 27.09.09 198 52 231 zł centrum

4:1:2:17.05.08:1:231zł:małopolska&5:2:1:12.06.06:132:1231zł:pomorze&6:1:2:21.06...

blok 1 blok 2 blok 3

Adam Krasuski Technologie Informacyjne

Page 23: Technologie Informacyjne - Bazy danych · sprzedawca id imi nazwisko 1 Jan Nowak 2 Janina Kowalska transakcje id produkt_id sprzedawca_id data ilo obrót region 1 1 1 12.03.04 12

Płaskie pliki Hierarchiczne bazy danych Sieciowe bazy danych Relacyjne bazy danych Kolumnowe Bazy Danych NoSQL i rozproszenie Podsumowanie

Kolumnowe Bazy Danych

id produkt_id sprzedawca_id data ilość obrót region

1 1 1 12.03.04 12 12 231 zł centrum 2 2 1 13.04.09 123 1 zł pomorze 3 1 2 12.03.05 27 12 231 zł centrum 4 1 2 17.05.08 1 231 zł małopolska 5 2 1 12.06.06 132 1 231 zł pomorze 6 1 2 21.03.06 19 2 231 zł pomorze 7 2 1 12.09.11 12 12 zł małopolska 8 1 2 02.03.09 56 31 zł wielkopolska 9 2 1 01.11.01 12 281 zł pomorze 10 2 1 12.12.07 89 12 231 zł centrum 11 2 2 27.09.09 198 52 231 zł centrum

4:1:2:17.05.08:1:231zł:małopolska&5:2:1:12.06.06:132:1231zł:pomorze&6:1:2:21.06...

blok 1 blok 2 blok 31:1:1:1:1:2:2:2:2:2:2&1:1:1:1:1:1:2:2:2:2:2&01.01.01:12.03.04:...

Adam Krasuski Technologie Informacyjne

Page 24: Technologie Informacyjne - Bazy danych · sprzedawca id imi nazwisko 1 Jan Nowak 2 Janina Kowalska transakcje id produkt_id sprzedawca_id data ilo obrót region 1 1 1 12.03.04 12

Płaskie pliki Hierarchiczne bazy danych Sieciowe bazy danych Relacyjne bazy danych Kolumnowe Bazy Danych NoSQL i rozproszenie Podsumowanie

Granularne Bazy Danych

Adam Krasuski Technologie Informacyjne

Page 25: Technologie Informacyjne - Bazy danych · sprzedawca id imi nazwisko 1 Jan Nowak 2 Janina Kowalska transakcje id produkt_id sprzedawca_id data ilo obrót region 1 1 1 12.03.04 12

Płaskie pliki Hierarchiczne bazy danych Sieciowe bazy danych Relacyjne bazy danych Kolumnowe Bazy Danych NoSQL i rozproszenie Podsumowanie

Granularne Bazy Danych

Adam Krasuski Technologie Informacyjne

Page 26: Technologie Informacyjne - Bazy danych · sprzedawca id imi nazwisko 1 Jan Nowak 2 Janina Kowalska transakcje id produkt_id sprzedawca_id data ilo obrót region 1 1 1 12.03.04 12

Płaskie pliki Hierarchiczne bazy danych Sieciowe bazy danych Relacyjne bazy danych Kolumnowe Bazy Danych NoSQL i rozproszenie Podsumowanie

Granularne Bazy Danych

Adam Krasuski Technologie Informacyjne

Page 27: Technologie Informacyjne - Bazy danych · sprzedawca id imi nazwisko 1 Jan Nowak 2 Janina Kowalska transakcje id produkt_id sprzedawca_id data ilo obrót region 1 1 1 12.03.04 12

Płaskie pliki Hierarchiczne bazy danych Sieciowe bazy danych Relacyjne bazy danych Kolumnowe Bazy Danych NoSQL i rozproszenie Podsumowanie

Teoria CAP

C - Spójność

A - Dostępność P - Segmentacja

C - ConsistencyA - Availability P - Partition Tolerance

CA CP

AP

RDBMS MongoDB

Cassandra

Adam Krasuski Technologie Informacyjne

Page 28: Technologie Informacyjne - Bazy danych · sprzedawca id imi nazwisko 1 Jan Nowak 2 Janina Kowalska transakcje id produkt_id sprzedawca_id data ilo obrót region 1 1 1 12.03.04 12

Płaskie pliki Hierarchiczne bazy danych Sieciowe bazy danych Relacyjne bazy danych Kolumnowe Bazy Danych NoSQL i rozproszenie Podsumowanie

Architektura Master-Slave

Mainf

ram

e

replikacja

replikacja

odczyt zapis

odczytodczy

t

Adam Krasuski Technologie Informacyjne

Page 29: Technologie Informacyjne - Bazy danych · sprzedawca id imi nazwisko 1 Jan Nowak 2 Janina Kowalska transakcje id produkt_id sprzedawca_id data ilo obrót region 1 1 1 12.03.04 12

Płaskie pliki Hierarchiczne bazy danych Sieciowe bazy danych Relacyjne bazy danych Kolumnowe Bazy Danych NoSQL i rozproszenie Podsumowanie

Architektura Masterless Ring

Token 0-42

Token 43-84

Token 85-125

Token 126-170

Token 171-215 Token 216-256

Cassandra Klaster

Adam Krasuski Technologie Informacyjne

Page 30: Technologie Informacyjne - Bazy danych · sprzedawca id imi nazwisko 1 Jan Nowak 2 Janina Kowalska transakcje id produkt_id sprzedawca_id data ilo obrót region 1 1 1 12.03.04 12

Płaskie pliki Hierarchiczne bazy danych Sieciowe bazy danych Relacyjne bazy danych Kolumnowe Bazy Danych NoSQL i rozproszenie Podsumowanie

Architektura Masterless Ring - Zapis

Token 0-42

Token 43-84

Token 85-125

Token 126-170

Token 171-215 Token 216-256

Cassandra Klaster

Koordynator

zapis

replikacja

replikacjareplikacja

Adam Krasuski Technologie Informacyjne

Page 31: Technologie Informacyjne - Bazy danych · sprzedawca id imi nazwisko 1 Jan Nowak 2 Janina Kowalska transakcje id produkt_id sprzedawca_id data ilo obrót region 1 1 1 12.03.04 12

Płaskie pliki Hierarchiczne bazy danych Sieciowe bazy danych Relacyjne bazy danych Kolumnowe Bazy Danych NoSQL i rozproszenie Podsumowanie

Architektura Masterless Ring - Odczyt

Adam Krasuski Technologie Informacyjne

Page 32: Technologie Informacyjne - Bazy danych · sprzedawca id imi nazwisko 1 Jan Nowak 2 Janina Kowalska transakcje id produkt_id sprzedawca_id data ilo obrót region 1 1 1 12.03.04 12

Płaskie pliki Hierarchiczne bazy danych Sieciowe bazy danych Relacyjne bazy danych Kolumnowe Bazy Danych NoSQL i rozproszenie Podsumowanie

Cassandra SSTable

id nick nazwisko email miasto1 aa kowalski [email protected] 2 ab [email protected] gdańsk3 ac nowak [email protected] nisko4 ad kowal [email protected] 5 ae [email protected] sopot6 af m [email protected] ag nowy [email protected] warsaw

id nick1 aa 2 ab 3 ac 4 ad 5 ae 6 af 7 ag

wiersz

klucz wiersza

id nazwisko1 kowalski 3 nowak 4 kowal 6 m 7 nowy

id email 1 [email protected] [email protected] [email protected] [email protected] [email protected] [email protected] [email protected]

id miasto2 gdańsk 3 nisko 5 sopot 7 warsaw

id nick nazwisko email miasto1 aa kowalski [email protected] 2 ab [email protected] gdańsk3 ac nowak [email protected] nisko4 ad kowal [email protected] 5 ae [email protected] sopot6 af m [email protected] ag nowy [email protected] warsaw

Column Family{Dane

klucz kolumny

Adam Krasuski Technologie Informacyjne

Page 33: Technologie Informacyjne - Bazy danych · sprzedawca id imi nazwisko 1 Jan Nowak 2 Janina Kowalska transakcje id produkt_id sprzedawca_id data ilo obrót region 1 1 1 12.03.04 12

Płaskie pliki Hierarchiczne bazy danych Sieciowe bazy danych Relacyjne bazy danych Kolumnowe Bazy Danych NoSQL i rozproszenie Podsumowanie

Cassandra SSTable

Adam Krasuski Technologie Informacyjne

Page 34: Technologie Informacyjne - Bazy danych · sprzedawca id imi nazwisko 1 Jan Nowak 2 Janina Kowalska transakcje id produkt_id sprzedawca_id data ilo obrót region 1 1 1 12.03.04 12

Płaskie pliki Hierarchiczne bazy danych Sieciowe bazy danych Relacyjne bazy danych Kolumnowe Bazy Danych NoSQL i rozproszenie Podsumowanie

SSTable rozproszenie

id nick1 aa 2 ab 3 ac 4 ad 5 ae 6 af 7 ag

id nazwisko1 kowalski 3 nowak 4 kowal 6 m 7 nowy

id email 1 [email protected] [email protected] [email protected] [email protected] [email protected] [email protected] [email protected]

id miasto2 gdańsk 3 nisko 5 sopot 7 warsaw

Tokio Londyn Warszawa

Adam Krasuski Technologie Informacyjne

Page 35: Technologie Informacyjne - Bazy danych · sprzedawca id imi nazwisko 1 Jan Nowak 2 Janina Kowalska transakcje id produkt_id sprzedawca_id data ilo obrót region 1 1 1 12.03.04 12

Płaskie pliki Hierarchiczne bazy danych Sieciowe bazy danych Relacyjne bazy danych Kolumnowe Bazy Danych NoSQL i rozproszenie Podsumowanie

Cassandra odczyt

Filtr Blooma

Partition key cache

ox...ox...ox...

ox...ox...ox...ox...ox...ox...

Partitionsummary

Compressionoffsets

MemoryDisk

Readrequest

Returnresult set

Partitionindex

dane

1

2

3

4

5

6

7

Adam Krasuski Technologie Informacyjne

Page 36: Technologie Informacyjne - Bazy danych · sprzedawca id imi nazwisko 1 Jan Nowak 2 Janina Kowalska transakcje id produkt_id sprzedawca_id data ilo obrót region 1 1 1 12.03.04 12

Płaskie pliki Hierarchiczne bazy danych Sieciowe bazy danych Relacyjne bazy danych Kolumnowe Bazy Danych NoSQL i rozproszenie Podsumowanie

Cassandra

PamięćDysk

dane MEMTABLE

Commit logSSTable

Ind

ex

Flush

zapisz

1

2

3

Adam Krasuski Technologie Informacyjne

Page 37: Technologie Informacyjne - Bazy danych · sprzedawca id imi nazwisko 1 Jan Nowak 2 Janina Kowalska transakcje id produkt_id sprzedawca_id data ilo obrót region 1 1 1 12.03.04 12

Płaskie pliki Hierarchiczne bazy danych Sieciowe bazy danych Relacyjne bazy danych Kolumnowe Bazy Danych NoSQL i rozproszenie Podsumowanie

Podsumowanie

Przedstawiono różne modele baz danych.

Omówiono szerzej relacyjny model baz danych.

Zaprezentowano różne formy zapisu i indeksowania relacyjnych bazdanych.

Omówiono obecne problemy rozproszonego zapisu danych.

Omówiono rozproszone bazy danych na przykładzie Cassandra.

Adam Krasuski Technologie Informacyjne