SlideShare ist ein Scribd-Unternehmen logo
1 von 16
Downloaden Sie, um offline zu lesen
Code Wars
Database Decisions for Application Development
Jennifer Reif
Email: jennifer.reif@neo4j.com
Twitter: @JMHReif
LinkedIn: linkedin.com/in/jmhreif
Github: GitHub.com/JMHReif
Website: jmhreif.com
Who Am I?
• Developer relations engineer at Neo4j

• Developer

• Blogger

• Conference speaker

• Continuous learner + geek
Jennifer Reif
Email: jennifer.reif@neo4j.com
Twitter: @JMHReif
LinkedIn: linkedin.com/in/jmhreif
Github: GitHub.com/JMHReif
Website: jmhreif.com
Why should the database matter to us?
• Long-term:

• Right tool for the right job

• Future maintenance/improvement e
ff
orts

• Short-term:

• Forcing data into unnatural format

• Data model confusion and iterations

• Complex queries to handle business questions

• Data storage can impact application development!
Use case - Northwind sales system
Using Spring
• Quick-start (Spring Initializr)

• Reduce boilerplate (Spring Boot)

• Consistent integration (Spring Data):

• Annotation-based mapping for POJOs

• Repository support via interface

• Domain-speci
fi
c language queries for each
https://spring.io/projects/spring-data
Data Models
Relational - MariaDB
Document - MongoDB
Graph - Neo4j
Data Models
Data Models
Relational - MariaDB
Document - MongoDB
Graph - Neo4j
Data Models
Data Models
Relational - MariaDB
Document - MongoDB
Graph - Neo4j
Data Models
Demo Time!
Key Differences
• POJOs aligning with data models

• Maria: Order -> OrderedProduct <- Product

• Mongo: Order { Product: [{}] }

• Neo4j: Order -[INCLUDES]-> Product

• @Query annotation (DSL syntax)

• Maria: JPQL / SQL

• Mongo: JSON-parameter / SQL

• Neo4j: Cypher
Key Differences
• TL;DR - data model impacts app development

• Fit data into a database that creates the…

• Cleanest model

• Simplest queries

• Best application
• GitHub projects:

• MariaDB

• Docker: github.com/JMHReif/docker-maria

• Application: github.com/JMHReif/maria-code-wars

• MongoDB

• Docker: github.com/JMHReif/docker-mongo

• Application: github.com/JMHReif/mongo-code-wars

• Neo4j

• Docker: github.com/JMHReif/docker-neo4j

• Application: github.com/JMHReif/neo4j-code-wars

• Db import
fi
les/scripts: github.com/JMHReif/code-wars-import-data-scripts

• Spring Docs: spring.io/projects/spring-data
Resources
Jennifer Reif
Email: jennifer.reif@neo4j.com
Twitter: @JMHReif
LinkedIn: linkedin.com/in/jmhreif
Github: GitHub.com/JMHReif
Website: jmhreif.com

Weitere ähnliche Inhalte

Was ist angesagt?

Introducing Neo4j
Introducing Neo4jIntroducing Neo4j
Introducing Neo4jNeo4j
 
Neo4j Bloom for Project Teams: Browser-Based and Multi-User Enabled
Neo4j Bloom for Project Teams: Browser-Based and Multi-User EnabledNeo4j Bloom for Project Teams: Browser-Based and Multi-User Enabled
Neo4j Bloom for Project Teams: Browser-Based and Multi-User EnabledNeo4j
 
How to Make your Graph DB Project Successful with Neo4j Services
How to Make your Graph DB Project Successful with Neo4j ServicesHow to Make your Graph DB Project Successful with Neo4j Services
How to Make your Graph DB Project Successful with Neo4j ServicesNeo4j
 
Neo4j GraphTalk Düsseldorf - Building intelligent solutions with Graphs
Neo4j GraphTalk Düsseldorf - Building intelligent solutions with GraphsNeo4j GraphTalk Düsseldorf - Building intelligent solutions with Graphs
Neo4j GraphTalk Düsseldorf - Building intelligent solutions with GraphsNeo4j
 
Introduction to Neo4j for the Emirates & Bahrain
Introduction to Neo4j for the Emirates & BahrainIntroduction to Neo4j for the Emirates & Bahrain
Introduction to Neo4j for the Emirates & BahrainNeo4j
 
Introduction to Graph databases and Neo4j (by Stefan Armbruster)
Introduction to Graph databases and Neo4j (by Stefan Armbruster)Introduction to Graph databases and Neo4j (by Stefan Armbruster)
Introduction to Graph databases and Neo4j (by Stefan Armbruster)barcelonajug
 
Graphs for Enterprise Architects
Graphs for Enterprise ArchitectsGraphs for Enterprise Architects
Graphs for Enterprise ArchitectsNeo4j
 
MLCommons: Better ML for Everyone
MLCommons: Better ML for EveryoneMLCommons: Better ML for Everyone
MLCommons: Better ML for EveryoneDatabricks
 
Neo4j 4 Overview
Neo4j 4 OverviewNeo4j 4 Overview
Neo4j 4 OverviewNeo4j
 
Graphs in Life Sciences
Graphs in Life SciencesGraphs in Life Sciences
Graphs in Life SciencesNeo4j
 
Neo4j GraphDay Seattle- Sept19- in the enterprise
Neo4j GraphDay Seattle- Sept19-  in the enterpriseNeo4j GraphDay Seattle- Sept19-  in the enterprise
Neo4j GraphDay Seattle- Sept19- in the enterpriseNeo4j
 
Neo4j GraphDay Seattle- Sept19- graphs are ai
Neo4j GraphDay Seattle- Sept19-  graphs are aiNeo4j GraphDay Seattle- Sept19-  graphs are ai
Neo4j GraphDay Seattle- Sept19- graphs are aiNeo4j
 
A field guide to the Financial Times, Rhys Evans, Financial Times
A field guide to the Financial Times, Rhys Evans, Financial TimesA field guide to the Financial Times, Rhys Evans, Financial Times
A field guide to the Financial Times, Rhys Evans, Financial TimesNeo4j
 
Neo4j Import Webinar
Neo4j Import WebinarNeo4j Import Webinar
Neo4j Import WebinarNeo4j
 
