Pobieranie prezentacji. Proszę czekać

Pobieranie prezentacji. Proszę czekać

Architecture and programming model for NOSQL web (Polish)

Podobne prezentacje


Prezentacja na temat: "Architecture and programming model for NOSQL web (Polish)"— Zapis prezentacji:

1 Architecture and programming model for NOSQL web (Polish)
Jarosław Pałka What's new in Java EE 6 Sang Shin Programming Clojure Venkat Subramaniam Play! framework: a revolution in the Java world Nicolas Leroux

2 Poniższa prezentacja udostępniana jest w ramach licencji DHMB (Don't Hurt My Brain).
Prowadzący nie ponosi odpowiedzialności finansowej i moralnej za szkody wynikające z wzięcia zbyt serio zawartości tej prezentacji. Wliczając w to trwałe uszkodzenia neuronów, obniżenie aktywności neuroprzekaźników na poziomie molekularnym oraz grupowe zwolnienia z pracy.

3 Programming and architecture model for NOSQL web
4Developers, Warszawa 2011

4 O mnie Administrator, programista, architekt, eksperymentalny manager
Niespełniony autor oraz Po godzinach NOSQL, REST i JavaScript „funboy” Członek Stowarzyszenie Software Engineering Professionals Polska

5 Szczyt Ślepego Zauroczenia,
Hype cycle Szczyt Ślepego Zauroczenia, Dolina Rozpaczy, MongoDB i Forsquare, Cassandra i API Wzgórze Oświecenia, Równina Wiecznego Spokoju 5

6 Dziś w menu Trzy tezy, czyli drobiny przemyśleń i doświadczenia
Jak to działa, czyli prawie na żywo kodowanie Wózek z zakupami Komentarze, oceny i chmury Rekomendacje Wnioski i inne architektologiczne brednie Brawa, pochwały oraz konstruktywne komentarze

7 Teza pierwsza Im bliżej masz do bazy tym rzadziej będziesz tam zaglądał czyli Make your data local

8 Ścieżka krytyczna Użytkownik Sieć Aplikacja Baza danych Przypowiść o dwóch ekipach pracowników i dowożeniu cegieł, 8

9 Samotność długodystansowca
Cache sposobem na zmniejszenie dystansu do danych Osadzone (embedded) bazy danych w szczególnych przypadkach Jednak dystans na poziomie infrastruktury to nie wszystko W szczególnych przypadkach osadzone bazy danych (pełna izolacja, self contained applications, stateless), przykład gateway’a SMSowego, gdzie krótkie numery, rule, konfiguracja sesje w osadzonej bazie danych, dostep do danych poprzez interfejs restowy 9

10 Na jednej kartce formatu A4
City Employee Address Country Project Manager Na samym początku nasz model miesci się na jednej kartce papieru, jest przyjrzysty, czytelny, zrozumiały dla biznesu, wprost idealny, Program

11 A kilka iteracji pozniej 

12 może animowany zaczynamy z klasa Company, Team, Project, Employee
Pokręcony diagram UML, pokazując że zbyt hierarchczna strukura, długi dystans, może sie źle skonczyć (przykład VersionOne), może animowany zaczynamy z klasa Company, Team, Project, Employee 12

13 Płaskie jest piękne 13

14 Teza druga Tyleż prawd ile par uszu do których ona dotarła czyli Put your data in right context

15 What do you see? Małe ładne złudzenie optyczne, konkurs, co kto widzi, Sandro del Prete
15

16 Wszyscy aktorzy na scenę
Różni aktorzy to nie tylko inne zachowania systemu To także inna perspektywa w spojrzeniu na dane To także inny sposób wyszukiwania danych Czy w takiej sytuacji jeden wspólny model nadal ma sens?

17 Dla użytkownika Zamówienie Produkty Cena Status realizacji

18 Dla pracowników sklepu
Zamówienie Numery identyfikacyjne produktów Lokazalizacja produktów w magazynach Status płatności Typ przesyłki

19 Dla pracowników marketingu
Zamówienie Wiek zamawiającego Miejsce zamieszkania Miejsce pracy Średni dochód miesięczny „Direct” czy „refferal”

20 Jeden, by wszystkimi rządzić, jeden, by wszystkie odnaleźć, Jeden, by wszystkie zgromadzić i w ciemności związać W krainie Mordor, gdzie zaległy cienie.

21 Pan szuka czy błądzi? czyli Store vs search
Teza trzecia Pan szuka czy błądzi? czyli Store vs search Billy Newport,

22 Tradycyjne spojrzenie
Dane Zapytania

23 Po drugiej stronie lustra
Zapytania Dane

24 Witajcie w naszym sklepie
Wózek z zakupami Komentarze, tagi i oceny w chmurze Rekomendacje

25 Cały stos technologii Wicket Spring DAO Hades EntityManager Hibernate

26 Wózek z zakupami

27 Wszyscy aktorzy na scenę
Każdy użytkownik w danym momencie posiada jeden wózek z zakupami, Raz użyty wózek wyjeżdza na śmietnik a klient zabiera swoje zakupy do domu, Zawartość wózka jest niewspółmiernie częsciej przeglądana niż aktualizowana Pokazac model 27

28 Duże jest piękne tylko w naturze
ShoppingCart ShoppingCart OrderItem quantity ShoppingCartItem quantity productPrice albumTitle artistName Product price Pokazać model Album title Artist name 28

29 Nauka która nie idzie w las
Oddzielmy ziarna od plew, Rozdzielne problemy to rozdzielne domeny Obiekty z rozdzielnych domen nic nie wiedzą o sobie Korzystajmy z #ID oraz #IDREF Luźnie wiązanie danych Transakcyjne kontra nietransakcyjne Utrzymuj te światy z dala od siebie

30 Cały stos technologii Wicket Spring DAO Hades EntityManager Hibernate
Key value store

31 Komentarze, tagi i oceny w chmurze

32 Każdy ma prawo do wypowiedzi
Komentarze, tagi i oceny mają pomóc użytkownikom podjąć decyzję Raz zapisane pozostaja niezmienne w systemie Budowanie statystyk, trendów oraz rekomendacji

33 Cały stos technologii Wicket Spring DAO Hades EntityManager Hibernate
Key value store Document store

34 Jedna Pani drugiej Pani

35 ... na kiedy to będzie? Co kupili inni? A co kupili Ci co inni kupili
A może jeszcze albumy oznaczone tymi samymi tag’ami I do tego albumy wydane w tej samej wytwórni ... I co jeszcze marketingowi przyjdzie do głowy Wszystko sie moze zdarzyć 35

36 Na pożółkłej kartce papieru

37

38 Cały stos technologii Wicket Spring DAO Hades EntityManager Hibernate
Key value store Document store Graph database

39 Cały stos technologii Wicket Spring DAO Hades EntityManager Hibernate
Spring data Key value store Document store Graph database

40 O co w tym wszystkim chodzi?
To nie tylko szybkość i wydajność To nie tylko skalowalność i insze inszości NOSQL to także zaawansowane indeksy jako uzupełnienie dla RDBMS „Giętkie” vs „skostniałe” struktury danych „Ludzkie” oblicze API dla programistów

41 Wnioski architektologiczne
albowiem przedwczesna optymalizacja u źródeł zła wszelkiego więc nie idź zbyt wcześnie w NOSQL kolego uważaj co mierzysz i jako bardzo w to wierzysz jeden wspólny model to przeżytek i wielu klęsk początek

42 Sophisticated queries
Store Long time Sophisticated queries Immutable Search Limited time Fast access Mutable

43 Garść informacji http://primitive.jogger.pl
nosql-web nosql-cart nosql-tags nosql-recommendations heck-are-you-actually-using-nosql-for.html

44 So you think agile software development and building houses have nothing in common...
Wojciech Seliga Practical Guide to using REST for SOA Stefan Tilkov Five years of change, no outages Steve Freeman Monitoring 10 Critical Code Quality Metrics with Sonar Matthew McCullough


Pobierz ppt "Architecture and programming model for NOSQL web (Polish)"

Podobne prezentacje


Reklamy Google