SlideShare a Scribd company logo
DEMYSTIFYING
NOSQL
The SQL Developer's Guide
Matthew Groves | Developer Advocate
2
• Go to
• pigeonhole.at/ATO2020
• Join Q&A
• "Demystifying NoSQL"
• Ask questions (anonymously if you want)
Any questions?
3Questions: pigeonhole.at/ATO2020
NoSQL?
4Questions: pigeonhole.at/ATO2020
NoSQL is just a buzzword
• Only moderately useful in discussion
• Defines what something isn't
• Not even accurate anymore
• It does NOT mean anti-SQL
01/
02/
03/
Why? NoSQL History
Choose Your Own Adventure
Summary/Next Steps
AGENDA
WHY? NOSQL
HISTORY1
7Questions: pigeonhole.at/ATO2020
• Poor ad-hoc query capability
• Low-level languages/tooling
• Lack of interoperability
Before relational
8Questions: pigeonhole.at/ATO2020
• E.F. Codd invented the relational model
• Designed to optimize for limited disk space
• "Although it is logically unnecessary to store both a
relation and some permutation of it, performance
considerations could make it advisable."
• Alpha
Before SQL: Relational Databases
9Questions: pigeonhole.at/ATO2020
• Created by Don Chamberlin & Raymond Boyce
• Designed to be English-friendly
• BCNF (Boyce-Codd Normal Form)
• "SQL" and "relational" are now synonyms
SQL
10Questions: pigeonhole.at/ATO2020
• Scaling
• Performance
• Inflexibility / Impedance mismatch
Criticisms/tradeoffs of SQL/relational
11Questions: pigeonhole.at/ATO2020
Scaling
Vertical Horizontal
12Questions: pigeonhole.at/ATO2020
Scaling
The Free Lunch is Over
(by Herb Sutter)
http://www.gotw.ca/publications/concurrency-ddj.htm
13Questions: pigeonhole.at/ATO2020
Impedance mismatch
ID Username DateCreated
1 mgroves 2019-06-13
2 agroves 2019-06-14
. . .
. . .
CartID Item Price Qty
1 hat 12.99 1
1 socks 11.99 1
2 t-shirt 15.99 1
. . . .
. . . .
public class ShoppingCart
{
public int Id;
public string Username;
public List<Items> Items;
}
ShoppingCart
ShoppingCartItems
14Questions: pigeonhole.at/ATO2020
Inflexibility
Billing
ConnectionsPurchases
Contacts
Customer
15Questions: pigeonhole.at/ATO2020
A relational database may be…
Disclaimer!
CHOOSE YOUR
OWN ADVENTURE2
17Questions: pigeonhole.at/ATO2020
You're in a maze of twisty little passages, all alike
• Types: Key/value, Document, Graph,
Wide column
• Data migration / synchronization
• Scaling / high availability
• ACID / transactions
• Mobile
• Kubernetes
• Use Cases
• JSON in Postgres/MySQL/etc
• Something else I didn't think of
• Why don't you demo something
already?
• Modeling: Document, Graph, Key/value,
Wide table
• Schema (or lack thereof)
• Access Patterns: Key/value, Query,
Search
• Performance
• Cloud / DBaaS / on-prem
• Getting started
• Options / vendors
• Security
• Summary
18Questions: pigeonhole.at/ATO2020
Key/Value
KEY1 { type: “json” }
KEY2 <data type=“xml”></data>
KEY3 Lorem ipsum
… 00100101000100101
KEYn
< Back
19Questions: pigeonhole.at/ATO2020
Document Database
key: person_5209
{
"name": "Matt",
"email": "me@mgroves.com",
"favoriteFoods": [
"pizza",
"cheesecake",
"donuts"
]
}
key: person_5210
{
"name": "Alice",
"email": "alice@example.org",
"age": 29,
"favoriteFoods": [
"tofu",
"quinoa",
"Funyuns"
]
}
< Back
20Questions: pigeonhole.at/ATO2020
Graph
< Back
21Questions: pigeonhole.at/ATO2020
Wide Table
user_id name favoriteFoods age
5209 Matt ["pizza","cheesecake","donuts"]
5210 Alice ["tofu","quinoa","Funyuns"] 29
< Back
22Questions: pigeonhole.at/ATO2020
Migration/synchronization
23Questions: pigeonhole.at/ATO2020
Migration/synchronization
Relational
Financial
records
User
Profiles
Fraud
detection
Search
engine
24Questions: pigeonhole.at/ATO2020
Migration/synchronization
DocumentsRelational
Financial
records
Fraud
detection
User
Profiles
Search
engine
25Questions: pigeonhole.at/ATO2020
Migration/synchronization
< Back
26Questions: pigeonhole.at/ATO2020
Scaling: primary/secondary (write)
primary
secondaries
DATA
client
DATA
DATA
27Questions: pigeonhole.at/ATO2020
Scaling: primary/secondary (read)
primary
secondaries
DATA
client
28Questions: pigeonhole.at/ATO2020
Scaling: primary/secondary (failover)
primary
secondaries
29Questions: pigeonhole.at/ATO2020
Scaling: shared nothing (write)
DATA1
client
DATA1
DATA1
MAP
MAP (cache)
DATA2
DATA2
DATA2
30Questions: pigeonhole.at/ATO2020
Scaling: shared nothing (read)
DATA
client
MAP
MAP (cache)
31Questions: pigeonhole.at/ATO2020
Scaling: shared nothing (failover)
DATA
DATA
DATA
DATA
< Back
32Questions: pigeonhole.at/ATO2020
ACID/transactions
1 row
3 rows
33Questions: pigeonhole.at/ATO2020
Naïve NoSQL version
// document 1
{
"user": "Matthew Groves",
"dateCreated": "2018-03-22T13:57:31.2311892-04:00",
}
// document 2
{ "name": "widget", "price": 19.99, "quantity": 2, "cart": 1}
// document 3
{ "name": "sprocket", "price": 17.89, "quantity": 1, "cart": 1}
// document 4
{ "name": "doodad", "price": 20.99, "quantity": 5, "cart": 1}
34Questions: pigeonhole.at/ATO2020
ACID/transactions
{
"user": "Matthew Groves",
"dateCreated": "2018-03-22T13:57:31.2311892-04:00",
"items": [
{ "name": "widget", "price": 19.99, "quantity": 2},
{ "name": "sprocket", "price": 17.89, "quantity": 1},
{ "name": "doodad", "price": 20.99, "quantity": 5}
]
}
35Questions: pigeonhole.at/ATO2020
ACID/transactions
< Back
36Questions: pigeonhole.at/ATO2020
Mobile: Local
{
"user": "Matthew Groves",
"dateCreated": "2018-03-22T13:57:31.2311892-04:00",
"items": [
{ "name": "widget", "price": 19.99, "quantity": 2},
{ "name": "sprocket", "price": 17.89, "quantity": 1},
{ "name": "doodad", "price": 20.99, "quantity": 5}
]
}
37Questions: pigeonhole.at/ATO2020
Mobile: Sync
{
"user": "Matthew Groves",
"dateCreated": "2018-03-22T13:57:31.2311892-04:00",
"items": [
{ "name": "widget", "price": 19.99, "quantity": 2},
{ "name": "sprocket", "price": 17.89, "quantity": 1},
{ "name": "doodad", "price": 20.99, "quantity": 5}
]
}
{
"user": "Matthew Groves",
"dateCreated": "2018-03-22T13:57:31.2311892-04:00",
"items": [
{ "name": "widget", "price": 19.99, "quantity": 2},
{ "name": "sprocket", "price": 17.89, "quantity": 1},
{ "name": "doodad", "price": 20.99, "quantity": 5}
]
}
< Back
38Questions: pigeonhole.at/ATO2020
Kubernetes
39Questions: pigeonhole.at/ATO2020
Kubernetes in the Cloud
GKE
< Back
40Questions: pigeonhole.at/ATO2020
Use Cases
• Caching
• Session
• User profile
• Catalog
• Content management
• Personalization
• Customer 360
• IoT
• Householding
• Mainframe offloading
• Communication
• Gaming
• Advertising
• Travel booking/reservations
• Loyalty programs
• Fraud monitoring
• Social media
• Finance
• E-Commerce
• Inventory
< Back
41Questions: pigeonhole.at/ATO2020
Is Postgres the new NoSQL?
ID Name Email Preferences
801 Matt me@mgroves.com {
"language" : "en",
"timeZone" : "EDT",
"theme": "Dark"
}
802 Alice alice@example.org {
"language" : "sp",
"timeZone" : "PDT",
"theme": "Light"
}
803 Bob bob@example.org {
"language" : "en"
}
… … … …
JSON_OBJECT()
JSON_OBJECTAGG()
JSON_ARRAY()
JSON_ARRAYAGG()
… etc …
42Questions: pigeonhole.at/ATO2020
Is Postgres the new NoSQL?
43Questions: pigeonhole.at/ATO2020
Is Postgres the new NoSQL?
44Questions: pigeonhole.at/ATO2020
Is Postgres the new NoSQL?
• Complete analysis and opinion:
https://blog.couchbase.com/postgres-
jsonb-and-nosql/
• Querying limits
• Indexing
• Tooling
• Documentation
• Don Chamberlain (co-creator of SQL)
weighs in on SQL 2016 vs SQL++:
http://bit.ly/comparingSql
45Questions: pigeonhole.at/ATO2020
Is Postgres the new NoSQL?
< Back
46Questions: pigeonhole.at/ATO2020
Data Modeling: Relational
47Questions: pigeonhole.at/ATO2020
Data Modeling: Document
{
"user": "Matthew Groves",
"items": [
{ "name": "widget", "price": 19.99, "quantity": 2},
{ "name": "sprocket", "price": 17.89, "quantity": 1},
{ "name": "doodad", "price": 20.99, "quantity": 5}
]
}
48Questions: pigeonhole.at/ATO2020
Data Modeling: Document
{
"user": "Matthew Groves",
"blueCheckmark": false
}
{
"userId" : "user::802",
"text" : "Just signed up for twitter, it's pretty cool!",
"dtTweeted" : "2019-08-10"
}
{
"userId" : "user::802",
"text" : "Hmm, I'm having my doubts about twitter",
"dtTweeted" : "2019-08-11"
}
{
"userId" : "user::802",
"text" : "Twitter has ruined my life!",
"dtTweeted" : "2019-08-12"
}
< Back
49Questions: pigeonhole.at/ATO2020
Data Modeling: Graph
https://neo4j.com/blog/data-modeling-basics/
50Questions: pigeonhole.at/ATO2020
Data Modeling: Graph
https://neo4j.com/blog/data-modeling-basics/
51Questions: pigeonhole.at/ATO2020
Data Modeling: Relational
https://neo4j.com/blog/data-modeling-basics/
52Questions: pigeonhole.at/ATO2020
Data Modeling: Relation(al) vs Relation(ship)
< Back
53Questions: pigeonhole.at/ATO2020
Data Modeling: Wide table
Relational Wide table
http://bit.ly/cassandraModeling
< Back
54Questions: pigeonhole.at/ATO2020
Data Modeling: Key/Value
Ideas for creating keys:
• Natural
• Human readable
• Deterministic (compound key)
• Semantic
• Unique/random
Example design for a blog:
• author::matt
• author::matt::blog
• blog::csharp_9_features
• blog::csharp_9_features::comments
< Back
55Questions: pigeonhole.at/ATO2020
Schema, or lack thereof
{
"name" : "Matt",
"isVerified": false,
"salary" : 50000
}
{
"name" : "Alice",
"isVerified": true,
"salary" : 100000,
"favoriteFood" : "Funyunns"
}
document 1
document 2
{
"name" : "Bob",
"isVerified": false,
"salaryUSD": 100000
}
document 3
56Questions: pigeonhole.at/ATO2020
Schema, or lack thereof
57Questions: pigeonhole.at/ATO2020
Can I live without schema enforcement?
58Questions: pigeonhole.at/ATO2020
Schema, or lack thereof
59Questions: pigeonhole.at/ATO2020
Schema Validation in NoSQL
< Back
60Questions: pigeonhole.at/ATO2020
Access pattern: key/value
Get
Set (insert)
Replace (update)
Upsert
Delete
< Back
61Questions: pigeonhole.at/ATO2020
Access pattern: Query (map/reduce)
62Questions: pigeonhole.at/ATO2020
Access pattern: Declarative Query
MongoDB query 
 DynamoDB query