GraphTour 2020 - Neo4j Innovation Lab
GraphTour 2020 - Neo4j Innovation LabGraphTour 2020 - Neo4j Innovation Lab
GraphTour 2020 - Neo4j Innovation LabNeo4j
 
Neo4j Graph Use Cases, Bruno Ungermann, Neo4j
Neo4j Graph Use Cases, Bruno Ungermann, Neo4jNeo4j Graph Use Cases, Bruno Ungermann, Neo4j
Neo4j Graph Use Cases, Bruno Ungermann, Neo4jNeo4j
 
Graphdatenbank Neo4j: Konzept, Positionierung, Status Region DACH - Bruno Un...
 Graphdatenbank Neo4j: Konzept, Positionierung, Status Region DACH - Bruno Un... Graphdatenbank Neo4j: Konzept, Positionierung, Status Region DACH - Bruno Un...
Graphdatenbank Neo4j: Konzept, Positionierung, Status Region DACH - Bruno Un...Neo4j
 
Relational to Big Graph
Relational to Big GraphRelational to Big Graph
Relational to Big GraphNeo4j
 
Neo4j GraphDay - Graphs in the Real World: Tope Use Cases for Graph Databases...
Neo4j GraphDay - Graphs in the Real World: Tope Use Cases for Graph Databases...Neo4j GraphDay - Graphs in the Real World: Tope Use Cases for Graph Databases...
Neo4j GraphDay - Graphs in the Real World: Tope Use Cases for Graph Databases...Neo4j
 
The Graph Database Universe: Neo4j Overview
The Graph Database Universe: Neo4j OverviewThe Graph Database Universe: Neo4j Overview
The Graph Database Universe: Neo4j OverviewNeo4j
 

Was ist angesagt? (20)

Introducing Neo4j
Introducing Neo4jIntroducing Neo4j
Introducing Neo4j
 
Neo4j Bloom for Project Teams: Browser-Based and Multi-User Enabled
Neo4j Bloom for Project Teams: Browser-Based and Multi-User EnabledNeo4j Bloom for Project Teams: Browser-Based and Multi-User Enabled
Neo4j Bloom for Project Teams: Browser-Based and Multi-User Enabled
 
How to Make your Graph DB Project Successful with Neo4j Services
How to Make your Graph DB Project Successful with Neo4j ServicesHow to Make your Graph DB Project Successful with Neo4j Services
How to Make your Graph DB Project Successful with Neo4j Services
 
Neo4j GraphTalk Düsseldorf - Building intelligent solutions with Graphs
Neo4j GraphTalk Düsseldorf - Building intelligent solutions with GraphsNeo4j GraphTalk Düsseldorf - Building intelligent solutions with Graphs
Neo4j GraphTalk Düsseldorf - Building intelligent solutions with Graphs
 
Introduction to Neo4j for the Emirates & Bahrain
Introduction to Neo4j for the Emirates & BahrainIntroduction to Neo4j for the Emirates & Bahrain
Introduction to Neo4j for the Emirates & Bahrain
 
Introduction to Graph databases and Neo4j (by Stefan Armbruster)
Introduction to Graph databases and Neo4j (by Stefan Armbruster)Introduction to Graph databases and Neo4j (by Stefan Armbruster)
Introduction to Graph databases and Neo4j (by Stefan Armbruster)
 
Graphs for Enterprise Architects
Graphs for Enterprise ArchitectsGraphs for Enterprise Architects
Graphs for Enterprise Architects
 
MLCommons: Better ML for Everyone
MLCommons: Better ML for EveryoneMLCommons: Better ML for Everyone
MLCommons: Better ML for Everyone
 
Neo4j 4 Overview
Neo4j 4 OverviewNeo4j 4 Overview
Neo4j 4 Overview
 
Graphs in Life Sciences
Graphs in Life SciencesGraphs in Life Sciences
Graphs in Life Sciences
 
Neo4j GraphDay Seattle- Sept19- in the enterprise
Neo4j GraphDay Seattle- Sept19-  in the enterpriseNeo4j GraphDay Seattle- Sept19-  in the enterprise
Neo4j GraphDay Seattle- Sept19- in the enterprise
 
Neo4j GraphDay Seattle- Sept19- graphs are ai
Neo4j GraphDay Seattle- Sept19-  graphs are aiNeo4j GraphDay Seattle- Sept19-  graphs are ai
Neo4j GraphDay Seattle- Sept19- graphs are ai
 
A field guide to the Financial Times, Rhys Evans, Financial Times
A field guide to the Financial Times, Rhys Evans, Financial TimesA field guide to the Financial Times, Rhys Evans, Financial Times
A field guide to the Financial Times, Rhys Evans, Financial Times
 
Neo4j Import Webinar
Neo4j Import WebinarNeo4j Import Webinar
Neo4j Import Webinar
 
GraphTour 2020 - Neo4j Innovation Lab
GraphTour 2020 - Neo4j Innovation LabGraphTour 2020 - Neo4j Innovation Lab
GraphTour 2020 - Neo4j Innovation Lab
 
Neo4j Graph Use Cases, Bruno Ungermann, Neo4j
Neo4j Graph Use Cases, Bruno Ungermann, Neo4jNeo4j Graph Use Cases, Bruno Ungermann, Neo4j
Neo4j Graph Use Cases, Bruno Ungermann, Neo4j
 
Graphdatenbank Neo4j: Konzept, Positionierung, Status Region DACH - Bruno Un...
 Graphdatenbank Neo4j: Konzept, Positionierung, Status Region DACH - Bruno Un... Graphdatenbank Neo4j: Konzept, Positionierung, Status Region DACH - Bruno Un...
Graphdatenbank Neo4j: Konzept, Positionierung, Status Region DACH - Bruno Un...
 
Relational to Big Graph
Relational to Big GraphRelational to Big Graph
Relational to Big Graph
 
Neo4j GraphDay - Graphs in the Real World: Tope Use Cases for Graph Databases...
Neo4j GraphDay - Graphs in the Real World: Tope Use Cases for Graph Databases...Neo4j GraphDay - Graphs in the Real World: Tope Use Cases for Graph Databases...
Neo4j GraphDay - Graphs in the Real World: Tope Use Cases for Graph Databases...
 
