[SERVER-4445] aggregation: use a string table to reduce field name storage when using aggregation Created: 07/Dec/11 Updated: 08/Mar/13 Resolved: 27/Nov/12 |
|
| Status: | Closed |
| Project: | Core Server |
| Component/s: | Aggregation Framework |
| Affects Version/s: | None |
| Fix Version/s: | None |
| Type: | Improvement | Priority: | Major - P3 |
| Reporter: | Daniel Pasette (Inactive) | Assignee: | Mathias Stearn |
| Resolution: | Won't Fix | Votes: | 0 |
| Labels: | None | ||
| Remaining Estimate: | Not Specified | ||
| Time Spent: | Not Specified | ||
| Original Estimate: | Not Specified | ||
| Issue Links: |
|
||||||||||||
| Participants: | |||||||||||||
| Description |
|
As an optimization, we can reduce the amount of allocated memory used by sharing the field name strings across all documents re-ified at the beginning of the aggregation pipeline. The string table can be put into the nascent ExpressionContext (we need to make sure that's available everywhere necessary). Every time we reify a document, use the strings in the string table, or add any missing ones. |
| Comments |
| Comment by Mathias Stearn [ 27/Nov/12 ] |
|
Went in a different direction |
| Comment by Chris Westin [ 16/Mar/12 ] |
|
This should fall out of |