CouchDB query ("Mango") 
63Questions: pigeonhole.at/ATO2020
Access Pattern: SQL++ (SQL for JSON)
Couchbase (N1QL) 
 CosmosDB SQL
PartiQL 
64Questions: pigeonhole.at/ATO2020
Access pattern: CQL
65Questions: pigeonhole.at/ATO2020
Access pattern: CQL
66Questions: pigeonhole.at/ATO2020
Access pattern: CQL
67Questions: pigeonhole.at/ATO2020
Access pattern: Cypher/Gremlin
Gremlin
(CosmosDB) 
 Cypher (Neo4j)
< Back
68Questions: pigeonhole.at/ATO2020
Access Patterns: Search (Full Text Search)
 ElasticSearch
Couchbase (FTS) 
< Back
69Questions: pigeonhole.at/ATO2020
Performance: Benchmarks
http://showfast.sc.couchbase.com/
70Questions: pigeonhole.at/ATO2020
Performance: "Benchmarks"
• LOSERS
• CHUMPS
• US, OF COURSE
71Questions: pigeonhole.at/ATO2020
Performance: Now what?
72Questions: pigeonhole.at/ATO2020
Performance: Architecture
< Back
73Questions: pigeonhole.at/ATO2020
• Cloud
• DBaaS – Database as a Service
• K8S service
• VM
• On-premises
• K8S cluster
• VM
• Bare metal
Cloud / DBaaS / on-premises
74Questions: pigeonhole.at/ATO2020
Cloud / DBaaS / on-premises
Database DBaaS K8S operator VM/bare
Elasticsearch ✔️ ✔️ ✔️
MongoDB ✔️ ✔️ ✔️
Redis ✔️ alpha ✔️
Cassandra ✔️ ❌* ✔️
Microsoft Access 😕 😕 😕
DynamoDB ✔️ ❌ ❌
CosmosDB ✔️ ❌ ❌
Couchbase ✔️ ✔️ ✔️
Neo4j ✔️ ❌ ✔️
< Back
75Questions: pigeonhole.at/ATO2020
Create
Read
Update
Delete
CRUD
76Questions: pigeonhole.at/ATO2020
Getting Started
77Questions: pigeonhole.at/ATO2020
http://bit.ly/proofconcept
Proof of Concept
< Back
78Questions: pigeonhole.at/ATO2020
Document Database
79Questions: pigeonhole.at/ATO2020
Key/value
80Questions: pigeonhole.at/ATO2020
Graph
81Questions: pigeonhole.at/ATO2020
Wide table
< Back
82Questions: pigeonhole.at/ATO2020
Security: Don't Panic
83Questions: pigeonhole.at/ATO2020
Security: I said don't panic!
http://www.theregister.co.uk/2017/01/09/mongodb/
https://www.itworld.com/article/3115247/fairware-ransomware-infects-servers-through-exposed-redis-
instances.html
84Questions: pigeonhole.at/ATO2020
Security: I said don't panic!
http://www.zdnet.com/article/elasticsearch-ransomware-attacks-now-number-in-the-
thousands/
https://www.zdnet.com/google-amp/article/unsecured-mongodb-databases-expose-kremlins-backdoor-into-russian-businesses/
85Questions: pigeonhole.at/ATO2020
Security: Unsafe by default?
< Back
86Questions: pigeonhole.at/ATO2020
Something else I didn't think of
< Back
SUMMARY
RESOURCES
NEXT STEPS
3
88Questions: pigeonhole.at/ATO2020
It all started with scaling…
Vertical Horizontal
89Questions: pigeonhole.at/ATO2020
NoSQL is a lousy buzzword
90Questions: pigeonhole.at/ATO2020
Think about the "why"
91Questions: pigeonhole.at/ATO2020
@mgroves
twitch.tv/matthewdgroves
matthew.groves@couchbase.com
Contact Me!
THANK YOU