The Graph Database Universe: Neo4j Overview
The Graph Database Universe: Neo4j OverviewThe Graph Database Universe: Neo4j Overview
The Graph Database Universe: Neo4j Overview
 

Ähnlich wie Code Wars: Database Decisions for Application Development

Delegate, Automate, Dominate: Putting Graph Tech to Work for You to Unlock Hi...
Delegate, Automate, Dominate: Putting Graph Tech to Work for You to Unlock Hi...Delegate, Automate, Dominate: Putting Graph Tech to Work for You to Unlock Hi...
Delegate, Automate, Dominate: Putting Graph Tech to Work for You to Unlock Hi...Neo4j
 
017 Divide and Conquer Send Forth the Microservices - NODES2022 AMERICAS Begi...
017 Divide and Conquer Send Forth the Microservices - NODES2022 AMERICAS Begi...017 Divide and Conquer Send Forth the Microservices - NODES2022 AMERICAS Begi...
017 Divide and Conquer Send Forth the Microservices - NODES2022 AMERICAS Begi...Neo4j
 
Toolbelt Trifecta: Connecting to Neo4j with Java and AWS Lambda
Toolbelt Trifecta: Connecting to Neo4j with Java and AWS LambdaToolbelt Trifecta: Connecting to Neo4j with Java and AWS Lambda
Toolbelt Trifecta: Connecting to Neo4j with Java and AWS LambdaNeo4j
 
Keeping User Generated Content Flexible with Neo4j - Greg Jordan @ GraphConne...
Keeping User Generated Content Flexible with Neo4j - Greg Jordan @ GraphConne...Keeping User Generated Content Flexible with Neo4j - Greg Jordan @ GraphConne...
Keeping User Generated Content Flexible with Neo4j - Greg Jordan @ GraphConne...Neo4j
 
PHP/MySQL Training Course in Delhi, India by IT People
PHP/MySQL Training Course in Delhi, India by IT PeoplePHP/MySQL Training Course in Delhi, India by IT People
PHP/MySQL Training Course in Delhi, India by IT PeopleAbhishekve
 
“So Now You’re a UiPath Developer – What’s Next?” How do you Manage the Work?
“So Now You’re a UiPath Developer – What’s Next?” How do you Manage the Work?“So Now You’re a UiPath Developer – What’s Next?” How do you Manage the Work?
“So Now You’re a UiPath Developer – What’s Next?” How do you Manage the Work?DianaGray10
 
“So Now You’re a UiPath Developer – What’s Next?” How do you Manage the Work?
“So Now You’re a UiPath Developer – What’s Next?” How do you Manage the Work?“So Now You’re a UiPath Developer – What’s Next?” How do you Manage the Work?
“So Now You’re a UiPath Developer – What’s Next?” How do you Manage the Work?DianaGray10
 
14 Habits of Great SQL Developers
14 Habits of Great SQL Developers14 Habits of Great SQL Developers
14 Habits of Great SQL DevelopersIke Ellis
 
50 Shades of Fail KScope16
50 Shades of Fail KScope1650 Shades of Fail KScope16
50 Shades of Fail KScope16Christian Berg
 
Agile Software Development
Agile Software DevelopmentAgile Software Development
Agile Software DevelopmentSynerzip
 
Synerzip Agile Software Development
Synerzip Agile Software DevelopmentSynerzip Agile Software Development
Synerzip Agile Software DevelopmentSynerzip
 
(Dev) Hiram Fleitas - Data Viz & Analytics using Python and JavaScript
(Dev) Hiram Fleitas - Data Viz & Analytics using Python and JavaScript(Dev) Hiram Fleitas - Data Viz & Analytics using Python and JavaScript
(Dev) Hiram Fleitas - Data Viz & Analytics using Python and JavaScriptHiram Fleitas León
 
“So Now You’re a UiPath Developer – What’s Next?” How do you Manage the Work?
“So Now You’re a UiPath Developer – What’s Next?” How do you Manage the Work?“So Now You’re a UiPath Developer – What’s Next?” How do you Manage the Work?
“So Now You’re a UiPath Developer – What’s Next?” How do you Manage the Work?DianaGray10
 
The Un-researched Persona
The Un-researched PersonaThe Un-researched Persona
The Un-researched Personanlemonier
 
The Art Of Pair Programming
The Art Of Pair ProgrammingThe Art Of Pair Programming
The Art Of Pair ProgrammingTodd Merritt
 
The Great Migration: Moving Your SharePoint | Fpwebinar
The Great Migration: Moving Your SharePoint | Fpwebinar The Great Migration: Moving Your SharePoint | Fpwebinar
The Great Migration: Moving Your SharePoint | Fpwebinar Fpweb
 
Best Practices in Developing Requirements for SharePoint Projects
Best Practices in Developing Requirements for SharePoint ProjectsBest Practices in Developing Requirements for SharePoint Projects
Best Practices in Developing Requirements for SharePoint ProjectsDux Raymond Sy
 
Polyglot Persistence with MongoDB and Neo4j
Polyglot Persistence with MongoDB and Neo4jPolyglot Persistence with MongoDB and Neo4j
Polyglot Persistence with MongoDB and Neo4jCorie Pollock
 
O365 Tools for Building a Digital Workplace
O365 Tools for Building a Digital WorkplaceO365 Tools for Building a Digital Workplace
O365 Tools for Building a Digital WorkplaceJeff Fried
 

Ähnlich wie Code Wars: Database Decisions for Application Development (20)

Delegate, Automate, Dominate: Putting Graph Tech to Work for You to Unlock Hi...
Delegate, Automate, Dominate: Putting Graph Tech to Work for You to Unlock Hi...Delegate, Automate, Dominate: Putting Graph Tech to Work for You to Unlock Hi...
Delegate, Automate, Dominate: Putting Graph Tech to Work for You to Unlock Hi...
 
017 Divide and Conquer Send Forth the Microservices - NODES2022 AMERICAS Begi...
017 Divide and Conquer Send Forth the Microservices - NODES2022 AMERICAS Begi...017 Divide and Conquer Send Forth the Microservices - NODES2022 AMERICAS Begi...
017 Divide and Conquer Send Forth the Microservices - NODES2022 AMERICAS Begi...
 
