feat: 가상화 문서들 추가
This commit is contained in:
@@ -7,7 +7,7 @@
|
||||
"revision": "761384d7b317469f8b4bb9c243a73419c00ea3a1",
|
||||
"verified": "이 커밋에 문서가 인용한 IT 7종(FeedPersistenceIT·FeedBatchFetchIT·FeedProjectionIT·FeedTopNIT·FeedKeysetIT·FeedVisibilityIT·FeedCrownIT)이 모두 있다. 저장소 HEAD 는 nplus1-replay-l3 브랜치라 이 커밋이 아니다"
|
||||
},
|
||||
"ssotSha256": "a32d9e8ba07129fc26deeef2ce07e3624ce6f34888d6cf503d0b7f226bbb4b6b",
|
||||
"ssotSha256": "bb33f443aaffe90be9e848fa49864b299a2ab628c300e2662ef32ac1c4d6964a",
|
||||
"sourceRevision": "n+1liner-lab@2026-08",
|
||||
"generatedAt": "2026-09-07",
|
||||
"candidateScope": {
|
||||
@@ -62,6 +62,48 @@
|
||||
"BLOCKED": "원본이 불완전하거나 서로 어긋난다"
|
||||
}
|
||||
},
|
||||
"assetLedger": {
|
||||
"note": "final/assets/diagrams/ 의 그림 10장 가운데 글감에 배정한 것과, 배정하지 않은 것의 이유를 적는다",
|
||||
"assigned": [
|
||||
"cartesian-row-multiplication",
|
||||
"projection-row-over-fetch",
|
||||
"eager-lazy-query-sequence",
|
||||
"batch-fetch-in-clause"
|
||||
],
|
||||
"unassigned": [
|
||||
{
|
||||
"asset": [
|
||||
"nplus1-query-fanout"
|
||||
],
|
||||
"reason": "컬렉션(Highlight) N+1 의 팬아웃을 그린 그림인데, 그 주장을 담은 Case 가 없다. case:eager-toone-nplus1-without-access 는 ToOne(user·page) 을 다루고 case:collection-fetch-join-in-memory-paging 은 fetch join 과 페이징을 다룬다"
|
||||
},
|
||||
{
|
||||
"asset": [
|
||||
"baseline-schema",
|
||||
"target-schema",
|
||||
"query-port-boundary",
|
||||
"strategy-journey"
|
||||
],
|
||||
"reason": "데이터 모델·포트 경계·전체 여정을 그린 그림이라 글감 하나에 속하지 않는다. final/document.md 가 제자리에서 싣는다"
|
||||
},
|
||||
{
|
||||
"asset": [
|
||||
"skew-profile"
|
||||
],
|
||||
"reason": "표로 되는 그림이다 — 분포 셋을 네 속성으로 늘어놓았을 뿐 관계선이 없다. §4.3 에 순위별 하이라이트 수 표가 이미 있다"
|
||||
}
|
||||
],
|
||||
"removed": [
|
||||
{
|
||||
"asset": [
|
||||
"in-memory-paging",
|
||||
"keyset-vs-offset",
|
||||
"top-n-per-group"
|
||||
],
|
||||
"reason": "표로 되는 그림이라 지웠다. 같은 비교가 기록의 표에 더 자세히 있었다"
|
||||
}
|
||||
]
|
||||
},
|
||||
"topics": {
|
||||
"jpa-feed-query-performance": {
|
||||
"topic": "jpa-feed-query-performance",
|
||||
@@ -93,6 +135,9 @@
|
||||
"reference:fetch-type-vs-fetch-strategy",
|
||||
"decision:measure-plan-on-real-postgresql"
|
||||
],
|
||||
"ssot-assets": [
|
||||
"eager-lazy-query-sequence"
|
||||
],
|
||||
"kind": "case",
|
||||
"publication": "게시됨",
|
||||
"file": "jpa-feed-query-performance/case/case-eager-toone-nplus1-without-access.md",
|
||||
@@ -101,6 +146,9 @@
|
||||
"assets": [
|
||||
"eager-lazy-query-sequence"
|
||||
],
|
||||
"assetFiles": [
|
||||
"eager-lazy-query-sequence"
|
||||
],
|
||||
"evidenceFiles": [
|
||||
"../../../final/evidence/raw/explain/highlights-child-plan-A.txt",
|
||||
"../../../final/evidence/raw/explain/toone-pages-plan.txt",
|
||||
@@ -131,6 +179,9 @@
|
||||
"reference:fetch-strategy-selection",
|
||||
"decision:no-collection-fetch-join-with-pagination"
|
||||
],
|
||||
"ssot-assets": [
|
||||
"cartesian-row-multiplication"
|
||||
],
|
||||
"kind": "case",
|
||||
"publication": "게시됨",
|
||||
"file": "jpa-feed-query-performance/case/case-fetch-join-multibag-and-row-explosion.md",
|
||||
@@ -139,6 +190,9 @@
|
||||
"assets": [
|
||||
"cartesian-row-multiplication"
|
||||
],
|
||||
"assetFiles": [
|
||||
"cartesian-row-multiplication"
|
||||
],
|
||||
"evidenceFiles": [
|
||||
"../../../final/evidence/raw/explain/l3-cartesian-join-plan.txt"
|
||||
]
|
||||
@@ -166,12 +220,18 @@
|
||||
"decision:no-collection-fetch-join-with-pagination"
|
||||
],
|
||||
"kind": "case",
|
||||
"ssot-assets": [
|
||||
"batch-fetch-in-clause"
|
||||
],
|
||||
"publication": "게시됨",
|
||||
"file": "jpa-feed-query-performance/case/case-collection-fetch-join-in-memory-paging.md",
|
||||
"status": "게시 전",
|
||||
"studioId": "c1158754-e3d2-47b8-bb41-81787c0ca84b",
|
||||
"assets": [
|
||||
"in-memory-paging"
|
||||
"batch-fetch-in-clause"
|
||||
],
|
||||
"assetFiles": [
|
||||
"batch-fetch-in-clause"
|
||||
],
|
||||
"evidenceFiles": [
|
||||
"../../../final/evidence/raw/explain/l4-entity-paging-limit.txt",
|
||||
@@ -201,6 +261,9 @@
|
||||
"relations": [
|
||||
"decision:read-projection-for-screen-query"
|
||||
],
|
||||
"ssot-assets": [
|
||||
"projection-row-over-fetch"
|
||||
],
|
||||
"kind": "case",
|
||||
"publication": "게시됨",
|
||||
"file": "jpa-feed-query-performance/case/case-projection-row-over-fetch.md",
|
||||
@@ -209,6 +272,9 @@
|
||||
"assets": [
|
||||
"projection-row-over-fetch"
|
||||
],
|
||||
"assetFiles": [
|
||||
"projection-row-over-fetch"
|
||||
],
|
||||
"evidenceFiles": [
|
||||
"../../../final/evidence/raw/explain/l6-parent-projection.txt"
|
||||
]
|
||||
@@ -242,9 +308,8 @@
|
||||
"file": "jpa-feed-query-performance/case/case-visibility-or-breaks-keyset-index.md",
|
||||
"status": "게시 전",
|
||||
"studioId": "e6715e81-6dbd-4287-8e19-946c334f38fb",
|
||||
"assets": [
|
||||
"keyset-vs-offset"
|
||||
],
|
||||
"assets": [],
|
||||
"assetFiles": [],
|
||||
"evidenceFiles": [
|
||||
"../../../final/evidence/raw/explain/l15-keyset-no-index.txt",
|
||||
"../../../final/evidence/raw/explain/l15-offset-deep-page.txt"
|
||||
@@ -274,6 +339,7 @@
|
||||
"status": "게시 전",
|
||||
"studioId": "b0b55ac9-c0a3-4c01-ba84-0aa478923ace",
|
||||
"assets": [],
|
||||
"assetFiles": [],
|
||||
"evidenceFiles": []
|
||||
},
|
||||
{
|
||||
@@ -296,6 +362,7 @@
|
||||
"status": "게시 전",
|
||||
"studioId": "51095f6e-2cc8-439c-8648-065033614215",
|
||||
"assets": [],
|
||||
"assetFiles": [],
|
||||
"evidenceFiles": []
|
||||
},
|
||||
{
|
||||
@@ -320,6 +387,7 @@
|
||||
"status": "게시 전",
|
||||
"studioId": "db99cbc5-9123-4599-b368-39ff3170e81d",
|
||||
"assets": [],
|
||||
"assetFiles": [],
|
||||
"evidenceFiles": []
|
||||
},
|
||||
{
|
||||
@@ -342,6 +410,7 @@
|
||||
"status": "게시 전",
|
||||
"studioId": "bf5f2462-0e94-4723-bdc8-f7dd709b2dbb",
|
||||
"assets": [],
|
||||
"assetFiles": [],
|
||||
"evidenceFiles": []
|
||||
},
|
||||
{
|
||||
@@ -365,6 +434,7 @@
|
||||
"status": "게시 전",
|
||||
"studioId": "06788903-3dfa-4f70-b159-f1224384fd0b",
|
||||
"assets": [],
|
||||
"assetFiles": [],
|
||||
"evidenceFiles": []
|
||||
},
|
||||
{
|
||||
@@ -387,6 +457,7 @@
|
||||
"status": "게시 전",
|
||||
"studioId": "635fcedd-d402-4297-bcf3-9fcdf4200d28",
|
||||
"assets": [],
|
||||
"assetFiles": [],
|
||||
"evidenceFiles": []
|
||||
},
|
||||
{
|
||||
@@ -411,6 +482,7 @@
|
||||
"status": "게시 전",
|
||||
"studioId": "e8c2e9ea-cd87-46f8-9469-849dbd433d86",
|
||||
"assets": [],
|
||||
"assetFiles": [],
|
||||
"evidenceFiles": []
|
||||
}
|
||||
],
|
||||
@@ -436,6 +508,7 @@
|
||||
"status": "게시 전",
|
||||
"studioId": "e1e0e2a0-c6b6-45bf-be42-f697ba5e2fff",
|
||||
"assets": [],
|
||||
"assetFiles": [],
|
||||
"evidenceFiles": []
|
||||
},
|
||||
{
|
||||
@@ -459,6 +532,7 @@
|
||||
"status": "게시 전",
|
||||
"studioId": "5159c415-232d-424a-970a-b0db52746767",
|
||||
"assets": [],
|
||||
"assetFiles": [],
|
||||
"evidenceFiles": []
|
||||
},
|
||||
{
|
||||
@@ -483,6 +557,7 @@
|
||||
"status": "게시 전",
|
||||
"studioId": "b099ca65-bf9f-4d61-814c-74722453fa3c",
|
||||
"assets": [],
|
||||
"assetFiles": [],
|
||||
"evidenceFiles": []
|
||||
},
|
||||
{
|
||||
@@ -508,6 +583,7 @@
|
||||
"status": "게시 전",
|
||||
"studioId": "5088ce14-b096-41d3-abba-64b7afb48bb9",
|
||||
"assets": [],
|
||||
"assetFiles": [],
|
||||
"evidenceFiles": []
|
||||
},
|
||||
{
|
||||
@@ -531,6 +607,7 @@
|
||||
"status": "게시 전",
|
||||
"studioId": "6cbe963f-86f8-4df6-be5a-900712970d01",
|
||||
"assets": [],
|
||||
"assetFiles": [],
|
||||
"evidenceFiles": []
|
||||
}
|
||||
],
|
||||
@@ -559,6 +636,7 @@
|
||||
"status": "게시 전",
|
||||
"studioId": "ae6c9bea-d3a3-46e1-bbd4-8d580d336394",
|
||||
"assets": [],
|
||||
"assetFiles": [],
|
||||
"evidenceFiles": []
|
||||
},
|
||||
{
|
||||
@@ -584,6 +662,7 @@
|
||||
"status": "게시 전",
|
||||
"studioId": "4e3200c8-eff5-4442-ae84-ae7b7fa92c8b",
|
||||
"assets": [],
|
||||
"assetFiles": [],
|
||||
"evidenceFiles": []
|
||||
},
|
||||
{
|
||||
@@ -611,6 +690,7 @@
|
||||
"status": "게시 전",
|
||||
"studioId": "5e4d033c-d6fe-4257-a4dc-1ade44473c72",
|
||||
"assets": [],
|
||||
"assetFiles": [],
|
||||
"evidenceFiles": []
|
||||
},
|
||||
{
|
||||
@@ -636,6 +716,7 @@
|
||||
"status": "게시 전",
|
||||
"studioId": "08a74b35-10c3-4874-8fbc-209b0b6e942e",
|
||||
"assets": [],
|
||||
"assetFiles": [],
|
||||
"evidenceFiles": []
|
||||
},
|
||||
{
|
||||
@@ -663,6 +744,7 @@
|
||||
"status": "게시 전",
|
||||
"studioId": "30a37f34-b406-4061-b924-e22e0be0c3bf",
|
||||
"assets": [],
|
||||
"assetFiles": [],
|
||||
"evidenceFiles": []
|
||||
},
|
||||
{
|
||||
@@ -690,6 +772,7 @@
|
||||
"status": "게시 전",
|
||||
"studioId": "1dbce381-f0dc-4d49-ad68-bd31d205677e",
|
||||
"assets": [],
|
||||
"assetFiles": [],
|
||||
"evidenceFiles": []
|
||||
},
|
||||
{
|
||||
@@ -718,6 +801,7 @@
|
||||
"status": "게시 전",
|
||||
"studioId": "7f248f68-ce2b-43ec-94ce-82324d0bd1a7",
|
||||
"assets": [],
|
||||
"assetFiles": [],
|
||||
"evidenceFiles": []
|
||||
}
|
||||
]
|
||||
|
||||
Reference in New Issue
Block a user