SlideShare a Scribd company logo
1 of 16
Database Awareness
09 Mar 2021
@irensaltali
Who am I?
İren Saltalı
.NET Consultant @kloia
Blog : irensaltali.medium.com
Tweet : @irensaltali
LinkedIn : /in/irensaltali
GitHub : github.com/irensaltali
2
Agenda
• Why we need Database Awareness?
• Document vs Relational
• Row-based vs Column-based
• In-memory Database vs In-memory Data grids
• Graph
• Time-series
• Solr vs ElasticSearch
• Event Store
Why we need Database Awareness?
Databases directly affect our system performance, scalability, durability, consistency,
cost, and even how we code. We need to choose the database that meets our demands best. To
do that, we have to know two main topics.
• How database works (Database Awareness)
• How our system works (System Awareness)
4
Document
Unstructured
Frequent updates to the data structure
Application-level joins
Horizontal scaling
Document based data modeling
MongoDB, Apache CouchDB, Couchbase
Table
Schema
No/less updates to the data structure
Server-level joins
Vertical scaling
Relational data modeling
MSSQL, MySQL, PostgreSQL
vs
5
Document vs Relational
6
Document vs Relational – Use Cases
Document
• Content management
• Logging
• Storing third party system’s data
• Web analytics
RDMS
• Banking/Finance
• Booking
• ERP
7
Row-based vs Column-based
Name City Age
İren Ankara 34
Seren Yalova 31
Bilgehan İstanbul 25
İren Ankara 34 Seren Yalova 31 Bilgehan İstanbul 25
İren Seren Bilgehan Anlara Yalova İstanbul 34 31 25
Row-based
Column-based
Row-based vs Column-based - Write
İren Ankara 34 Seren Yalova 31 Bilgehan İstanbul 25 Doğa Ankara 2
İren Seren Bilgehan Doğa Ankara Yalova İstanbul Ankara 34 31 25 2
Row-based
Column-based
Doğa Ankara 2
New data
Row-based vs Column-based - Read
İren Ankara 34 Seren Yalova 31 Bilgehan İstanbul 25 Doğa Ankara 2
İren Seren Bilgehan Doğa Ankara Yalova İstanbul Ankara 34 31 25 2
Row-based
Column-based
Select * İren Seren Bilgehan Doğa Ankara Yalova İstanbul Ankara 34 31 25 2
Select Sum(Age) İren Seren Bilgehan Doğa Ankara Yalova İstanbul Ankara 34 31 25 2
10
IMDB vs IMDG
SQL support
No MPP
Replace RDBMS
Network Latency
Redis
No/less SQL support
Massively Parallel Processing
Can’t replace RDBMS
On same server with application
Hazelcast
vs
Graph Databases
A graph is composed of two elements: a node and a relationship.
• Nodes represent entities.
• Edges (graphs, relationships), are the lines that connect nodes
to other nodes.
• Edges can be directed or undirected.
• Edges can store properties represented by key/value pairs.
• High performance on graph-like queries.
Some graph databases: Amazon Neptune, Neo4j, OrientDB
11
image from https://aws.amazon.com/nosql/graph/
Times Series Database (TSDB)
A time series database (TSDB) is a database optimized for time-
stamped or time series data.
• Built specifically for handling metrics and events or
measurements that are time-stamped.
• Discrete characteristics from its continuous values.
• Best for server metrics, application performance monitoring,
network data, sensor data, events, clicks, trades in a market.
Some times series databases: Prometheus, Graphite, InfluxDB, Amazon Timestream
12
Solr vs ElasticSearch
13
XML, CSV, JSON, DB, Word, Pdf
DBC, CSV, XML, Tika, URL, Flat File
REST, Schemaless
Lucene Query
Span queries, Autocomplete, Faceting, Spatial/geo search
Visualisation: Banana (Port of Kibana)
Hard to manage scaling
JSON
ActiveMQ, Amazon SQS, CouchDB, DynamoDB, FileSystem, Git,
GitHub, Hazelcast, JDBC, JMS, Kafka, LDAP, MongoDB, neo4j,
OAI, RabbitMQ, Redis, RSS, Sofa, Solr, St9, Subversion, Twitter,
Wikipedia
Schemaless
Lucene Query, Query DSL
Span queries, Autocomplete, Faceting, Spatial/geo search
Visualisation: Kibana
Built for horizontal scaling
vs
Event Store
An event store databases optimized for storage of events.
• Event are not allowed to be changed.
• Optimized for writes
• Reproducibility
• Snapshots
Some event stores: IBM Db2 Event Store, EventStoreDB, NEventStore
14
Q & A
Thank you for listening.
blog.kloia.com @kloia_com
kloia.com
@irensaltali
RESOURCES MENTIONED IN
THIS SESSION WILL BE
AVAILABLE ON MY TWITTER
Sources
• https://www.digitalocean.com/community/tutorials/a-comparison-of-nosql-database-
management-systems-and-models
• https://www.flydata.com/blog/whats-unique-about-a-columnar-database/
• https://www.mongodb.com/blog/post/6-rules-of-thumb-for-mongodb-schema-design-part-1
• https://dataschool.com/data-modeling-101/row-vs-column-oriented-databases/
• https://www.youtube.com/watch?v=Vw1fCeD06YI
• https://en.wikipedia.org/wiki/Time_series_database
• https://www.influxdata.com/time-series-database/
• https://logz.io/blog/solr-vs-elasticsearch/
• https://solr-vs-elasticsearch.com/
• https://en.wikipedia.org/wiki/Event_store
• https://docs.microsoft.com/en-us/dotnet/architecture/cloud-native/relational-vs-nosql-data