Toolbelt Trifecta: Connecting to Neo4j with Java and AWS Lambda
Toolbelt Trifecta: Connecting to Neo4j with Java and AWS LambdaToolbelt Trifecta: Connecting to Neo4j with Java and AWS Lambda
Toolbelt Trifecta: Connecting to Neo4j with Java and AWS Lambda
 
Keeping User Generated Content Flexible with Neo4j - Greg Jordan @ GraphConne...
Keeping User Generated Content Flexible with Neo4j - Greg Jordan @ GraphConne...Keeping User Generated Content Flexible with Neo4j - Greg Jordan @ GraphConne...
Keeping User Generated Content Flexible with Neo4j - Greg Jordan @ GraphConne...
 
Richard Wilburn - Lean Truth
Richard Wilburn - Lean TruthRichard Wilburn - Lean Truth
Richard Wilburn - Lean Truth
 
PHP/MySQL Training Course in Delhi, India by IT People
PHP/MySQL Training Course in Delhi, India by IT PeoplePHP/MySQL Training Course in Delhi, India by IT People
PHP/MySQL Training Course in Delhi, India by IT People
 
“So Now You’re a UiPath Developer – What’s Next?” How do you Manage the Work?
“So Now You’re a UiPath Developer – What’s Next?” How do you Manage the Work?“So Now You’re a UiPath Developer – What’s Next?” How do you Manage the Work?
“So Now You’re a UiPath Developer – What’s Next?” How do you Manage the Work?
 
“So Now You’re a UiPath Developer – What’s Next?” How do you Manage the Work?
“So Now You’re a UiPath Developer – What’s Next?” How do you Manage the Work?“So Now You’re a UiPath Developer – What’s Next?” How do you Manage the Work?
“So Now You’re a UiPath Developer – What’s Next?” How do you Manage the Work?
 
14 Habits of Great SQL Developers
14 Habits of Great SQL Developers14 Habits of Great SQL Developers
14 Habits of Great SQL Developers
 
50 Shades of Fail KScope16
50 Shades of Fail KScope1650 Shades of Fail KScope16
50 Shades of Fail KScope16
 
Agile Software Development
Agile Software DevelopmentAgile Software Development
Agile Software Development
 
Synerzip Agile Software Development
Synerzip Agile Software DevelopmentSynerzip Agile Software Development
Synerzip Agile Software Development
 
(Dev) Hiram Fleitas - Data Viz & Analytics using Python and JavaScript
(Dev) Hiram Fleitas - Data Viz & Analytics using Python and JavaScript(Dev) Hiram Fleitas - Data Viz & Analytics using Python and JavaScript
(Dev) Hiram Fleitas - Data Viz & Analytics using Python and JavaScript
 
“So Now You’re a UiPath Developer – What’s Next?” How do you Manage the Work?
“So Now You’re a UiPath Developer – What’s Next?” How do you Manage the Work?“So Now You’re a UiPath Developer – What’s Next?” How do you Manage the Work?
“So Now You’re a UiPath Developer – What’s Next?” How do you Manage the Work?
 
The Un-researched Persona
The Un-researched PersonaThe Un-researched Persona
The Un-researched Persona
 
The Art Of Pair Programming
The Art Of Pair ProgrammingThe Art Of Pair Programming
The Art Of Pair Programming
 
The Great Migration: Moving Your SharePoint | Fpwebinar
The Great Migration: Moving Your SharePoint | Fpwebinar The Great Migration: Moving Your SharePoint | Fpwebinar
The Great Migration: Moving Your SharePoint | Fpwebinar
 
Best Practices in Developing Requirements for SharePoint Projects
Best Practices in Developing Requirements for SharePoint ProjectsBest Practices in Developing Requirements for SharePoint Projects
Best Practices in Developing Requirements for SharePoint Projects
 
Polyglot Persistence with MongoDB and Neo4j
Polyglot Persistence with MongoDB and Neo4jPolyglot Persistence with MongoDB and Neo4j
Polyglot Persistence with MongoDB and Neo4j
 
O365 Tools for Building a Digital Workplace
O365 Tools for Building a Digital WorkplaceO365 Tools for Building a Digital Workplace
O365 Tools for Building a Digital Workplace
 

Mehr von Neo4j

Connecting the Dots for Information Discovery.pdf
Connecting the Dots for Information Discovery.pdfConnecting the Dots for Information Discovery.pdf
Connecting the Dots for Information Discovery.pdfNeo4j
 
ISDEFE - GraphSummit Madrid - ARETA: Aviation Real-Time Emissions Token Accre...
ISDEFE - GraphSummit Madrid - ARETA: Aviation Real-Time Emissions Token Accre...ISDEFE - GraphSummit Madrid - ARETA: Aviation Real-Time Emissions Token Accre...
ISDEFE - GraphSummit Madrid - ARETA: Aviation Real-Time Emissions Token Accre...Neo4j
 
BBVA - GraphSummit Madrid - Caso de éxito en BBVA: Optimizando con grafos
BBVA - GraphSummit Madrid - Caso de éxito en BBVA: Optimizando con grafosBBVA - GraphSummit Madrid - Caso de éxito en BBVA: Optimizando con grafos
BBVA - GraphSummit Madrid - Caso de éxito en BBVA: Optimizando con grafosNeo4j
 
Graph Everywhere - Josep Taruella - Por qué Graph Data Science en tus modelos...
Graph Everywhere - Josep Taruella - Por qué Graph Data Science en tus modelos...Graph Everywhere - Josep Taruella - Por qué Graph Data Science en tus modelos...
Graph Everywhere - Josep Taruella - Por qué Graph Data Science en tus modelos...Neo4j
 
GraphSummit Madrid - Product Vision and Roadmap - Luis Salvador Neo4j
GraphSummit Madrid - Product Vision and Roadmap - Luis Salvador Neo4jGraphSummit Madrid - Product Vision and Roadmap - Luis Salvador Neo4j
GraphSummit Madrid - Product Vision and Roadmap - Luis Salvador Neo4jNeo4j
 
