Semestral project

General Assignment

Project Task List

  1. Formulate the subject domain and scenario:
    • Define the type of platform, the main types of users, objects, and events.
  2. Compile a general set of related data (users, objects, events, relationships) that reflects the logic of activity.
  3. For each DBMS, determine in advance which analytical tasks/queries will be executed there:
    • At least two key queries for each DBMS.
    • For each query: explain why the platform needs it, why this DBMS was chosen, and what storage structure is required for this query.
  4. Prepare (generate) the necessary data (CSV/JSON) to implement the selected queries.
  5. Prepare and import the data into the corresponding DBMSs — MongoDB, Cassandra, Redis, Neo4j.
    • For each DBMS, prepare exactly the data needed to implement the selected analytical queries. Data structures across different DBMSs should not be duplicated unnecessarily — an exception is allowed only for comparative performance analysis.
    • In the report, explain why this data is loaded into this DBMS in this structure, and why other alternatives are not used (with a brief comparison).
    • Import the data. Scripts or GUI tools may be used to load data.
  6. Execute the selected analytical tasks in the DBMSs (according to the pre-formulated queries):
    • Include the commands used, sample outputs, and brief interpretations in the report.
  7. Perform one optimization task for each DBMS: analyze and implement a technique to improve performance.
  8. Compare the convenience, limitations, and strengths of each DBMS in practice, based on the queries you implemented.
  9. Present the results in a report: the scenario, data structure, selection of queries and DBMSs, imports, analytics implementation, comparative analysis, and conclusions.

Report