More Related Content

What's hot

The Warranty Data Lake – After, Inc.
The Warranty Data Lake – After, Inc.The Warranty Data Lake – After, Inc.
The Warranty Data Lake – After, Inc.Richard Vermillion
 
Azure Lowlands: An intro to Azure Data Lake
Azure Lowlands: An intro to Azure Data LakeAzure Lowlands: An intro to Azure Data Lake
Azure Lowlands: An intro to Azure Data LakeRick van den Bosch
 
Big Data with SQL Server
Big Data with SQL ServerBig Data with SQL Server
Big Data with SQL ServerMark Kromer
 
How to use Big Data and Data Lake concept in business using Hadoop and Spark...
 How to use Big Data and Data Lake concept in business using Hadoop and Spark... How to use Big Data and Data Lake concept in business using Hadoop and Spark...
How to use Big Data and Data Lake concept in business using Hadoop and Spark...Institute of Contemporary Sciences
 
Hadoop and Hive in Enterprises
Hadoop and Hive in EnterprisesHadoop and Hive in Enterprises
Hadoop and Hive in Enterprisesmarkgrover
 
Microsoft Data Platform - What's included
Microsoft Data Platform - What's includedMicrosoft Data Platform - What's included
Microsoft Data Platform - What's includedJames Serra
 
Introduction to PolyBase
Introduction to PolyBaseIntroduction to PolyBase
Introduction to PolyBaseJames Serra
 
Demystifying data engineering
Demystifying data engineeringDemystifying data engineering
Demystifying data engineeringThang Bui (Bob)
 
Power BI for Big Data and the New Look of Big Data Solutions
Power BI for Big Data and the New Look of Big Data SolutionsPower BI for Big Data and the New Look of Big Data Solutions
Power BI for Big Data and the New Look of Big Data SolutionsJames Serra
 
Dipping Your Toes: Azure Data Lake for DBAs
Dipping Your Toes: Azure Data Lake for DBAsDipping Your Toes: Azure Data Lake for DBAs
Dipping Your Toes: Azure Data Lake for DBAsBob Pusateri
 
Hadoop vs. RDBMS for Advanced Analytics
Hadoop vs. RDBMS for Advanced AnalyticsHadoop vs. RDBMS for Advanced Analytics
Hadoop vs. RDBMS for Advanced Analyticsjoshwills
 
Integrating hadoop - Big Data TechCon 2013
Integrating hadoop - Big Data TechCon 2013Integrating hadoop - Big Data TechCon 2013
Integrating hadoop - Big Data TechCon 2013Jonathan Seidman
 
Data lake-itweekend-sharif university-vahid amiry
Data lake-itweekend-sharif university-vahid amiryData lake-itweekend-sharif university-vahid amiry
Data lake-itweekend-sharif university-vahid amirydatastack
 
Big data architectures and the data lake
Big data architectures and the data lakeBig data architectures and the data lake
Big data architectures and the data lakeJames Serra
 
Microsoft Azure Big Data Analytics
Microsoft Azure Big Data AnalyticsMicrosoft Azure Big Data Analytics
Microsoft Azure Big Data AnalyticsMark Kromer
 
Should I move my database to the cloud?
Should I move my database to the cloud?Should I move my database to the cloud?
Should I move my database to the cloud?James Serra
 
Delta Lake with Azure Databricks
Delta Lake with Azure DatabricksDelta Lake with Azure Databricks
Delta Lake with Azure DatabricksDustin Vannoy
 
Modern data warehouse
Modern data warehouseModern data warehouse
Modern data warehouseStephen Alex
 

What's hot (20)

The Warranty Data Lake – After, Inc.
The Warranty Data Lake – After, Inc.The Warranty Data Lake – After, Inc.
The Warranty Data Lake – After, Inc.
 
Azure Lowlands: An intro to Azure Data Lake
Azure Lowlands: An intro to Azure Data LakeAzure Lowlands: An intro to Azure Data Lake
Azure Lowlands: An intro to Azure Data Lake
 
Big Data with SQL Server
Big Data with SQL ServerBig Data with SQL Server
Big Data with SQL Server
 
How to use Big Data and Data Lake concept in business using Hadoop and Spark...
 How to use Big Data and Data Lake concept in business using Hadoop and Spark... How to use Big Data and Data Lake concept in business using Hadoop and Spark...
How to use Big Data and Data Lake concept in business using Hadoop and Spark...
 
Hadoop and Hive in Enterprises
Hadoop and Hive in EnterprisesHadoop and Hive in Enterprises
Hadoop and Hive in Enterprises
 
Microsoft Data Platform - What's included
Microsoft Data Platform - What's includedMicrosoft Data Platform - What's included
Microsoft Data Platform - What's included
 
Introduction to PolyBase
Introduction to PolyBaseIntroduction to PolyBase
Introduction to PolyBase
 
Demystifying data engineering
Demystifying data engineeringDemystifying data engineering
Demystifying data engineering
 
