Skip to content

Add DWH analytics module for amoCRM data export#632

Open
qle0 wants to merge 2 commits into
amocrm:masterfrom
qle0:feature/dwh-analytics-module
Open

Add DWH analytics module for amoCRM data export#632
qle0 wants to merge 2 commits into
amocrm:masterfrom
qle0:feature/dwh-analytics-module

Conversation

@qle0

@qle0 qle0 commented Jul 2, 2026

Copy link
Copy Markdown

Implement full data warehouse schema and ETL layer:

  • 15 SQL migrations for 48+ tables (auxiliary, dimensions, facts, linking, SHD)
  • 52 DWH models (BaseDwhModel + entity/attribute/tag/note/event/fact models)
  • 18 DWH collections (BaseDwhCollection)
  • 14 entity ETL services with pagination and incremental sync support
  • 11 fact ETL services for metric aggregation
  • DwhDbAdapter (PDO-based): insert, upsert, bulkInsert, truncate, deleteBy
  • DwhSyncOrchestrator: fullSync() and incrementalSync()
  • Example script (examples/dwh_full_sync.php)
  • Updated README with DWH documentation

Architecture: AmoCRM\Dwh namespace with Models/Collections/Services layers

Implement full data warehouse schema and ETL layer:
- 15 SQL migrations for 48+ tables (auxiliary, dimensions, facts, linking, SHD)
- 52 DWH models (BaseDwhModel + entity/attribute/tag/note/event/fact models)
- 18 DWH collections (BaseDwhCollection)
- 14 entity ETL services with pagination and incremental sync support
- 11 fact ETL services for metric aggregation
- DwhDbAdapter (PDO-based): insert, upsert, bulkInsert, truncate, deleteBy
- DwhSyncOrchestrator: fullSync() and incrementalSync()
- Example script (examples/dwh_full_sync.php)
- Updated README with DWH documentation

Architecture: AmoCRM\Dwh namespace with Models/Collections/Services layers
Co-authored-by: openhands <openhands@all-hands.dev>
- docs/DWH.md: full module documentation (architecture, table schema,
  migrations, ETL services, fact tables, orchestrator, SQL examples,
  extension guide)
- README.md: add link to detailed DWH docs

Co-authored-by: openhands <openhands@all-hands.dev>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants