Master's Thesis Bilal Al-Saeedi
Factors influencing the database selection for B2C web applications.
Exploring NoSQL data modeling and expressiveness of query options.
Abstract
TBD
Activities
- Literature review – NoSql databases
- Exploring and documenting different types of NoSQL databases (DBs) including key-value, document-based, column-based, and graph-based data stores.
- A detailed classification of NoSQL DB systems within different categories and sub-categories.
- Documentation of benefits, features (including different query options), and shortcomings of these DBs. (Get feedback from DB chair)
2. Use-case scenario identification
- Identify concrete (but generic) use-case scenarios in the context of web applications for its implementation using different DBs.
- Initial thoughts – e-commerce; CRM; EAM-KPI catalog; SEBA master projects; common use-cases used by most of the DB systems;
- Capture requirements based on the usage scenarios for e.g. modelling graphs, analyzing text, etc.
3. Identify key constructs
- Primary key; Composite keys; Data types; Modeling 1:n, m:n relations; Joins; Normalization; Aggregation; Schema evolution; CRUD operations; Text search: Full text; regex; Indexing; Parameterized queries; Filters; Row and cell-level security; Transaction support; Social network operations; Scaling – sharding; Replication; ORM support …
4. Implementation
- For the identified use-case, demonstrate the implementation (source code) of the key constructs using different DBs.
| Document-based | Key-value | Graph | |
|---|---|---|---|
| CRUD | |||
| Filters | |||
| Full text search | |||
| Indexing |
- For properties related to query performance – link to existing benchmark studies
5. Lessons learnt
- For each DB system, create a separate chapter (web-pages) and document
- schema definition
- implementation details
- from initial setup to execution of queries
- of the identified constructs
- challenges
- developer-friendliness,
- ease-of-implementation
- web application friendliness (data formats - json) …
Roadmap
Note
This Master thesis is in collaboration with the Database Systems chair (Prof. Dr. Thomas Neumann).
Requirements
- Basic knowledge related to NoSql databases
- Practical experience developing web applications (SEBA Master course, Web application practical)
| Attribute | Value |
|---|---|
| Title (de) | Einflußfaktoren für die Auswahl von Datenbanken in B2C Webanwendungen. |
| Title (en) | Factors influencing the database selection for B2C web applications. |
| Project | |
| Type | Master's Thesis |
| Status | completed |
| Student | Bilal Al-Saeedi |
| Advisor | Dr. Manoj Mahabaleshwar , Dr. Thomas Reschenhofer |
| Supervisor | Prof. Dr. Florian Matthes |
| Start Date | 15.09.2015 |
| Sebis Contributor Agreement signed on | 15.09.2015 |
| Checklist filled | Yes |
| Submission date | 15.03.2016 |
| Copyright agreement - publication allowed | Yes |
| Copyright agreement - notification required | Yes |
| Copyright agreement required | Yes |