Neo4j_Exploring the Impact of Graph Technology on Financial Services.pdf
Neo4j_Exploring the Impact of Graph Technology on Financial Services.pdfNeo4j_Exploring the Impact of Graph Technology on Financial Services.pdf
Neo4j_Exploring the Impact of Graph Technology on Financial Services.pdfNeo4j
 
Rabobank_Exploring the Impact of Graph Technology on Financial Services.pdf
Rabobank_Exploring the Impact of Graph Technology on Financial Services.pdfRabobank_Exploring the Impact of Graph Technology on Financial Services.pdf
Rabobank_Exploring the Impact of Graph Technology on Financial Services.pdfNeo4j
 
Webinar - IA generativa e grafi Neo4j: RAG time!
Webinar - IA generativa e grafi Neo4j: RAG time!Webinar - IA generativa e grafi Neo4j: RAG time!
Webinar - IA generativa e grafi Neo4j: RAG time!Neo4j
 
IA Generativa y Grafos de Neo4j: RAG time
IA Generativa y Grafos de Neo4j: RAG timeIA Generativa y Grafos de Neo4j: RAG time
IA Generativa y Grafos de Neo4j: RAG timeNeo4j
 
Neo4j: Data Engineering for RAG (retrieval augmented generation)
Neo4j: Data Engineering for RAG (retrieval augmented generation)Neo4j: Data Engineering for RAG (retrieval augmented generation)
Neo4j: Data Engineering for RAG (retrieval augmented generation)Neo4j
 
Neo4j Graph Summit 2024 Workshop - EMEA - Breda_and_Munchen.pdf
Neo4j Graph Summit 2024 Workshop - EMEA - Breda_and_Munchen.pdfNeo4j Graph Summit 2024 Workshop - EMEA - Breda_and_Munchen.pdf
Neo4j Graph Summit 2024 Workshop - EMEA - Breda_and_Munchen.pdfNeo4j
 
Enabling GenAI Breakthroughs with Knowledge Graphs
Enabling GenAI Breakthroughs with Knowledge GraphsEnabling GenAI Breakthroughs with Knowledge Graphs
Enabling GenAI Breakthroughs with Knowledge GraphsNeo4j
 
Neo4j_Anurag Tandon_Product Vision and Roadmap.Benelux.pptx.pdf
Neo4j_Anurag Tandon_Product Vision and Roadmap.Benelux.pptx.pdfNeo4j_Anurag Tandon_Product Vision and Roadmap.Benelux.pptx.pdf
Neo4j_Anurag Tandon_Product Vision and Roadmap.Benelux.pptx.pdfNeo4j
 
Neo4j Jesus Barrasa The Art of the Possible with Graph
Neo4j Jesus Barrasa The Art of the Possible with GraphNeo4j Jesus Barrasa The Art of the Possible with Graph
Neo4j Jesus Barrasa The Art of the Possible with GraphNeo4j
 
SWIFT: Maintaining Critical Standards in the Financial Services Industry with...
SWIFT: Maintaining Critical Standards in the Financial Services Industry with...SWIFT: Maintaining Critical Standards in the Financial Services Industry with...
SWIFT: Maintaining Critical Standards in the Financial Services Industry with...Neo4j
 
Deloitte & Red Cross: Talk to your data with Knowledge-enriched Generative AI
Deloitte & Red Cross: Talk to your data with Knowledge-enriched Generative AIDeloitte & Red Cross: Talk to your data with Knowledge-enriched Generative AI
Deloitte & Red Cross: Talk to your data with Knowledge-enriched Generative AINeo4j
 
Ingka Digital: Linked Metadata by Design
Ingka Digital: Linked Metadata by DesignIngka Digital: Linked Metadata by Design
Ingka Digital: Linked Metadata by DesignNeo4j
 
Discover Neo4j Aura_ The Future of Graph Database-as-a-Service Workshop_3.13.24
Discover Neo4j Aura_ The Future of Graph Database-as-a-Service Workshop_3.13.24Discover Neo4j Aura_ The Future of Graph Database-as-a-Service Workshop_3.13.24
Discover Neo4j Aura_ The Future of Graph Database-as-a-Service Workshop_3.13.24Neo4j
 
GraphSummit Copenhagen 2024 - Neo4j Vision and Roadmap.pptx
GraphSummit Copenhagen 2024 - Neo4j Vision and Roadmap.pptxGraphSummit Copenhagen 2024 - Neo4j Vision and Roadmap.pptx
GraphSummit Copenhagen 2024 - Neo4j Vision and Roadmap.pptxNeo4j
 
Emil Eifrem at GraphSummit Copenhagen 2024 - The Art of the Possible.pptx
Emil Eifrem at GraphSummit Copenhagen 2024 - The Art of the Possible.pptxEmil Eifrem at GraphSummit Copenhagen 2024 - The Art of the Possible.pptx
Emil Eifrem at GraphSummit Copenhagen 2024 - The Art of the Possible.pptxNeo4j
 

Mehr von Neo4j (20)

Connecting the Dots for Information Discovery.pdf
Connecting the Dots for Information Discovery.pdfConnecting the Dots for Information Discovery.pdf
Connecting the Dots for Information Discovery.pdf
 
ISDEFE - GraphSummit Madrid - ARETA: Aviation Real-Time Emissions Token Accre...
ISDEFE - GraphSummit Madrid - ARETA: Aviation Real-Time Emissions Token Accre...ISDEFE - GraphSummit Madrid - ARETA: Aviation Real-Time Emissions Token Accre...
ISDEFE - GraphSummit Madrid - ARETA: Aviation Real-Time Emissions Token Accre...
 
BBVA - GraphSummit Madrid - Caso de éxito en BBVA: Optimizando con grafos
BBVA - GraphSummit Madrid - Caso de éxito en BBVA: Optimizando con grafosBBVA - GraphSummit Madrid - Caso de éxito en BBVA: Optimizando con grafos
BBVA - GraphSummit Madrid - Caso de éxito en BBVA: Optimizando con grafos
 
Graph Everywhere - Josep Taruella - Por qué Graph Data Science en tus modelos...
Graph Everywhere - Josep Taruella - Por qué Graph Data Science en tus modelos...Graph Everywhere - Josep Taruella - Por qué Graph Data Science en tus modelos...
Graph Everywhere - Josep Taruella - Por qué Graph Data Science en tus modelos...
 