More Related Content

PPTX
Don't Drop ACID - Data Love - April 2021
PPTX
Don't Drop ACID (July 2021)
PPTX
Agile Data Warehousing
PDF
Kyle Kingsbury Talks about the Jepsen Test: What VoltDB Learned About Data Ac...
PPTX
Agile Data Warehousing
PDF
Acting on Real-time Behavior: How Peak Games Won Transactions
PDF
Back2 basics - A Day In The Life Of An Oracle Analytics Query
PPTX
Introduction to SQL++ for Big Data: Same Language, More Power
Don't Drop ACID - Data Love - April 2021
Don't Drop ACID (July 2021)
Agile Data Warehousing
Kyle Kingsbury Talks about the Jepsen Test: What VoltDB Learned About Data Ac...
Agile Data Warehousing
Acting on Real-time Behavior: How Peak Games Won Transactions
Back2 basics - A Day In The Life Of An Oracle Analytics Query
Introduction to SQL++ for Big Data: Same Language, More Power

What's hot (20)

PDF
Stored Procedure Superpowers: A Developer’s Guide
PDF
Framing the Argument: How to Scale Faster with NoSQL
PPTX
SQL To NoSQL - Top 6 Questions Before Making The Move
PDF
The Modern Data Team for the Modern Data Stack: dbt and the Role of the Analy...
PPTX
Blockchain for the DBA and Data Professional
PPTX
Introduction to Neo4j and .Net
PDF
Mike Stonebraker on Designing An Architecture For Real-time Event Processing
PDF
Full Stack Graph in the Cloud
PPTX
The Path to Truly Understanding Your MongoDB Data
PDF
Prototyping like it is 2022
PPTX
Siligong.Data - May 2021 - Transforming your analytics workflow with dbt
PDF
Polyglot Persistence vs Multi-Model Databases
PPTX
Solving Your Backup Needs Using Ops Manager, Cloud Manager and Atlas
PDF
Getting 100B Metrics to Disk
PPTX
Advanced Schema Design Patterns
PPTX
Neo4j Import Webinar
PDF
O365Engage17 - Defence against the dark (cloud) arts azure security deep dive
PDF
How to Join the "1M JIRA Issues" Club
PDF
DEV03 - How Watson, Bluemix, Cloudant, and XPages Can Work Together In A Real...
PDF
How to Build Cloud-based Microservice Environments with Docker and VoltDB
Stored Procedure Superpowers: A Developer’s Guide
Framing the Argument: How to Scale Faster with NoSQL
SQL To NoSQL - Top 6 Questions Before Making The Move
The Modern Data Team for the Modern Data Stack: dbt and the Role of the Analy...
Blockchain for the DBA and Data Professional
Introduction to Neo4j and .Net
Mike Stonebraker on Designing An Architecture For Real-time Event Processing
Full Stack Graph in the Cloud
The Path to Truly Understanding Your MongoDB Data
Prototyping like it is 2022
Siligong.Data - May 2021 - Transforming your analytics workflow with dbt
Polyglot Persistence vs Multi-Model Databases
Solving Your Backup Needs Using Ops Manager, Cloud Manager and Atlas
Getting 100B Metrics to Disk
Advanced Schema Design Patterns
Neo4j Import Webinar
O365Engage17 - Defence against the dark (cloud) arts azure security deep dive
How to Join the "1M JIRA Issues" Club
DEV03 - How Watson, Bluemix, Cloudant, and XPages Can Work Together In A Real...
How to Build Cloud-based Microservice Environments with Docker and VoltDB
Ad

