Scaricare la presentazione
La presentazione è in caricamento. Aspetta per favore
1
© Daniele Fontani, Arezzo, 26 Novembre 2016
SQL NoSQL questo è il dilemma © Daniele Fontani, Arezzo, 26 Novembre 2016
2
Software and Solution Architect
BUON GIORNO! “Daniele Fontani” Software and Solution Architect Chi Sono? Cosa Faccio?
3
PRESENTATION AGENDA Di cosa stiamo parlando? Dov’è il problema?
Limiti sistemi NoSQL Comparazione performance Conclusioni Vantaggi sistemi NoSQL
4
Sistemi di backend per la memorizzazione di dati non strutturati
NoSQL COSA SONO?
5
NoSQL CARATTERISTICHE
In estrema sintesi, in cosa consiste un backend no sql? Backend NOSQL E’ un “database” dove si possono salvare dati in maniera non strutturata. Performance: Dalla rinuncia ad alcune funzionalità derivano vantaggi in termini di performance Caratteristiche: Tante implementazioni a partire da specifiche esignenze Sviluppo semplificato: base dati orientate ad oggetti e semplicità nel data binding Scalabilità: Sistemi che scalano facillmente al crescere del carico Specigfici: implementazioni specifiche per esigenza (key value, document…)
6
…. le scelte passano attraverso esperienze e sensazioni personali
PERCHE PARLO DI DILEMMA? Affidarsi a una piattaforma NoSQL è una scelta importante e difficilmente si può tornare indietro a posteriori. …. le scelte passano attraverso esperienze e sensazioni personali
7
INAFFIDABILE? NELLA DEMO FUNZIONA BENISSIMO!
PESSIME moTIVAZIONI A FAVORE INAFFIDABILE? NELLA DEMO FUNZIONA BENISSIMO! E’ FIGO! MODERNO E’ mEGLIO! VA VELOCE! LO USA ANCHE IL MIO AMICO! Decidi con cognizione di causa e valuta i rischi!
8
DEVO FORMARE LE PERSONE!
PESSIME moTIVAZIONI CONTRO DEVO FORMARE LE PERSONE! NON LO SO USARE! HO SEMPRE USATO SQL PERCHE’ CAMBIARE? NON MI FIDO! E’ nUOVO! Il cambiamento, quando è necessario, va accolto positivamente
9
Analitics Performance Maturità Dinamismo Dati non strutturati
Caratteristiche DA CONOSCERE Pro e contro dei sistemi NoSQL che devono essere valutati prima di impiegarli PUNTI DI FORZA DEBOLEZZE Analitics Performance Maturità Dinamismo Scalabilità Dati non strutturati
10
LA CONCLUSIONE Leggere
11
In SINTESI
12
TU SEI QUI OPPURE
13
FINE.
14
https://github.com/zeppaman/Sql-NoSql- Comparison
Vi FIDATE? Fidarsi è bene, non fidarsi è meglio! Utilizziamo una suite di benchmark per misurare le performance in differenti ambiti. Lo scopo è quantificare il miglioramento di performance e commisurarlo al valore delle feature a cui rinunciamo. METTIAMO LE MANI SUL CODICE! Trovi su git-hub la suite di benchmark realizzati per questa presentazione Comparison
15
DEFINIAMO UNA SERIE DI CASI D’USO IMPLEMENTIAMO LE DUE VARIANTI
VEDIAMO LE DIFFERENZE Misuriamo le prestazioni HA SENSO SOLO NEI CASI «BORDERLINE»
16
SQL VS NOSQL Conosciamo I due contendenti BACKEND BACKEND MongoDB VS
SQL Server Local DB DATA ACCESS DATA ACCESS Mongo DB Driver Nhibernate WORKSTATION WORKSTATION i7 quad core, 16GB Ram, SSD i7 quad core, 16GB Ram, SSD
17
TEST 1: INSERIMENTI MASSIVI
Si inseriscono N righe su singola tabella \ collezione di elementi.
18
TEST 2: Ricerca Si inseriscono N righe su singola tabella \collezione di elementi. 80% letture dirette, 10% accessi paginati “REPOSITORY”: PREVALENZA ACCESSI DIRETTI 01 50% accessi diretti , 50% letture paginate BIlANCIATO 02 03 80% lettura paginate,20% accesso diretto “Gestionale”: PREVALENZA LETTUA PAGINATA
19
TEST 3: TRANSAZIONI Si fanno N transazioni composti da tre inserimenti
20
TEST 3: ANALYTICS (TANTI DATI)
21
TEST 3: ANALYTICS
22
Tutti bravi a fare quello per cui sono nati.
Ok, ho capito. Tutti bravi a fare quello per cui sono nati. Ma… Allora abbiamo finito, andiamo a casa? No No, calmi, il pranzo deve aspettare. Perché non vi ho fatto svegliare presto il sabato mattina per 13 slide che potevi anche trovare su internet.
23
LE APPLICAZIONI REALi NON SONO Bianco o nero
C’è del relazionale in ognuno di noi.
24
IDEA: UTILIZZARE PIU SISTEMI
NEXT STEP: APPROCCI IBRIDI IDEA: UTILIZZARE PIU SISTEMI (EVENTUALMENTE RIDONDANDO PARTE DEI DATI) PER OTTENERE IL MEGLIO DALLE TECNOLOGIE
25
ESEMPIO 1: BIG DATA DB NOSQL DB RELAZIONALE DB RELAZIONALE VS
«TABELLE PICCOLE» «TABELLE PICCOLE» «BIG DATA» «BIG DATA»
26
«DATI MATERIALIZZATI»
ESEMPIO 2: EAV DB NOSQL DB RELAZIONALE DB RELAZIONALE VS «TABELLE PICCOLE» «EAV» «TABELLE PICCOLE» «EAV REPLACEMENT» «DATI MATERIALIZZATI»
27
NON ESISTONO SOLUZIONI, MA SOLO SCELTE
ULTIMISSIMA SLIDE… QUESTA PRESENTAZIONE HA RAGGIUNTO IL SUO SCOPO SE: AVETE LE IDEE PIU’ CONFUSE DI QUNDO SIAMO PARTITI VI SIETE POSTI PROBLEMI NUOVI AVETE RISO ALLA SLIDE DEL GATTO NON ESISTONO SOLUZIONI, MA SOLO SCELTE (tratto dalla presentazione di F.Stendardi)
28
THANKS FOR WATCHING! Contact me: Follow me on:
Non dimenticarti di lasciarmi un tuo feedback! Contact me: Follow me on: facebook.com/zeppaman github.com/zeppaman codeproject.com/Members/sir-zeppaman
Presentazioni simili
© 2025 SlidePlayer.it Inc.
All rights reserved.