GraphSummit Madrid - Product Vision and Roadmap - Luis Salvador Neo4j
GraphSummit Madrid - Product Vision and Roadmap - Luis Salvador Neo4jGraphSummit Madrid - Product Vision and Roadmap - Luis Salvador Neo4j
GraphSummit Madrid - Product Vision and Roadmap - Luis Salvador Neo4j
 
Neo4j_Exploring the Impact of Graph Technology on Financial Services.pdf
Neo4j_Exploring the Impact of Graph Technology on Financial Services.pdfNeo4j_Exploring the Impact of Graph Technology on Financial Services.pdf
Neo4j_Exploring the Impact of Graph Technology on Financial Services.pdf
 
Rabobank_Exploring the Impact of Graph Technology on Financial Services.pdf
Rabobank_Exploring the Impact of Graph Technology on Financial Services.pdfRabobank_Exploring the Impact of Graph Technology on Financial Services.pdf
Rabobank_Exploring the Impact of Graph Technology on Financial Services.pdf
 
Webinar - IA generativa e grafi Neo4j: RAG time!
Webinar - IA generativa e grafi Neo4j: RAG time!Webinar - IA generativa e grafi Neo4j: RAG time!
Webinar - IA generativa e grafi Neo4j: RAG time!
 
IA Generativa y Grafos de Neo4j: RAG time
IA Generativa y Grafos de Neo4j: RAG timeIA Generativa y Grafos de Neo4j: RAG time
IA Generativa y Grafos de Neo4j: RAG time
 
Neo4j: Data Engineering for RAG (retrieval augmented generation)
Neo4j: Data Engineering for RAG (retrieval augmented generation)Neo4j: Data Engineering for RAG (retrieval augmented generation)
Neo4j: Data Engineering for RAG (retrieval augmented generation)
 
Neo4j Graph Summit 2024 Workshop - EMEA - Breda_and_Munchen.pdf
Neo4j Graph Summit 2024 Workshop - EMEA - Breda_and_Munchen.pdfNeo4j Graph Summit 2024 Workshop - EMEA - Breda_and_Munchen.pdf
Neo4j Graph Summit 2024 Workshop - EMEA - Breda_and_Munchen.pdf
 
Enabling GenAI Breakthroughs with Knowledge Graphs
Enabling GenAI Breakthroughs with Knowledge GraphsEnabling GenAI Breakthroughs with Knowledge Graphs
Enabling GenAI Breakthroughs with Knowledge Graphs
 
Neo4j_Anurag Tandon_Product Vision and Roadmap.Benelux.pptx.pdf
Neo4j_Anurag Tandon_Product Vision and Roadmap.Benelux.pptx.pdfNeo4j_Anurag Tandon_Product Vision and Roadmap.Benelux.pptx.pdf
Neo4j_Anurag Tandon_Product Vision and Roadmap.Benelux.pptx.pdf
 
Neo4j Jesus Barrasa The Art of the Possible with Graph
Neo4j Jesus Barrasa The Art of the Possible with GraphNeo4j Jesus Barrasa The Art of the Possible with Graph
Neo4j Jesus Barrasa The Art of the Possible with Graph
 
SWIFT: Maintaining Critical Standards in the Financial Services Industry with...
SWIFT: Maintaining Critical Standards in the Financial Services Industry with...SWIFT: Maintaining Critical Standards in the Financial Services Industry with...
SWIFT: Maintaining Critical Standards in the Financial Services Industry with...
 
Deloitte & Red Cross: Talk to your data with Knowledge-enriched Generative AI
Deloitte & Red Cross: Talk to your data with Knowledge-enriched Generative AIDeloitte & Red Cross: Talk to your data with Knowledge-enriched Generative AI
Deloitte & Red Cross: Talk to your data with Knowledge-enriched Generative AI
 
Ingka Digital: Linked Metadata by Design
Ingka Digital: Linked Metadata by DesignIngka Digital: Linked Metadata by Design
Ingka Digital: Linked Metadata by Design
 
Discover Neo4j Aura_ The Future of Graph Database-as-a-Service Workshop_3.13.24
Discover Neo4j Aura_ The Future of Graph Database-as-a-Service Workshop_3.13.24Discover Neo4j Aura_ The Future of Graph Database-as-a-Service Workshop_3.13.24
Discover Neo4j Aura_ The Future of Graph Database-as-a-Service Workshop_3.13.24
 
GraphSummit Copenhagen 2024 - Neo4j Vision and Roadmap.pptx
GraphSummit Copenhagen 2024 - Neo4j Vision and Roadmap.pptxGraphSummit Copenhagen 2024 - Neo4j Vision and Roadmap.pptx
GraphSummit Copenhagen 2024 - Neo4j Vision and Roadmap.pptx
 
Emil Eifrem at GraphSummit Copenhagen 2024 - The Art of the Possible.pptx
Emil Eifrem at GraphSummit Copenhagen 2024 - The Art of the Possible.pptxEmil Eifrem at GraphSummit Copenhagen 2024 - The Art of the Possible.pptx
Emil Eifrem at GraphSummit Copenhagen 2024 - The Art of the Possible.pptx
 

Kürzlich hochgeladen

How to submit a standout Adobe Champion Application
How to submit a standout Adobe Champion ApplicationHow to submit a standout Adobe Champion Application
How to submit a standout Adobe Champion ApplicationBradBedford3
 
Effectively Troubleshoot 9 Types of OutOfMemoryError
Effectively Troubleshoot 9 Types of OutOfMemoryErrorEffectively Troubleshoot 9 Types of OutOfMemoryError
Effectively Troubleshoot 9 Types of OutOfMemoryErrorTier1 app
 
Amazon Bedrock in Action - presentation of the Bedrock's capabilities
Amazon Bedrock in Action - presentation of the Bedrock's capabilitiesAmazon Bedrock in Action - presentation of the Bedrock's capabilities
Amazon Bedrock in Action - presentation of the Bedrock's capabilitiesKrzysztofKkol1
 
VictoriaMetrics Anomaly Detection Updates: Q1 2024
VictoriaMetrics Anomaly Detection Updates: Q1 2024VictoriaMetrics Anomaly Detection Updates: Q1 2024
VictoriaMetrics Anomaly Detection Updates: Q1 2024VictoriaMetrics
 