Similar to Demystifying NoSQL - All Things Open - October 2020 (20)

PDF
PostgreSQL, your NoSQL database
PDF
Pg no sql_beatemjoinem_v10
PDF
Postgres vs Mongo / Олег Бартунов (Postgres Professional)
PPTX
2018 05 08_biological_databases_no_sql
PDF
NoSQL Now: Postgres - The NoSQL Cake You Can Eat
PDF
Slide presentation pycassa_upload
PPT
No sql or Not only SQL
PPT
The NoSQL Way in Postgres
 
PDF
NoSQL on ACID - Meet Unstructured Postgres
 
PDF
No sql way_in_pg
PDF
Webscale PostgreSQL - JSONB and Horizontal Scaling Strategies
PDF
Non-Relational Postgres
 
PPTX
gayathrinosql.pptx
PDF
EDB NoSQL German Webinar 2015
 
PDF
NoSql and it's introduction features-Unit-1.pdf
PDF
RivieraJUG - MySQL 8.0 - What's new for developers.pdf
PPT
2. Lecture2_NOSQL_KeyValue.ppt
PPTX
When to no sql and when to know sql javaone
PDF
Postgres: The NoSQL Cake You Can Eat
 
PDF
NOsql Presentation.pdf
PostgreSQL, your NoSQL database
Pg no sql_beatemjoinem_v10
Postgres vs Mongo / Олег Бартунов (Postgres Professional)
2018 05 08_biological_databases_no_sql
NoSQL Now: Postgres - The NoSQL Cake You Can Eat
Slide presentation pycassa_upload
No sql or Not only SQL
The NoSQL Way in Postgres
 
