3. What is information architecture?
How to represent your data
● In-memory
● On disk (persistence)
4. Why is it important?
● Data integrity
○ Corruption
○ Ambiguous
● Security
○ Who does the data belong to?
○ Who is allowed to see it?
● Performance
○ Can it scale?
6. Layered architecture
Presentation layer
Service layer
Domain layer
Persistence layer
View model
Domain model
On-disk format
}
}
}
“In-memory”
representation
“Official”
representation
Relational - ORM
Document - serialized to JSON
7. Data structures discussion
In which we discuss relational database design
and how it differs from document database
design. Also discuss difference between “in-
memory” models and “on-disk” models.
8. Layered architecture - common
Presentation layer
HTML5/JS/CSS
Service layer
REST API - view models
Domain layer
Domain models
Persistence layer
Database
Browser
Server
} AngularJS
Knockout etc.
}
ASP.NET - Web API
PHP - Laravel
Python - Django
Ruby - Rails
}
Relational
● SQL Server
● MySQL
Document
● RavenDB
● MongoDB
9. Layered architecture - MeteorJS
Presentation layer
HTML5/JS/CSS
Service layer
REST API - view models
Domain layer
Domain models
Persistence layer
Database
Browser
Server
}MeteorJS
} Document / MongoDB