Enhancing Supply Chain Visibility with Cargo Cloud Solutions.pdf
Enhancing Supply Chain Visibility with Cargo Cloud Solutions.pdfEnhancing Supply Chain Visibility with Cargo Cloud Solutions.pdf
Enhancing Supply Chain Visibility with Cargo Cloud Solutions.pdfRTS corp
 
Precise and Complete Requirements? An Elusive Goal
Precise and Complete Requirements? An Elusive GoalPrecise and Complete Requirements? An Elusive Goal
Precise and Complete Requirements? An Elusive GoalLionel Briand
 
Real-time Tracking and Monitoring with Cargo Cloud Solutions.pptx
Real-time Tracking and Monitoring with Cargo Cloud Solutions.pptxReal-time Tracking and Monitoring with Cargo Cloud Solutions.pptx
Real-time Tracking and Monitoring with Cargo Cloud Solutions.pptxRTS corp
 
Keeping your build tool updated in a multi repository world
Keeping your build tool updated in a multi repository worldKeeping your build tool updated in a multi repository world
Keeping your build tool updated in a multi repository worldRoberto Pérez Alcolea
 
Introduction to Firebase Workshop Slides
Introduction to Firebase Workshop SlidesIntroduction to Firebase Workshop Slides
Introduction to Firebase Workshop Slidesvaideheekore1
 
Best Angular 17 Classroom & Online training - Naresh IT
Best Angular 17 Classroom & Online training - Naresh ITBest Angular 17 Classroom & Online training - Naresh IT
Best Angular 17 Classroom & Online training - Naresh ITmanoharjgpsolutions
 
Salesforce Implementation Services PPT By ABSYZ
Salesforce Implementation Services PPT By ABSYZSalesforce Implementation Services PPT By ABSYZ
Salesforce Implementation Services PPT By ABSYZABSYZ Inc
 
Odoo 14 - eLearning Module In Odoo 14 Enterprise
Odoo 14 - eLearning Module In Odoo 14 EnterpriseOdoo 14 - eLearning Module In Odoo 14 Enterprise
Odoo 14 - eLearning Module In Odoo 14 Enterprisepreethippts
 
Strategies for using alternative queries to mitigate zero results
Strategies for using alternative queries to mitigate zero resultsStrategies for using alternative queries to mitigate zero results
Strategies for using alternative queries to mitigate zero resultsJean Silva
 
JavaLand 2024 - Going serverless with Quarkus GraalVM native images and AWS L...
JavaLand 2024 - Going serverless with Quarkus GraalVM native images and AWS L...JavaLand 2024 - Going serverless with Quarkus GraalVM native images and AWS L...
JavaLand 2024 - Going serverless with Quarkus GraalVM native images and AWS L...Bert Jan Schrijver
 
Leveraging AI for Mobile App Testing on Real Devices | Applitools + Kobiton
Leveraging AI for Mobile App Testing on Real Devices | Applitools + KobitonLeveraging AI for Mobile App Testing on Real Devices | Applitools + Kobiton
Leveraging AI for Mobile App Testing on Real Devices | Applitools + KobitonApplitools
 
SoftTeco - Software Development Company Profile
SoftTeco - Software Development Company ProfileSoftTeco - Software Development Company Profile
SoftTeco - Software Development Company Profileakrivarotava
 
VK Business Profile - provides IT solutions and Web Development
VK Business Profile - provides IT solutions and Web DevelopmentVK Business Profile - provides IT solutions and Web Development
VK Business Profile - provides IT solutions and Web Developmentvyaparkranti
 
SAM Training Session - How to use EXCEL ?
SAM Training Session - How to use EXCEL ?SAM Training Session - How to use EXCEL ?
SAM Training Session - How to use EXCEL ?Alexandre Beguel
 
OpenChain AI Study Group - Europe and Asia Recap - 2024-04-11 - Full Recording
OpenChain AI Study Group - Europe and Asia Recap - 2024-04-11 - Full RecordingOpenChain AI Study Group - Europe and Asia Recap - 2024-04-11 - Full Recording
OpenChain AI Study Group - Europe and Asia Recap - 2024-04-11 - Full RecordingShane Coughlan
 
Powering Real-Time Decisions with Continuous Data Streams
Powering Real-Time Decisions with Continuous Data StreamsPowering Real-Time Decisions with Continuous Data Streams
Powering Real-Time Decisions with Continuous Data StreamsSafe Software
 

Kürzlich hochgeladen (20)

How to submit a standout Adobe Champion Application
How to submit a standout Adobe Champion ApplicationHow to submit a standout Adobe Champion Application
How to submit a standout Adobe Champion Application
 
Effectively Troubleshoot 9 Types of OutOfMemoryError
Effectively Troubleshoot 9 Types of OutOfMemoryErrorEffectively Troubleshoot 9 Types of OutOfMemoryError
Effectively Troubleshoot 9 Types of OutOfMemoryError
 
Amazon Bedrock in Action - presentation of the Bedrock's capabilities
Amazon Bedrock in Action - presentation of the Bedrock's capabilitiesAmazon Bedrock in Action - presentation of the Bedrock's capabilities
Amazon Bedrock in Action - presentation of the Bedrock's capabilities
 
VictoriaMetrics Anomaly Detection Updates: Q1 2024
VictoriaMetrics Anomaly Detection Updates: Q1 2024VictoriaMetrics Anomaly Detection Updates: Q1 2024
VictoriaMetrics Anomaly Detection Updates: Q1 2024
 
Enhancing Supply Chain Visibility with Cargo Cloud Solutions.pdf
Enhancing Supply Chain Visibility with Cargo Cloud Solutions.pdfEnhancing Supply Chain Visibility with Cargo Cloud Solutions.pdf
Enhancing Supply Chain Visibility with Cargo Cloud Solutions.pdf
 
Precise and Complete Requirements? An Elusive Goal
Precise and Complete Requirements? An Elusive GoalPrecise and Complete Requirements? An Elusive Goal
Precise and Complete Requirements? An Elusive Goal
 