NoSQL on ACID - Meet Unstructured Postgres
 
No sql way_in_pg
Webscale PostgreSQL - JSONB and Horizontal Scaling Strategies
Non-Relational Postgres
 
gayathrinosql.pptx
EDB NoSQL German Webinar 2015
 
NoSql and it's introduction features-Unit-1.pdf
RivieraJUG - MySQL 8.0 - What's new for developers.pdf
2. Lecture2_NOSQL_KeyValue.ppt
When to no sql and when to know sql javaone
Postgres: The NoSQL Cake You Can Eat
 
NOsql Presentation.pdf
Ad

More from Matthew Groves (20)

PPTX
CREAM - That Conference Austin - January 2024.pptx
PPTX
FluentMigrator - Dayton .NET - July 2023
PPTX
Cache Rules Everything Around Me - DevIntersection - December 2022
PPTX
Putting the SQL Back in NoSQL - October 2022 - All Things Open
PPTX
Cache Rules Everything Around Me - Momentum - October 2022.pptx
PPTX
Autonomous Microservices - Manning - July 2020
PPTX
CONDG April 23 2020 - Baskar Rao - GraphQL
PPTX
JSON Data Modeling - GDG Indy - April 2020
PPTX
Background Tasks Without a Separate Service: Hangfire for ASP.NET - KCDC - Ju...
PPTX
Intro to SQL++ - Detroit Tech Watch - June 2019
PPTX
Autonomous Microservices - CodeMash - January 2019
PPTX
5 Popular Choices for NoSQL on a Microsoft Platform - Tulsa - July 2018
PPTX
JSON Data Modeling - July 2018 - Tulsa Techfest
PPTX
5 NoSQL Options - Toronto - May 2018
PPTX
Full stack development with node and NoSQL - All Things Open - October 2017
PPTX
5 Popular Choices for NoSQL on a Microsoft Platform - All Things Open - Octob...
PPTX
I Have a NoSQL toaster - DC - August 2017
PPTX
Querying NoSQL with SQL - KCDC - August 2017
PPTX
I Have a NoSQL Toaster - Troy .NET User Group - July 2017
PPTX
Querying NoSQL with SQL - MIGANG - July 2017
CREAM - That Conference Austin - January 2024.pptx
FluentMigrator - Dayton .NET - July 2023
Cache Rules Everything Around Me - DevIntersection - December 2022
Putting the SQL Back in NoSQL - October 2022 - All Things Open
Cache Rules Everything Around Me - Momentum - October 2022.pptx
Autonomous Microservices - Manning - July 2020
CONDG April 23 2020 - Baskar Rao - GraphQL
JSON Data Modeling - GDG Indy - April 2020
Background Tasks Without a Separate Service: Hangfire for ASP.NET - KCDC - Ju...
Intro to SQL++ - Detroit Tech Watch - June 2019
Autonomous Microservices - CodeMash - January 2019
5 Popular Choices for NoSQL on a Microsoft Platform - Tulsa - July 2018
JSON Data Modeling - July 2018 - Tulsa Techfest
5 NoSQL Options - Toronto - May 2018
Full stack development with node and NoSQL - All Things Open - October 2017
5 Popular Choices for NoSQL on a Microsoft Platform - All Things Open - Octob...
I Have a NoSQL toaster - DC - August 2017
Querying NoSQL with SQL - KCDC - August 2017
I Have a NoSQL Toaster - Troy .NET User Group - July 2017
Querying NoSQL with SQL - MIGANG - July 2017