Power BI for Big Data and the New Look of Big Data Solutions
Power BI for Big Data and the New Look of Big Data SolutionsPower BI for Big Data and the New Look of Big Data Solutions
Power BI for Big Data and the New Look of Big Data Solutions
 
SQL vs NoSQL
SQL vs NoSQLSQL vs NoSQL
SQL vs NoSQL
 
Dipping Your Toes: Azure Data Lake for DBAs
Dipping Your Toes: Azure Data Lake for DBAsDipping Your Toes: Azure Data Lake for DBAs
Dipping Your Toes: Azure Data Lake for DBAs
 
Hadoop vs. RDBMS for Advanced Analytics
Hadoop vs. RDBMS for Advanced AnalyticsHadoop vs. RDBMS for Advanced Analytics
Hadoop vs. RDBMS for Advanced Analytics
 
Integrating hadoop - Big Data TechCon 2013
Integrating hadoop - Big Data TechCon 2013Integrating hadoop - Big Data TechCon 2013
Integrating hadoop - Big Data TechCon 2013
 
Data lake-itweekend-sharif university-vahid amiry
Data lake-itweekend-sharif university-vahid amiryData lake-itweekend-sharif university-vahid amiry
Data lake-itweekend-sharif university-vahid amiry
 
Data Engineering Basics
Data Engineering BasicsData Engineering Basics
Data Engineering Basics
 
Big data architectures and the data lake
Big data architectures and the data lakeBig data architectures and the data lake
Big data architectures and the data lake
 
Microsoft Azure Big Data Analytics
Microsoft Azure Big Data AnalyticsMicrosoft Azure Big Data Analytics
Microsoft Azure Big Data Analytics
 
Should I move my database to the cloud?
Should I move my database to the cloud?Should I move my database to the cloud?
Should I move my database to the cloud?
 
Delta Lake with Azure Databricks
Delta Lake with Azure DatabricksDelta Lake with Azure Databricks
Delta Lake with Azure Databricks
 
Modern data warehouse
Modern data warehouseModern data warehouse
Modern data warehouse
 

Similar to Database awareness

Relational databases vs Non-relational databases
Relational databases vs Non-relational databasesRelational databases vs Non-relational databases
Relational databases vs Non-relational databasesJames Serra
 
NOSQL- Presentation on NoSQL
NOSQL- Presentation on NoSQLNOSQL- Presentation on NoSQL
NOSQL- Presentation on NoSQLRamakant Soni
 
NOSQL in big data is the not only structure langua.pdf
NOSQL in big data is the not only structure langua.pdfNOSQL in big data is the not only structure langua.pdf
NOSQL in big data is the not only structure langua.pdfajajkhan16
 
Navigating NoSQL in cloudy skies
Navigating NoSQL in cloudy skiesNavigating NoSQL in cloudy skies
Navigating NoSQL in cloudy skiesshnkr_rmchndrn
 
Transform your DBMS to drive engagement innovation with Big Data
Transform your DBMS to drive engagement innovation with Big DataTransform your DBMS to drive engagement innovation with Big Data
Transform your DBMS to drive engagement innovation with Big DataAshnikbiz
 
NoSQLDatabases
NoSQLDatabasesNoSQLDatabases
NoSQLDatabasesAdi Challa
 
NoSQL Architecture Overview
NoSQL Architecture OverviewNoSQL Architecture Overview
NoSQL Architecture OverviewChristopher Foot
 
Graph Database and Neo4j
Graph Database and Neo4jGraph Database and Neo4j
Graph Database and Neo4jSina Khorami
 
One Size Doesn't Fit All: The New Database Revolution
One Size Doesn't Fit All: The New Database RevolutionOne Size Doesn't Fit All: The New Database Revolution
One Size Doesn't Fit All: The New Database Revolutionmark madsen
 
MinneBar 2013 - Scaling with Cassandra
MinneBar 2013 - Scaling with CassandraMinneBar 2013 - Scaling with Cassandra
MinneBar 2013 - Scaling with CassandraJeff Smoley
 
Evolution of Distributed Database Technologies in the Digital era
Evolution of Distributed Database Technologies in the Digital eraEvolution of Distributed Database Technologies in the Digital era
Evolution of Distributed Database Technologies in the Digital eraVishal Puri
 
NoSQL Data Stores in Research and Practice - ICDE 2016 Tutorial - Extended Ve...
NoSQL Data Stores in Research and Practice - ICDE 2016 Tutorial - Extended Ve...NoSQL Data Stores in Research and Practice - ICDE 2016 Tutorial - Extended Ve...
NoSQL Data Stores in Research and Practice - ICDE 2016 Tutorial - Extended Ve...Felix Gessert
 

Similar to Database awareness (20)

Relational databases vs Non-relational databases
Relational databases vs Non-relational databasesRelational databases vs Non-relational databases
Relational databases vs Non-relational databases
 
NOSQL- Presentation on NoSQL
NOSQL- Presentation on NoSQLNOSQL- Presentation on NoSQL
NOSQL- Presentation on NoSQL
 
NOSQL in big data is the not only structure langua.pdf
NOSQL in big data is the not only structure langua.pdfNOSQL in big data is the not only structure langua.pdf
NOSQL in big data is the not only structure langua.pdf
 
Navigating NoSQL in cloudy skies
Navigating NoSQL in cloudy skiesNavigating NoSQL in cloudy skies
Navigating NoSQL in cloudy skies
 
