테마
본사 운영실의 「매장 생존 점검」 화면은 매장마다 마지막 주문 일시를 보여 주고, 30분 넘게 주문이 없는 매장을 붉게 칠한다(POS 장애 감지용). 운영실 PC 6대가 1분마다 새로 고친다. 지난주 SH0117 매장의 POS가 두 시간 멈췄는데 화면은 붉어지지 않았다. 그 시간에도 SH0117의 마지막 주문 시각은 '23:58:41'로 떠 있었다.
ORD 주문: 1,000,000행 · 22,422블록 · SHOP_NO 200곳('SH0001' ~ 'SH0200', 매장마다 약 5,000건) · ORD_DT VARCHAR2(8), ORD_HMS VARCHAR2(6) · 둘 다 NOT NULL이고 0 채움 정상SHOP 매장: 200행 · 5블록 · PK (SHOP_NO) · SHOP_NMORD_PK (ORD_NO), ORD_X01 (ORD_DT, ORD_HMS), ORD_X02 (SHOP_NO, ORD_DT, ORD_HMS, ORD_NO): BLEVEL 2 · 리프 약 5,200블록(매장 하나에 약 26블록) · 통계 최신SELECT s.SHOP_NO, s.SHOP_NM,
MAX(o.ORD_DT) AS last_dt,
MAX(o.ORD_HMS) AS last_hms
FROM SHOP s, ORD o
WHERE o.SHOP_NO = s.SHOP_NO
GROUP BY s.SHOP_NO, s.SHOP_NM
ORDER BY last_dt, last_hms
------------------------------------------------------------------------------------------------------------
| Id | Operation | Name | Starts | E-Rows | A-Rows | A-Time | Buffers | Used-Mem |
------------------------------------------------------------------------------------------------------------
| 0 | SELECT STATEMENT | | 1 | | 200 |00:00:00.38 | 5233 | |
| 1 | SORT ORDER BY | | 1 | 200 | 200 |00:00:00.38 | 5233 | 18K (0)|
| 2 | HASH GROUP BY | | 1 | 200 | 200 |00:00:00.38 | 5233 | 1394K (0)|
|* 3 | HASH JOIN | | 1 | 1000K| 1000K|00:00:00.27 | 5233 | 1572K (0)|
| 4 | TABLE ACCESS FULL | SHOP | 1 | 200 | 200 |00:00:00.01 | 5 | |
| 5 | INDEX FAST FULL SCAN| ORD_X02 | 1 | 1000K| 1000K|00:00:00.09 | 5228 | |
------------------------------------------------------------------------------------------------------------
Predicate Information (identified by operation id):
---------------------------------------------------
3 - access("O"."SHOP_NO"="S"."SHOP_NO")
[화면 · SH0117 · POS 가 멈춘 날 14:20] last_dt 20131216 · last_hms 235841 (실제 그날 마지막 주문: 20131216 120733)