# INDEXES & PERFORMANCE

[← Data Adapter Implementation](./04-data-adapter-implementation.md) | [Về Data Layer](../05-data/)

---

## MongoDB Indexes Strategy

**Performance Optimization:**
- Compound indexes cho queries thường dùng
- TTL indexes cho auto-delete old data
- Text indexes cho full-text search (nếu cần)
- Unique indexes cho fields cần unique constraint

---

## Example Indexes

```javascript
// Assets
assetSchema.index({ projectId: 1, code: 1 }, { unique: true });
assetSchema.index({ parentAssetId: 1 });

// Tickets
ticketSchema.index({ projectId: 1, status: 1 });
ticketSchema.index({ assignedTo: 1, status: 1 });

// Work Orders
workOrderSchema.index({ scheduledStart: 1 });
workOrderSchema.index({ projectId: 1, status: 1 });

// Time-series data
measurementSchema.index({ assetId: 1, metricName: 1, timestamp: -1 });
performanceMetricSchema.index({ projectId: 1, timestamp: -1 });
```

Chi tiết: [Database Schema](./01-database-schema.md#mongodb-indexes-strategy)

---

**Back to**: [Database Schema](./01-database-schema.md)
