SlideShare a Scribd company logo
Architecture and programming model for NOSQL web (Polish)JarosławPałkaWhat's new in Java EE 6Sang ShinProgramming ClojureVenkatSubramaniamPlay! framework: a revolution in the Java worldNicolas Leroux
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.
Programming and architecture model for NOSQL web4Developers, Warszawa 2011
O mnieAdministrator, programista, architekt, eksperymentalny managerNiespełniony autor http://primitive.jogger.pl oraz https://bitbucket.org/kcrimson/Po godzinach NOSQL, REST i JavaScript „funboy”Członek Stowarzyszenie Software Engineering Professionals Polska
Programming and architecture of NOSQL web at 33degree
Dziś w menuTrzy tezy, czyli drobiny przemyśleń i doświadczeniaJak to działa, czyli prawie na żywo kodowanieWózek z zakupamiKomentarze, oceny i chmuryRekomendacjeWnioski i inne architektologiczne brednieBrawa, pochwały oraz konstruktywne komentarze
Teza pierwszaIm bliżej masz do bazy tym rzadziej będziesz tam zaglądałczyliMake your data local
Ścieżka krytyczna
Samotność długodystansowcaCache sposobem na zmniejszenie dystansu do danychOsadzone (embedded) bazy danych w szczególnych przypadkachJednak dystans na poziomie infrastruktury to nie wszystko
Na jednej kartce formatu A4CityEmployeeAddressCountryProjectManagerProgram
Programming and architecture of NOSQL web at 33degree
Programming and architecture of NOSQL web at 33degree
Płaskie jest piękne
Teza drugaTyleż prawd ile par uszu do których ona dotarłaczyliPut your data in right context
Programming and architecture of NOSQL web at 33degree
Wszyscy aktorzy na scenęRóżni aktorzy to nie tylko inne zachowania systemuTo także inna perspektywa w spojrzeniu na daneTo także inny sposób wyszukiwania danychCzy w takiej sytuacji jeden wspólny model nadal ma sens?
Dla użytkownikaZamówienieProduktyCenaStatus realizacji
Dla pracowników sklepuZamówienieNumery identyfikacyjne produktówLokazalizacja produktów w magazynachStatus płatnościTyp przesyłki
Dla pracowników marketinguZamówienieWiek zamawiającegoMiejsce zamieszkaniaMiejsce pracyŚredni dochód miesięczny„Direct” czy  „refferal”
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.
Teza trzeciaPan szuka czy błądzi?czyliStore vs search
Tradycyjne spojrzenie
Po drugiej stronie lustra
Witajcie w naszym sklepieWózek z zakupamiKomentarze, tagi i oceny w chmurzeRekomendacje
Cały stos technologiiWicketSpringDAOHadesEntityManagerHibernate
Wózek z zakupami
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
Duże jest piękne tylko w naturzeShoppingCartShoppingCartOrderItemquantityShoppingCartItemquantity
productPrice
albumTitle
artistNameProductpriceAlbumtitleArtistnameNauka która nie idzie w lasOddzielmy ziarna od plew,Rozdzielne problemy to rozdzielne domenyObiekty z rozdzielnych domen nic nie wiedzą o sobieKorzystajmy z #ID oraz #IDREFLuźnie wiązanie danychTransakcyjne kontra nietransakcyjneUtrzymuj te światy z dala od siebie
Cały stos technologiiWicketSpringDAOHadesKey value storeEntityManagerHibernate
Komentarze, tagi i oceny w chmurze
Każdy ma prawo do wypowiedziKomentarze, tagi i oceny mają pomóc użytkownikom podjąć decyzjęRaz zapisane pozostaja niezmienne w systemieBudowanie statystyk, trendów oraz rekomendacji
Cały stos technologiiWicketSpringDAOHadesKey value storeDocument storeEntityManagerHibernate
Jedna Pani drugiej Pani
... na kiedy to będzie?Co kupili inni?A co kupili Ci co inni kupiliA może jeszcze albumy oznaczone tymi samymi tag’amiI do tego albumy wydane w tej samej wytwórni... I co jeszcze marketingowi przyjdzie do głowy
Na pożółkłej kartce papieru
Programming and architecture of NOSQL web at 33degree
Cały stos technologiiWicketSpringDAOHadesKey value storeDocument storeGraph databaseEntityManagerHibernate
Cały stos technologiiWicketSpringDAOHadesSpring dataEntityManagerKey value storeDocument storeGraph databaseHibernate
O co w tym wszystkim chodzi?To nie tylko szybkość i wydajnośćTo nie tylko skalowalność i insze inszościNOSQL to także zaawansowane indeksy jako uzupełnienie dla RDBMS„Giętkie” vs „skostniałe” struktury danych„Ludzkie” oblicze API dla programistów
Wnioski architektologicznealbowiem przedwczesna optymalizacja u źródeł zła wszelkiego więc nie idź zbyt wcześnie w NOSQL kolegouważaj co mierzysz i jako bardzo w to wierzyszjeden wspólny model to przeżytek i wielu klęsk początek
StoreLong timeMutableSophisticated queriesFast accessLimited timeImmutableSearch