Transform your DBMS to drive engagement innovation with Big Data
Transform your DBMS to drive engagement innovation with Big DataTransform your DBMS to drive engagement innovation with Big Data
Transform your DBMS to drive engagement innovation with Big Data
 
Nosql
NosqlNosql
Nosql
 
Nosql
NosqlNosql
Nosql
 
No sql
No sqlNo sql
No sql
 
the rising no sql technology
the rising no sql technologythe rising no sql technology
the rising no sql technology
 
NoSQLDatabases
NoSQLDatabasesNoSQLDatabases
NoSQLDatabases
 
No sql database
No sql databaseNo sql database
No sql database
 
NoSQL Architecture Overview
NoSQL Architecture OverviewNoSQL Architecture Overview
NoSQL Architecture Overview
 
Presentation1
Presentation1Presentation1
Presentation1
 
Graph Database and Neo4j
Graph Database and Neo4jGraph Database and Neo4j
Graph Database and Neo4j
 
One Size Doesn't Fit All: The New Database Revolution
One Size Doesn't Fit All: The New Database RevolutionOne Size Doesn't Fit All: The New Database Revolution
One Size Doesn't Fit All: The New Database Revolution
 
No sql
No sqlNo sql
No sql
 
MinneBar 2013 - Scaling with Cassandra
MinneBar 2013 - Scaling with CassandraMinneBar 2013 - Scaling with Cassandra
MinneBar 2013 - Scaling with Cassandra
 
Evolution of Distributed Database Technologies in the Digital era
Evolution of Distributed Database Technologies in the Digital eraEvolution of Distributed Database Technologies in the Digital era
Evolution of Distributed Database Technologies in the Digital era
 
NoSQL Data Stores in Research and Practice - ICDE 2016 Tutorial - Extended Ve...
NoSQL Data Stores in Research and Practice - ICDE 2016 Tutorial - Extended Ve...NoSQL Data Stores in Research and Practice - ICDE 2016 Tutorial - Extended Ve...
NoSQL Data Stores in Research and Practice - ICDE 2016 Tutorial - Extended Ve...
 
nosql.pptx
nosql.pptxnosql.pptx
nosql.pptx
 

More from kloia

re:Invent recap - Application Modernization
re:Invent recap - Application Modernizationre:Invent recap - Application Modernization
re:Invent recap - Application Modernizationkloia
 
Isovalent-kloia Cilium Workshop
Isovalent-kloia Cilium WorkshopIsovalent-kloia Cilium Workshop
Isovalent-kloia Cilium Workshopkloia
 
Kloia - Why Microsoft Modernisation Matters
Kloia - Why Microsoft Modernisation MattersKloia - Why Microsoft Modernisation Matters
Kloia - Why Microsoft Modernisation Matterskloia
 
DotNetKonf23 - NET Modernization Problems & Solutions.pdf
DotNetKonf23 - NET Modernization Problems & Solutions.pdfDotNetKonf23 - NET Modernization Problems & Solutions.pdf
DotNetKonf23 - NET Modernization Problems & Solutions.pdfkloia
 
AWS User Group Meetup Feb2023.pptx
AWS User Group Meetup Feb2023.pptxAWS User Group Meetup Feb2023.pptx
AWS User Group Meetup Feb2023.pptxkloia
 
re:Invent Recap
re:Invent Recapre:Invent Recap
re:Invent Recapkloia
 
The New era in QA: k6
The New era in QA: k6The New era in QA: k6
The New era in QA: k6kloia
 
Etkili Blog Yazım Teknikleri - Tuğba Sertkaya
Etkili Blog Yazım Teknikleri - Tuğba SertkayaEtkili Blog Yazım Teknikleri - Tuğba Sertkaya
Etkili Blog Yazım Teknikleri - Tuğba Sertkayakloia
 
AWS re:Invent 2021 Recap by APN Ambassador
AWS re:Invent 2021 Recap by APN AmbassadorAWS re:Invent 2021 Recap by APN Ambassador
AWS re:Invent 2021 Recap by APN Ambassadorkloia
 
Camunda BPM - Said Mengi
Camunda BPM - Said MengiCamunda BPM - Said Mengi
Camunda BPM - Said Mengikloia
 
AlOps - Yetişkan Eliaçık
AlOps - Yetişkan EliaçıkAlOps - Yetişkan Eliaçık
AlOps - Yetişkan Eliaçıkkloia
 
Zaman Yönetimi - Aras Bilgen
Zaman Yönetimi - Aras Bilgen Zaman Yönetimi - Aras Bilgen
Zaman Yönetimi - Aras Bilgen kloia
 
Gravitee API Management - Ahmet AYDIN
 Gravitee API Management  -  Ahmet AYDIN Gravitee API Management  -  Ahmet AYDIN
Gravitee API Management - Ahmet AYDINkloia
 
React Bootcamp Day 2 - Yunus Demirpolat
React Bootcamp Day 2 - Yunus DemirpolatReact Bootcamp Day 2 - Yunus Demirpolat
React Bootcamp Day 2 - Yunus Demirpolatkloia
 
React Bootcamp Day 1 - Yunus Demirpolat
React Bootcamp Day 1 - Yunus DemirpolatReact Bootcamp Day 1 - Yunus Demirpolat
React Bootcamp Day 1 - Yunus Demirpolatkloia
 
