从数据采集和使用的角度可以将系统分为OLTP和OLAP两类,这样的划分正好对应了CQRS架构下的Command(OLTP)部分和Query(OLAP)部分。
Query的组织方式多采用ViewModel+RawSql。
Command的组织方式多采用DDD+ORM,其中Command执行的操作可以细分为单个操作和批量操作,单个操作使用ORM肯定不成问题,批量操作可以采用RawSql或后台任务的形式。
判定树
- OLAP(Query)
- RawSql
- OLTP(Command)
- Single Operation
- ORM
- Batch Operation
- RawSql
- ORM in Background
- Single Operation
备注
即使是采用RawSql,也最好采用一些轻量级的框架,不要自己封装。