Real-time Tracking and Monitoring with Cargo Cloud Solutions.pptx
Real-time Tracking and Monitoring with Cargo Cloud Solutions.pptxReal-time Tracking and Monitoring with Cargo Cloud Solutions.pptx
Real-time Tracking and Monitoring with Cargo Cloud Solutions.pptx
 
Keeping your build tool updated in a multi repository world
Keeping your build tool updated in a multi repository worldKeeping your build tool updated in a multi repository world
Keeping your build tool updated in a multi repository world
 
Introduction to Firebase Workshop Slides
Introduction to Firebase Workshop SlidesIntroduction to Firebase Workshop Slides
Introduction to Firebase Workshop Slides
 
Best Angular 17 Classroom & Online training - Naresh IT
Best Angular 17 Classroom & Online training - Naresh ITBest Angular 17 Classroom & Online training - Naresh IT
Best Angular 17 Classroom & Online training - Naresh IT
 
Salesforce Implementation Services PPT By ABSYZ
Salesforce Implementation Services PPT By ABSYZSalesforce Implementation Services PPT By ABSYZ
Salesforce Implementation Services PPT By ABSYZ
 
Odoo 14 - eLearning Module In Odoo 14 Enterprise
Odoo 14 - eLearning Module In Odoo 14 EnterpriseOdoo 14 - eLearning Module In Odoo 14 Enterprise
Odoo 14 - eLearning Module In Odoo 14 Enterprise
 
Strategies for using alternative queries to mitigate zero results
Strategies for using alternative queries to mitigate zero resultsStrategies for using alternative queries to mitigate zero results
Strategies for using alternative queries to mitigate zero results
 
JavaLand 2024 - Going serverless with Quarkus GraalVM native images and AWS L...
JavaLand 2024 - Going serverless with Quarkus GraalVM native images and AWS L...JavaLand 2024 - Going serverless with Quarkus GraalVM native images and AWS L...
JavaLand 2024 - Going serverless with Quarkus GraalVM native images and AWS L...
 
Leveraging AI for Mobile App Testing on Real Devices | Applitools + Kobiton
Leveraging AI for Mobile App Testing on Real Devices | Applitools + KobitonLeveraging AI for Mobile App Testing on Real Devices | Applitools + Kobiton
Leveraging AI for Mobile App Testing on Real Devices | Applitools + Kobiton
 
SoftTeco - Software Development Company Profile
SoftTeco - Software Development Company ProfileSoftTeco - Software Development Company Profile
SoftTeco - Software Development Company Profile
 
VK Business Profile - provides IT solutions and Web Development
VK Business Profile - provides IT solutions and Web DevelopmentVK Business Profile - provides IT solutions and Web Development
VK Business Profile - provides IT solutions and Web Development
 
SAM Training Session - How to use EXCEL ?
SAM Training Session - How to use EXCEL ?SAM Training Session - How to use EXCEL ?
SAM Training Session - How to use EXCEL ?
 
OpenChain AI Study Group - Europe and Asia Recap - 2024-04-11 - Full Recording
OpenChain AI Study Group - Europe and Asia Recap - 2024-04-11 - Full RecordingOpenChain AI Study Group - Europe and Asia Recap - 2024-04-11 - Full Recording
OpenChain AI Study Group - Europe and Asia Recap - 2024-04-11 - Full Recording
 
Powering Real-Time Decisions with Continuous Data Streams
Powering Real-Time Decisions with Continuous Data StreamsPowering Real-Time Decisions with Continuous Data Streams
Powering Real-Time Decisions with Continuous Data Streams
 

Code Wars: Database Decisions for Application Development

  • 1. Code Wars Database Decisions for Application Development Jennifer Reif Email: jennifer.reif@neo4j.com Twitter: @JMHReif LinkedIn: linkedin.com/in/jmhreif Github: GitHub.com/JMHReif Website: jmhreif.com
  • 2. Who Am I? • Developer relations engineer at Neo4j • Developer • Blogger • Conference speaker • Continuous learner + geek Jennifer Reif Email: jennifer.reif@neo4j.com Twitter: @JMHReif LinkedIn: linkedin.com/in/jmhreif Github: GitHub.com/JMHReif Website: jmhreif.com
  • 3. Why should the database matter to us? • Long-term: • Right tool for the right job • Future maintenance/improvement e ff orts • Short-term: • Forcing data into unnatural format • Data model confusion and iterations • Complex queries to handle business questions • Data storage can impact application development!
  • 4.
  • 5. Use case - Northwind sales system
  • 6. Using Spring • Quick-start (Spring Initializr) • Reduce boilerplate (Spring Boot) • Consistent integration (Spring Data): • Annotation-based mapping for POJOs • Repository support via interface • Domain-speci fi c language queries for each https://spring.io/projects/spring-data
  • 7. Data Models Relational - MariaDB Document - MongoDB Graph - Neo4j
  • 9. Data Models Relational - MariaDB Document - MongoDB Graph - Neo4j
  • 11. Data Models Relational - MariaDB Document - MongoDB Graph - Neo4j
  • 14. Key Differences • POJOs aligning with data models • Maria: Order -> OrderedProduct <- Product • Mongo: Order { Product: [{}] } • Neo4j: Order -[INCLUDES]-> Product • @Query annotation (DSL syntax) • Maria: JPQL / SQL • Mongo: JSON-parameter / SQL • Neo4j: Cypher
  • 15. Key Differences • TL;DR - data model impacts app development • Fit data into a database that creates the… • Cleanest model • Simplest queries • Best application
  • 16. • GitHub projects: • MariaDB • Docker: github.com/JMHReif/docker-maria • Application: github.com/JMHReif/maria-code-wars • MongoDB • Docker: github.com/JMHReif/docker-mongo • Application: github.com/JMHReif/mongo-code-wars • Neo4j • Docker: github.com/JMHReif/docker-neo4j • Application: github.com/JMHReif/neo4j-code-wars • Db import fi les/scripts: github.com/JMHReif/code-wars-import-data-scripts • Spring Docs: spring.io/projects/spring-data Resources Jennifer Reif Email: jennifer.reif@neo4j.com Twitter: @JMHReif LinkedIn: linkedin.com/in/jmhreif Github: GitHub.com/JMHReif Website: jmhreif.com