Contract testing - Baran Gayretli
Contract testing - Baran Gayretli Contract testing - Baran Gayretli
Contract testing - Baran Gayretli kloia
 
Contract Testing
Contract TestingContract Testing
Contract Testingkloia
 
Using Design Methods to Establish Healthy DevOps Practices - Aras Bilgen
Using Design Methods to Establish Healthy DevOps Practices - Aras BilgenUsing Design Methods to Establish Healthy DevOps Practices - Aras Bilgen
Using Design Methods to Establish Healthy DevOps Practices - Aras Bilgenkloia
 
Kloia Quality Assurance
Kloia Quality AssuranceKloia Quality Assurance
Kloia Quality Assurancekloia
 
DevOps Turkey Test Automation with Docker and Seleniumhub
DevOps Turkey Test Automation with Docker and SeleniumhubDevOps Turkey Test Automation with Docker and Seleniumhub
DevOps Turkey Test Automation with Docker and Seleniumhubkloia
 

More from kloia (20)

re:Invent recap - Application Modernization
re:Invent recap - Application Modernizationre:Invent recap - Application Modernization
re:Invent recap - Application Modernization
 
Isovalent-kloia Cilium Workshop
Isovalent-kloia Cilium WorkshopIsovalent-kloia Cilium Workshop
Isovalent-kloia Cilium Workshop
 
Kloia - Why Microsoft Modernisation Matters
Kloia - Why Microsoft Modernisation MattersKloia - Why Microsoft Modernisation Matters
Kloia - Why Microsoft Modernisation Matters
 
DotNetKonf23 - NET Modernization Problems & Solutions.pdf
DotNetKonf23 - NET Modernization Problems & Solutions.pdfDotNetKonf23 - NET Modernization Problems & Solutions.pdf
DotNetKonf23 - NET Modernization Problems & Solutions.pdf
 
AWS User Group Meetup Feb2023.pptx
AWS User Group Meetup Feb2023.pptxAWS User Group Meetup Feb2023.pptx
AWS User Group Meetup Feb2023.pptx
 
re:Invent Recap
re:Invent Recapre:Invent Recap
re:Invent Recap
 
The New era in QA: k6
The New era in QA: k6The New era in QA: k6
The New era in QA: k6
 
Etkili Blog Yazım Teknikleri - Tuğba Sertkaya
Etkili Blog Yazım Teknikleri - Tuğba SertkayaEtkili Blog Yazım Teknikleri - Tuğba Sertkaya
Etkili Blog Yazım Teknikleri - Tuğba Sertkaya
 
AWS re:Invent 2021 Recap by APN Ambassador
AWS re:Invent 2021 Recap by APN AmbassadorAWS re:Invent 2021 Recap by APN Ambassador
AWS re:Invent 2021 Recap by APN Ambassador
 
Camunda BPM - Said Mengi
Camunda BPM - Said MengiCamunda BPM - Said Mengi
Camunda BPM - Said Mengi
 
AlOps - Yetişkan Eliaçık
AlOps - Yetişkan EliaçıkAlOps - Yetişkan Eliaçık
AlOps - Yetişkan Eliaçık
 
Zaman Yönetimi - Aras Bilgen
Zaman Yönetimi - Aras Bilgen Zaman Yönetimi - Aras Bilgen
Zaman Yönetimi - Aras Bilgen
 
Gravitee API Management - Ahmet AYDIN
 Gravitee API Management  -  Ahmet AYDIN Gravitee API Management  -  Ahmet AYDIN
Gravitee API Management - Ahmet AYDIN
 
React Bootcamp Day 2 - Yunus Demirpolat
React Bootcamp Day 2 - Yunus DemirpolatReact Bootcamp Day 2 - Yunus Demirpolat
React Bootcamp Day 2 - Yunus Demirpolat
 
React Bootcamp Day 1 - Yunus Demirpolat
React Bootcamp Day 1 - Yunus DemirpolatReact Bootcamp Day 1 - Yunus Demirpolat
React Bootcamp Day 1 - Yunus Demirpolat
 
Contract testing - Baran Gayretli
Contract testing - Baran Gayretli Contract testing - Baran Gayretli
Contract testing - Baran Gayretli
 
Contract Testing
Contract TestingContract Testing
Contract Testing
 
Using Design Methods to Establish Healthy DevOps Practices - Aras Bilgen
Using Design Methods to Establish Healthy DevOps Practices - Aras BilgenUsing Design Methods to Establish Healthy DevOps Practices - Aras Bilgen
Using Design Methods to Establish Healthy DevOps Practices - Aras Bilgen
 
Kloia Quality Assurance
Kloia Quality AssuranceKloia Quality Assurance
Kloia Quality Assurance
 
DevOps Turkey Test Automation with Docker and Seleniumhub
DevOps Turkey Test Automation with Docker and SeleniumhubDevOps Turkey Test Automation with Docker and Seleniumhub
DevOps Turkey Test Automation with Docker and Seleniumhub
 

Recently uploaded

CRM Contender Series: HubSpot vs. Salesforce
CRM Contender Series: HubSpot vs. SalesforceCRM Contender Series: HubSpot vs. Salesforce
CRM Contender Series: HubSpot vs. SalesforceBrainSell Technologies
 
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
 
