|
1 | 1 | # MySQL Analysis - Tasks |
2 | 2 |
|
3 | | -- [x] 0. Set up Git source control for the project |
| 3 | +**IMPORTANT**: |
| 4 | +- **Commit changes frequently** throughout this stage to maintain a clean Git history |
| 5 | +- **Use `git -P`** to avoid interactive prompts |
| 6 | +- **Mark tasks as completed** by changing `[ ]` to `[x]` as you finish each task |
| 7 | +- **Commit after each major task completion** with descriptive messages |
| 8 | +- **Update the tasks.md file** itself when marking tasks complete and commit those changes too |
| 9 | +- **DO NOT MODIFY THE CONTENT OF THIS FILE**: Only add a [x] mark to complete the task, for tracking purposes. |
| 10 | +- [ ] 0. Set up Git source control for the project |
4 | 11 | - Initialize GIT at the root of this workspace so you have a point to revert your changes if needed in the future |
5 | 12 | - You must always use git -P to avoid getting stuck in git operations |
6 | 13 | - The subfolders have compiled projects, make sure to create a gitignore so you track only what you will be modifying not the compiled version or the node_modules |
|
9 | 16 | - Commit the latest changes registered in the working log and other artifacts |
10 | 17 | - _Requirements: 1.1, 1.2, 1.3, 1.4, 1.5_ |
11 | 18 |
|
12 | | -- [x] 1. Identify current application access patterns |
| 19 | +- [ ] 1. Identify current application access patterns |
13 | 20 | - Make sure you have a clean commit log |
14 | 21 | - From the backend/ folder use the README.md to understand its API endpoints |
15 | 22 | - Explore the backend/ folder to understand in detail the available access patterns |
|
19 | 26 | - Update the file task.md once completed, please let the user know that you have completed this task and summarize what has been done |
20 | 27 | - _Requirements: 3.3, 4.2, 4.4_ |
21 | 28 |
|
22 | | -- [x] 2. Read MySQL source database information |
| 29 | +- [ ] 2. Analyze MySQL database logs for performance patterns |
23 | 30 | - Make sure you have a clean commit log |
24 | | - - From the database/ folder use the mysql_log_parser.py script to capture mysql query statistics |
25 | | - - Use the MySQL MCP server's execute_sql tool to run SQL queries and collect the actual schema information deployed in the database, that will be used to understand the entity relationships |
| 31 | + - From the database/ folder use the mysql_log_parser.py script to capture mysql query statistics and performance data |
| 32 | + - Generate `artifacts/stage-01/01_2_mysql_log_analysis.md` with comprehensive analysis of: |
| 33 | + - Query frequency and patterns from log analysis |
| 34 | + - Performance bottlenecks and slow queries |
| 35 | + - Access pattern identification from actual usage |
| 36 | + - RPS estimates based on log data |
| 37 | + - Use a temporary file called `artifacts/stage-01/01_2_working_log.md` to track your current work and important notes |
| 38 | + - Update the file task.md once completed, please let the user know that you have completed this task and summarize what has been done |
| 39 | + - _Requirements: 2.1, 2.2, 2.3, 2.4, 2.5, 2.6_ |
| 40 | + |
| 41 | +- [ ] 3. Extract table structure using MySQL MCP server |
| 42 | + - Make sure you have a clean commit log |
| 43 | + - Use the MySQL MCP server's execute_sql tool to run SQL queries and collect the actual schema information deployed in the database |
26 | 44 | - Write and execute SQL queries to extract table structures, relationships, indexes, and constraints for the online shopping store database |
27 | | - - Using both results generate a comprehensive report where you explain the entity relationship information, table structure and add the access patterns at the bottom to understand the nature of the workload. DO NOT SUGGEST A DYNAMODB TABLE STRUCTURE |
28 | | - - Generate focused artifacts as you progress: schema extraction results, entity relationships, table structures, performance analysis, and access patterns in separate files under `artifacts/stage-01/` |
29 | | - - Use a temporary file called `artifacts/stage-01/01_2_working_log.md` so you can track what is your current work and important notes and use it as a reference |
| 45 | + - Generate `artifacts/stage-01/01_3_table_structure_analysis.md` with comprehensive documentation of: |
| 46 | + - Complete table definitions with columns, data types, and constraints |
| 47 | + - Primary keys, foreign keys, and indexes |
| 48 | + - Entity relationships and cardinalities |
| 49 | + - Current database schema structure |
| 50 | + - Use a temporary file called `artifacts/stage-01/01_3_working_log.md` to track your current work and important notes |
| 51 | + - DO NOT SUGGEST A DYNAMODB TABLE STRUCTURE - focus only on current MySQL analysis |
30 | 52 | - Update the file task.md once completed, please let the user know that you have completed this task and summarize what has been done |
31 | | - - _Requirements: 2.1, 2.2, 2.3, 2.4, 2.5, 2.6, 3.1, 3.2, 3.4, 3.5, 4.1, 4.3, 4.5_ |
| 53 | + - _Requirements: 3.1, 3.2, 3.4, 3.5, 4.1, 4.3, 4.5_ |
32 | 54 |
|
33 | 55 | ## Output Validation Checklist |
34 | 56 |
|
35 | 57 | Before marking this stage complete, verify: |
36 | | -- [x] Git repository initialized with proper .gitignore |
37 | | -- [x] Working log files created in artifacts/stage-00/ and artifacts/stage-01/ directories |
38 | | -- [ ] Modular artifacts created for each analysis component: |
39 | | - - [x] `artifacts/stage-01/01_1_API_access_patterns.md` - Backend API endpoints and access patterns |
40 | | - - [ ] `artifacts/stage-01/01_2_schema_extraction.md` - Raw SQL query results |
41 | | - - [ ] `artifacts/stage-01/01_3_entity_relationships.md` - E-commerce entity analysis |
42 | | - - [ ] `artifacts/stage-01/01_4_table_structures.md` - Detailed table definitions |
43 | | - - [ ] `artifacts/stage-01/01_5_performance_analysis.md` - mysql_log_parser.py results |
44 | | - - [ ] `artifacts/stage-01/01_6_access_patterns.md` - Identified access patterns |
45 | | -- [ ] All MySQL tables, relationships, and constraints are documented in focused artifacts |
46 | | -- [ ] Access patterns are identified from mysql_log_parser.py analysis |
47 | | -- [ ] Entity relationship information explains e-commerce domain structure |
48 | | -- [ ] Table structure includes detailed column definitions and constraints |
49 | | -- [ ] Performance analysis results from Python script are included |
| 58 | +- [ ] Git repository initialized with proper .gitignore |
| 59 | +- [ ] Working log files created in artifacts/stage-00/ and artifacts/stage-01/ directories |
| 60 | +- [ ] **Three essential artifacts created**: |
| 61 | + - [ ] `artifacts/stage-01/01_1_API_access_patterns.md` - Backend API endpoints and access patterns from API specifications |
| 62 | + - [ ] `artifacts/stage-01/01_2_mysql_log_analysis.md` - Performance patterns and query statistics from mysql_log_parser.py |
| 63 | + - [ ] `artifacts/stage-01/01_3_table_structure_analysis.md` - Complete table structures and relationships from MySQL MCP server |
| 64 | +- [ ] API analysis includes detailed endpoint documentation and entity relationships |
| 65 | +- [ ] MySQL log analysis provides query frequency, performance bottlenecks, and RPS estimates |
| 66 | +- [ ] Table structure analysis includes complete schema with relationships, indexes, and constraints |
| 67 | +- [ ] All MySQL tables, relationships, and constraints are documented |
| 68 | +- [ ] Performance data from log analysis is comprehensive |
50 | 69 | - [ ] Documentation focuses on current state analysis without DynamoDB suggestions |
51 | 70 | - [ ] All changes are committed to Git with meaningful messages |
52 | 71 |
|
|
0 commit comments