eleks summer school 2012: .net 09 - databases
DESCRIPTION
"Databases" lecture @ ELEKS Summer School 2012 (Jul 2012)TRANSCRIPT
![Page 2: ELEKS Summer School 2012: .NET 09 - Databases](https://reader035.vdocuments.site/reader035/viewer/2022070303/54b224804a7959fc428b4636/html5/thumbnails/2.jpg)
Why do we need databases?
Summer School 2012
Try answering this question:
Why do we need computers?
???
![Page 3: ELEKS Summer School 2012: .NET 09 - Databases](https://reader035.vdocuments.site/reader035/viewer/2022070303/54b224804a7959fc428b4636/html5/thumbnails/3.jpg)
Why do we need databases?
Summer School 2012
Computer Science
Is it a science?Is it about computers?
“Datalogy” — Peter Naur, 1961
![Page 4: ELEKS Summer School 2012: .NET 09 - Databases](https://reader035.vdocuments.site/reader035/viewer/2022070303/54b224804a7959fc428b4636/html5/thumbnails/4.jpg)
Navigational databases (1960-s)
Summer School 2012
![Page 5: ELEKS Summer School 2012: .NET 09 - Databases](https://reader035.vdocuments.site/reader035/viewer/2022070303/54b224804a7959fc428b4636/html5/thumbnails/5.jpg)
Relational databases (1970-s)
Summer School 2012
![Page 6: ELEKS Summer School 2012: .NET 09 - Databases](https://reader035.vdocuments.site/reader035/viewer/2022070303/54b224804a7959fc428b4636/html5/thumbnails/6.jpg)
Relational Algebra 101
Summer School 2012
Set Union Natural Join
Set Intersection Equi-Join
Cartesian Product Semi-Join
Projection Anti-Join
Selection Division
Rename Outer Join
![Page 7: ELEKS Summer School 2012: .NET 09 - Databases](https://reader035.vdocuments.site/reader035/viewer/2022070303/54b224804a7959fc428b4636/html5/thumbnails/7.jpg)
Entity Relationship & (De)Normalization
Summer School 2012
• One-to-one• One-to-many• Many-to-many
Normal Forms
• 1NF• 2NF• 3NF• BCNF
• 4NF• 5NF• DKNF• 6NF
Association Cardinality
![Page 8: ELEKS Summer School 2012: .NET 09 - Databases](https://reader035.vdocuments.site/reader035/viewer/2022070303/54b224804a7959fc428b4636/html5/thumbnails/8.jpg)
Structured Query Language (SQL)
Summer School 2012
![Page 9: ELEKS Summer School 2012: .NET 09 - Databases](https://reader035.vdocuments.site/reader035/viewer/2022070303/54b224804a7959fc428b4636/html5/thumbnails/9.jpg)
Storage: B-Tree, Indexing
Summer School 2012
![Page 10: ELEKS Summer School 2012: .NET 09 - Databases](https://reader035.vdocuments.site/reader035/viewer/2022070303/54b224804a7959fc428b4636/html5/thumbnails/10.jpg)
Database as a Concurrent Storage
Summer School 2012
A Atomicity
C Consistency
I Isolation
D Durability
Although transactions can have different isolation levels!
Lower levels can improve performance, but with a price (side effects)
Transaction Properties (“ACID”)
![Page 11: ELEKS Summer School 2012: .NET 09 - Databases](https://reader035.vdocuments.site/reader035/viewer/2022070303/54b224804a7959fc428b4636/html5/thumbnails/11.jpg)
Relational DBMS Products
Summer School 2012
![Page 12: ELEKS Summer School 2012: .NET 09 - Databases](https://reader035.vdocuments.site/reader035/viewer/2022070303/54b224804a7959fc428b4636/html5/thumbnails/12.jpg)
Object-Relational Mapping (ORM)
![Page 13: ELEKS Summer School 2012: .NET 09 - Databases](https://reader035.vdocuments.site/reader035/viewer/2022070303/54b224804a7959fc428b4636/html5/thumbnails/13.jpg)
Object-Relational Mapping (ORM)
![Page 14: ELEKS Summer School 2012: .NET 09 - Databases](https://reader035.vdocuments.site/reader035/viewer/2022070303/54b224804a7959fc428b4636/html5/thumbnails/14.jpg)
ORM: Example (Entity Framework)
![Page 15: ELEKS Summer School 2012: .NET 09 - Databases](https://reader035.vdocuments.site/reader035/viewer/2022070303/54b224804a7959fc428b4636/html5/thumbnails/15.jpg)
ORM: Design Approaches
Database First
Model First
Code First
![Page 16: ELEKS Summer School 2012: .NET 09 - Databases](https://reader035.vdocuments.site/reader035/viewer/2022070303/54b224804a7959fc428b4636/html5/thumbnails/16.jpg)
Does life exist beyond RDBMS?
![Page 17: ELEKS Summer School 2012: .NET 09 - Databases](https://reader035.vdocuments.site/reader035/viewer/2022070303/54b224804a7959fc428b4636/html5/thumbnails/17.jpg)
Multidimensional Data
![Page 18: ELEKS Summer School 2012: .NET 09 - Databases](https://reader035.vdocuments.site/reader035/viewer/2022070303/54b224804a7959fc428b4636/html5/thumbnails/18.jpg)
• Data Analysis• Performance Measurement• Enterprise Reporting• Knowledge Management• Data Mining
Business Intelligence
![Page 19: ELEKS Summer School 2012: .NET 09 - Databases](https://reader035.vdocuments.site/reader035/viewer/2022070303/54b224804a7959fc428b4636/html5/thumbnails/19.jpg)
NoSQL Databases
Summer School 2012
Key-Value Store Document Store Multivalue Store
Graph Store Object Database RDF Database
![Page 20: ELEKS Summer School 2012: .NET 09 - Databases](https://reader035.vdocuments.site/reader035/viewer/2022070303/54b224804a7959fc428b4636/html5/thumbnails/20.jpg)
Brewer Theorem (“CAP Theorem”)
Summer School 2012
C Consistency
A Availability
P Partition Tolerance
A distributed computer systemcannot provide all three of the following:
Common case: “Eventual Consistency” databases
![Page 21: ELEKS Summer School 2012: .NET 09 - Databases](https://reader035.vdocuments.site/reader035/viewer/2022070303/54b224804a7959fc428b4636/html5/thumbnails/21.jpg)
NoSQL Database Products
Summer School 2012
![Page 22: ELEKS Summer School 2012: .NET 09 - Databases](https://reader035.vdocuments.site/reader035/viewer/2022070303/54b224804a7959fc428b4636/html5/thumbnails/22.jpg)
Some More DB Types
Summer School 2012
Active Embedded Knowledge
Cloud Federated Parallel
Data Warehouse Hypermedia Real-time
Distributed Hypertext Spatial
Document In-memory Temporal
![Page 24: ELEKS Summer School 2012: .NET 09 - Databases](https://reader035.vdocuments.site/reader035/viewer/2022070303/54b224804a7959fc428b4636/html5/thumbnails/24.jpg)
Thank you!
Summer School 2012