PREDICTING RIVER WATER QUALITY ppt presentation
PREDICTING  RIVER  WATER QUALITY  ppt presentationPREDICTING  RIVER  WATER QUALITY  ppt presentation
PREDICTING RIVER WATER QUALITY ppt presentationvaddepallysandeep122
 
Simplifying Microservices & Apps - The art of effortless development - Meetup...
Simplifying Microservices & Apps - The art of effortless development - Meetup...Simplifying Microservices & Apps - The art of effortless development - Meetup...
Simplifying Microservices & Apps - The art of effortless development - Meetup...Rob Geurden
 
SpotFlow: Tracking Method Calls and States at Runtime
SpotFlow: Tracking Method Calls and States at RuntimeSpotFlow: Tracking Method Calls and States at Runtime
SpotFlow: Tracking Method Calls and States at Runtimeandrehoraa
 
Comparing Linux OS Image Update Models - EOSS 2024.pdf
Comparing Linux OS Image Update Models - EOSS 2024.pdfComparing Linux OS Image Update Models - EOSS 2024.pdf
Comparing Linux OS Image Update Models - EOSS 2024.pdfDrew Moseley
 
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
 
Tech Tuesday - Mastering Time Management Unlock the Power of OnePlan's Timesh...
Tech Tuesday - Mastering Time Management Unlock the Power of OnePlan's Timesh...Tech Tuesday - Mastering Time Management Unlock the Power of OnePlan's Timesh...
Tech Tuesday - Mastering Time Management Unlock the Power of OnePlan's Timesh...OnePlan Solutions
 
Cloud Data Center Network Construction - IEEE
Cloud Data Center Network Construction - IEEECloud Data Center Network Construction - IEEE
Cloud Data Center Network Construction - IEEEVICTOR MAESTRE RAMIREZ
 
Intelligent Home Wi-Fi Solutions | ThinkPalm
Intelligent Home Wi-Fi Solutions | ThinkPalmIntelligent Home Wi-Fi Solutions | ThinkPalm
Intelligent Home Wi-Fi Solutions | ThinkPalmSujith Sukumaran
 
GOING AOT WITH GRAALVM – DEVOXX GREECE.pdf
GOING AOT WITH GRAALVM – DEVOXX GREECE.pdfGOING AOT WITH GRAALVM – DEVOXX GREECE.pdf
GOING AOT WITH GRAALVM – DEVOXX GREECE.pdfAlina Yurenko
 
Balasore Best It Company|| Top 10 IT Company || Balasore Software company Odisha
Balasore Best It Company|| Top 10 IT Company || Balasore Software company OdishaBalasore Best It Company|| Top 10 IT Company || Balasore Software company Odisha
Balasore Best It Company|| Top 10 IT Company || Balasore Software company Odishasmiwainfosol
 
SensoDat: Simulation-based Sensor Dataset of Self-driving Cars
SensoDat: Simulation-based Sensor Dataset of Self-driving CarsSensoDat: Simulation-based Sensor Dataset of Self-driving Cars
SensoDat: Simulation-based Sensor Dataset of Self-driving CarsChristian Birchler
 
Alfresco TTL#157 - Troubleshooting Made Easy: Deciphering Alfresco mTLS Confi...
Alfresco TTL#157 - Troubleshooting Made Easy: Deciphering Alfresco mTLS Confi...Alfresco TTL#157 - Troubleshooting Made Easy: Deciphering Alfresco mTLS Confi...
Alfresco TTL#157 - Troubleshooting Made Easy: Deciphering Alfresco mTLS Confi...Angel Borroy López
 
Implementing Zero Trust strategy with Azure
Implementing Zero Trust strategy with AzureImplementing Zero Trust strategy with Azure
Implementing Zero Trust strategy with AzureDinusha Kumarasiri
 
Unveiling the Future: Sylius 2.0 New Features
Unveiling the Future: Sylius 2.0 New FeaturesUnveiling the Future: Sylius 2.0 New Features
Unveiling the Future: Sylius 2.0 New FeaturesŁukasz Chruściel
 
Sending Calendar Invites on SES and Calendarsnack.pdf
Sending Calendar Invites on SES and Calendarsnack.pdfSending Calendar Invites on SES and Calendarsnack.pdf
Sending Calendar Invites on SES and Calendarsnack.pdf31events.com
 
Taming Distributed Systems: Key Insights from Wix's Large-Scale Experience - ...
Taming Distributed Systems: Key Insights from Wix's Large-Scale Experience - ...Taming Distributed Systems: Key Insights from Wix's Large-Scale Experience - ...
Taming Distributed Systems: Key Insights from Wix's Large-Scale Experience - ...Natan Silnitsky
 
SuccessFactors 1H 2024 Release - Sneak-Peek by Deloitte Germany
SuccessFactors 1H 2024 Release - Sneak-Peek by Deloitte GermanySuccessFactors 1H 2024 Release - Sneak-Peek by Deloitte Germany
SuccessFactors 1H 2024 Release - Sneak-Peek by Deloitte GermanyChristoph Pohl
 
React Server Component in Next.js by Hanief Utama
React Server Component in Next.js by Hanief UtamaReact Server Component in Next.js by Hanief Utama
React Server Component in Next.js by Hanief UtamaHanief Utama
 

Recently uploaded (20)