More Related Content

PPT
Age Discovery
PPT
eindwerk beeld
PPT
djibouti
PDF
Brands Features And Architecture
PPT
Anglia
PPT
Buscaviajeros
PPT
LONDON
PPT
Age Discovery
eindwerk beeld
djibouti
Brands Features And Architecture
Anglia
Buscaviajeros
LONDON

Similar to Programming and architecture of NOSQL web at 33degree (20)

PPT
Usability - Trudne Pytania
PPT
Usability Trudne Pytania
PPT
KrakSpot #13 Jaromir Działo - Działaj globalnie, czyli Topicmarks w dolinie k...
PDF
Java Data Objects
PDF
Inicjatywa NoSQL na przykładzie db4o
PDF
Coviob czyli innowacyjne zarządzanie projektami
PPT
8 jaromir dzialo
PDF
university day 1
PDF
Zasady technicznej organizacji projektów programistycznych
PPT
Warsztat: Zabawa w agencję interaktywną. Projekt od A do Z.
PPT
Zabawa w agencję interaktywną. Projekt od A do Z. Tomasz Karwatka, Divante i ...
PPTX
Metoda analizy i specyfikowania wymagań na oprogramowanie
PPTX
Modele mentalne a strony WWW (SparkUp 2010)
PPT
Uczący się sklep - systemowe podejście do rozwoju eCommerce
PDF
Jak stworzyć aplikacje mobilne wysoko ocenianie przez użytkowników? - Case St...
PDF
Architektura aplikacji android
PDF
Produkcja aplikacji internetowych
PPT
Narzedzia technologiczne, ktore umozliwiaja zachowanie wiedzy w organizacji
PPTX
Agile i Scrum: projekty z klasą (JUG Olsztyn 2015)
PPT
Distributed Agile
Usability - Trudne Pytania
Usability Trudne Pytania
KrakSpot #13 Jaromir Działo - Działaj globalnie, czyli Topicmarks w dolinie k...
Java Data Objects
Inicjatywa NoSQL na przykładzie db4o
Coviob czyli innowacyjne zarządzanie projektami
8 jaromir dzialo
university day 1
Zasady technicznej organizacji projektów programistycznych
Warsztat: Zabawa w agencję interaktywną. Projekt od A do Z.
Zabawa w agencję interaktywną. Projekt od A do Z. Tomasz Karwatka, Divante i ...
Metoda analizy i specyfikowania wymagań na oprogramowanie
Modele mentalne a strony WWW (SparkUp 2010)
Uczący się sklep - systemowe podejście do rozwoju eCommerce
Jak stworzyć aplikacje mobilne wysoko ocenianie przez użytkowników? - Case St...
Architektura aplikacji android
Produkcja aplikacji internetowych
Narzedzia technologiczne, ktore umozliwiaja zachowanie wiedzy w organizacji
Agile i Scrum: projekty z klasą (JUG Olsztyn 2015)
Distributed Agile
Ad

More from Jaroslaw Palka (8)

PDF
We are crowd, we are anonymous
PDF
Czterej jeźdźcy apokalipsy gdy Armagedon w JVM nadchodzi
ODP
Systematyczny architekt na drodze ku planowanemu postarzaniu
PDF
Patterns for JVM languages JokerConf
PDF
Systematyczny architekt na drodze ku planowanemu postarzaniu
PDF
Patterns for JVM languages - Geecon 2014
PDF
Patterns for organic architecture
ODP
I ty też możesz mieć swoje dane w cache
We are crowd, we are anonymous
Czterej jeźdźcy apokalipsy gdy Armagedon w JVM nadchodzi
Systematyczny architekt na drodze ku planowanemu postarzaniu
Patterns for JVM languages JokerConf
Systematyczny architekt na drodze ku planowanemu postarzaniu
Patterns for JVM languages - Geecon 2014
Patterns for organic architecture
I ty też możesz mieć swoje dane w cache
Ad

Programming and architecture of NOSQL web at 33degree

Editor's Notes

  • #6: Hype cycleSzczyt Ślepego Zauroczenia,Dolina Rozpaczy, MongoDB i Forsquare, Cassandra i APIWzgórze Oświecenia, Równina Wiecznego Spokoju
  • #9: Przypowiść o dwóch ekipach pracowników i dowożeniu cegieł,
  • #10: 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
  • #11: Na samym początku nasz model miesci się na jednej kartce papieru, jest przyjrzysty, czytelny, zrozumiały dla biznesu, wprost idealny,
  • #12: A kilka iteracji pozniej 
  • #13: 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
  • #16: What do you see? Małe ładne złudzenie optyczne, konkurs, co kto widzi, Sandro del Prete
  • #22: Billy Newport,
  • #28: Pokazac model
  • #29: Pokazać model
  • #36: Wszystko sie moze zdarzyć