Recently uploaded (20)

PDF
Machine learning based COVID-19 study performance prediction
PPT
Teaching material agriculture food technology
PDF
Architecting across the Boundaries of two Complex Domains - Healthcare & Tech...
PPTX
VMware vSphere Foundation How to Sell Presentation-Ver1.4-2-14-2024.pptx
PDF
Advanced methodologies resolving dimensionality complications for autism neur...
PDF
Approach and Philosophy of On baking technology
DOCX
The AUB Centre for AI in Media Proposal.docx
PDF
NewMind AI Weekly Chronicles - August'25 Week I
PDF
Review of recent advances in non-invasive hemoglobin estimation
PDF
Diabetes mellitus diagnosis method based random forest with bat algorithm
PDF
7 ChatGPT Prompts to Help You Define Your Ideal Customer Profile.pdf
PDF
Electronic commerce courselecture one. Pdf
PDF
Empathic Computing: Creating Shared Understanding
PPTX
Big Data Technologies - Introduction.pptx
PDF
Reach Out and Touch Someone: Haptics and Empathic Computing
PDF
Encapsulation theory and applications.pdf
PPTX
Effective Security Operations Center (SOC) A Modern, Strategic, and Threat-In...
PDF
Agricultural_Statistics_at_a_Glance_2022_0.pdf
PDF
NewMind AI Monthly Chronicles - July 2025
PDF
Blue Purple Modern Animated Computer Science Presentation.pdf.pdf
Machine learning based COVID-19 study performance prediction
Teaching material agriculture food technology
Architecting across the Boundaries of two Complex Domains - Healthcare & Tech...
VMware vSphere Foundation How to Sell Presentation-Ver1.4-2-14-2024.pptx
Advanced methodologies resolving dimensionality complications for autism neur...
Approach and Philosophy of On baking technology
The AUB Centre for AI in Media Proposal.docx
NewMind AI Weekly Chronicles - August'25 Week I
Review of recent advances in non-invasive hemoglobin estimation
Diabetes mellitus diagnosis method based random forest with bat algorithm
7 ChatGPT Prompts to Help You Define Your Ideal Customer Profile.pdf
Electronic commerce courselecture one. Pdf
Empathic Computing: Creating Shared Understanding
Big Data Technologies - Introduction.pptx
Reach Out and Touch Someone: Haptics and Empathic Computing
Encapsulation theory and applications.pdf
Effective Security Operations Center (SOC) A Modern, Strategic, and Threat-In...
Agricultural_Statistics_at_a_Glance_2022_0.pdf
NewMind AI Monthly Chronicles - July 2025
Blue Purple Modern Animated Computer Science Presentation.pdf.pdf

Demystifying NoSQL - All Things Open - October 2020