CRM Contender Series: HubSpot vs. Salesforce
CRM Contender Series: HubSpot vs. SalesforceCRM Contender Series: HubSpot vs. Salesforce
CRM Contender Series: HubSpot vs. Salesforce
 
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
 
PREDICTING RIVER WATER QUALITY ppt presentation
PREDICTING  RIVER  WATER QUALITY  ppt presentationPREDICTING  RIVER  WATER QUALITY  ppt presentation
PREDICTING RIVER WATER QUALITY ppt presentation
 
Simplifying Microservices & Apps - The art of effortless development - Meetup...
Simplifying Microservices & Apps - The art of effortless development - Meetup...Simplifying Microservices & Apps - The art of effortless development - Meetup...
Simplifying Microservices & Apps - The art of effortless development - Meetup...
 
SpotFlow: Tracking Method Calls and States at Runtime
SpotFlow: Tracking Method Calls and States at RuntimeSpotFlow: Tracking Method Calls and States at Runtime
SpotFlow: Tracking Method Calls and States at Runtime
 
Comparing Linux OS Image Update Models - EOSS 2024.pdf
Comparing Linux OS Image Update Models - EOSS 2024.pdfComparing Linux OS Image Update Models - EOSS 2024.pdf
Comparing Linux OS Image Update Models - EOSS 2024.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
 
Tech Tuesday - Mastering Time Management Unlock the Power of OnePlan's Timesh...
Tech Tuesday - Mastering Time Management Unlock the Power of OnePlan's Timesh...Tech Tuesday - Mastering Time Management Unlock the Power of OnePlan's Timesh...
Tech Tuesday - Mastering Time Management Unlock the Power of OnePlan's Timesh...
 
Cloud Data Center Network Construction - IEEE
Cloud Data Center Network Construction - IEEECloud Data Center Network Construction - IEEE
Cloud Data Center Network Construction - IEEE
 
Intelligent Home Wi-Fi Solutions | ThinkPalm
Intelligent Home Wi-Fi Solutions | ThinkPalmIntelligent Home Wi-Fi Solutions | ThinkPalm
Intelligent Home Wi-Fi Solutions | ThinkPalm
 
GOING AOT WITH GRAALVM – DEVOXX GREECE.pdf
GOING AOT WITH GRAALVM – DEVOXX GREECE.pdfGOING AOT WITH GRAALVM – DEVOXX GREECE.pdf
GOING AOT WITH GRAALVM – DEVOXX GREECE.pdf
 
Balasore Best It Company|| Top 10 IT Company || Balasore Software company Odisha
Balasore Best It Company|| Top 10 IT Company || Balasore Software company OdishaBalasore Best It Company|| Top 10 IT Company || Balasore Software company Odisha
Balasore Best It Company|| Top 10 IT Company || Balasore Software company Odisha
 
SensoDat: Simulation-based Sensor Dataset of Self-driving Cars
SensoDat: Simulation-based Sensor Dataset of Self-driving CarsSensoDat: Simulation-based Sensor Dataset of Self-driving Cars
SensoDat: Simulation-based Sensor Dataset of Self-driving Cars
 
Alfresco TTL#157 - Troubleshooting Made Easy: Deciphering Alfresco mTLS Confi...
Alfresco TTL#157 - Troubleshooting Made Easy: Deciphering Alfresco mTLS Confi...Alfresco TTL#157 - Troubleshooting Made Easy: Deciphering Alfresco mTLS Confi...
Alfresco TTL#157 - Troubleshooting Made Easy: Deciphering Alfresco mTLS Confi...
 
Implementing Zero Trust strategy with Azure
Implementing Zero Trust strategy with AzureImplementing Zero Trust strategy with Azure
Implementing Zero Trust strategy with Azure
 
Unveiling the Future: Sylius 2.0 New Features
Unveiling the Future: Sylius 2.0 New FeaturesUnveiling the Future: Sylius 2.0 New Features
Unveiling the Future: Sylius 2.0 New Features
 
Sending Calendar Invites on SES and Calendarsnack.pdf
Sending Calendar Invites on SES and Calendarsnack.pdfSending Calendar Invites on SES and Calendarsnack.pdf
Sending Calendar Invites on SES and Calendarsnack.pdf
 
Taming Distributed Systems: Key Insights from Wix's Large-Scale Experience - ...
Taming Distributed Systems: Key Insights from Wix's Large-Scale Experience - ...Taming Distributed Systems: Key Insights from Wix's Large-Scale Experience - ...
Taming Distributed Systems: Key Insights from Wix's Large-Scale Experience - ...
 
SuccessFactors 1H 2024 Release - Sneak-Peek by Deloitte Germany
SuccessFactors 1H 2024 Release - Sneak-Peek by Deloitte GermanySuccessFactors 1H 2024 Release - Sneak-Peek by Deloitte Germany
SuccessFactors 1H 2024 Release - Sneak-Peek by Deloitte Germany
 
React Server Component in Next.js by Hanief Utama
React Server Component in Next.js by Hanief UtamaReact Server Component in Next.js by Hanief Utama
React Server Component in Next.js by Hanief Utama
 

Database awareness

  • 1. Database Awareness 09 Mar 2021 @irensaltali
  • 2. Who am I? İren Saltalı .NET Consultant @kloia Blog : irensaltali.medium.com Tweet : @irensaltali LinkedIn : /in/irensaltali GitHub : github.com/irensaltali 2
  • 3. Agenda • Why we need Database Awareness? • Document vs Relational • Row-based vs Column-based • In-memory Database vs In-memory Data grids • Graph • Time-series • Solr vs ElasticSearch • Event Store
  • 4. Why we need Database Awareness? Databases directly affect our system performance, scalability, durability, consistency, cost, and even how we code. We need to choose the database that meets our demands best. To do that, we have to know two main topics. • How database works (Database Awareness) • How our system works (System Awareness) 4
  • 5. Document Unstructured Frequent updates to the data structure Application-level joins Horizontal scaling Document based data modeling MongoDB, Apache CouchDB, Couchbase Table Schema No/less updates to the data structure Server-level joins Vertical scaling Relational data modeling MSSQL, MySQL, PostgreSQL vs 5 Document vs Relational
  • 6. 6 Document vs Relational – Use Cases Document • Content management • Logging • Storing third party system’s data • Web analytics RDMS • Banking/Finance • Booking • ERP
  • 7. 7 Row-based vs Column-based Name City Age İren Ankara 34 Seren Yalova 31 Bilgehan İstanbul 25 İren Ankara 34 Seren Yalova 31 Bilgehan İstanbul 25 İren Seren Bilgehan Anlara Yalova İstanbul 34 31 25 Row-based Column-based
  • 8. Row-based vs Column-based - Write İren Ankara 34 Seren Yalova 31 Bilgehan İstanbul 25 Doğa Ankara 2 İren Seren Bilgehan Doğa Ankara Yalova İstanbul Ankara 34 31 25 2 Row-based Column-based Doğa Ankara 2 New data
  • 9. Row-based vs Column-based - Read İren Ankara 34 Seren Yalova 31 Bilgehan İstanbul 25 Doğa Ankara 2 İren Seren Bilgehan Doğa Ankara Yalova İstanbul Ankara 34 31 25 2 Row-based Column-based Select * İren Seren Bilgehan Doğa Ankara Yalova İstanbul Ankara 34 31 25 2 Select Sum(Age) İren Seren Bilgehan Doğa Ankara Yalova İstanbul Ankara 34 31 25 2
  • 10. 10 IMDB vs IMDG SQL support No MPP Replace RDBMS Network Latency Redis No/less SQL support Massively Parallel Processing Can’t replace RDBMS On same server with application Hazelcast vs
  • 11. Graph Databases A graph is composed of two elements: a node and a relationship. • Nodes represent entities. • Edges (graphs, relationships), are the lines that connect nodes to other nodes. • Edges can be directed or undirected. • Edges can store properties represented by key/value pairs. • High performance on graph-like queries. Some graph databases: Amazon Neptune, Neo4j, OrientDB 11 image from https://aws.amazon.com/nosql/graph/
  • 12. Times Series Database (TSDB) A time series database (TSDB) is a database optimized for time- stamped or time series data. • Built specifically for handling metrics and events or measurements that are time-stamped. • Discrete characteristics from its continuous values. • Best for server metrics, application performance monitoring, network data, sensor data, events, clicks, trades in a market. Some times series databases: Prometheus, Graphite, InfluxDB, Amazon Timestream 12
  • 13. Solr vs ElasticSearch 13 XML, CSV, JSON, DB, Word, Pdf DBC, CSV, XML, Tika, URL, Flat File REST, Schemaless Lucene Query Span queries, Autocomplete, Faceting, Spatial/geo search Visualisation: Banana (Port of Kibana) Hard to manage scaling JSON ActiveMQ, Amazon SQS, CouchDB, DynamoDB, FileSystem, Git, GitHub, Hazelcast, JDBC, JMS, Kafka, LDAP, MongoDB, neo4j, OAI, RabbitMQ, Redis, RSS, Sofa, Solr, St9, Subversion, Twitter, Wikipedia Schemaless Lucene Query, Query DSL Span queries, Autocomplete, Faceting, Spatial/geo search Visualisation: Kibana Built for horizontal scaling vs
  • 14. Event Store An event store databases optimized for storage of events. • Event are not allowed to be changed. • Optimized for writes • Reproducibility • Snapshots Some event stores: IBM Db2 Event Store, EventStoreDB, NEventStore 14
  • 15. Q & A Thank you for listening. blog.kloia.com @kloia_com kloia.com @irensaltali RESOURCES MENTIONED IN THIS SESSION WILL BE AVAILABLE ON MY TWITTER
  • 16. Sources • https://www.digitalocean.com/community/tutorials/a-comparison-of-nosql-database- management-systems-and-models • https://www.flydata.com/blog/whats-unique-about-a-columnar-database/ • https://www.mongodb.com/blog/post/6-rules-of-thumb-for-mongodb-schema-design-part-1 • https://dataschool.com/data-modeling-101/row-vs-column-oriented-databases/ • https://www.youtube.com/watch?v=Vw1fCeD06YI • https://en.wikipedia.org/wiki/Time_series_database • https://www.influxdata.com/time-series-database/ • https://logz.io/blog/solr-vs-elasticsearch/ • https://solr-vs-elasticsearch.com/ • https://en.wikipedia.org/wiki/Event_store • https://docs.microsoft.com/en-us/dotnet/architecture/cloud-native/relational-vs-nosql-data