데이터 포인트
목차
- 개요
- 공통 좌측 영역 — 태그 트리 패널
- 스트림 화면 (
/stream/index) - 트렌드 화면 (
/storage/index) - 스냅샷 화면 (
/snapshot/index) - 데이터 출력 화면 (
/data/index) - 활용 시나리오
- 자주 묻는 질문
- 관련 화면
개요
Data 그룹은 수집된 시계열 데이터를 4가지 시점으로 조회·분석하는 화면들의 묶음입니다.
| 하위 메뉴 | 내부 URL | 용도 |
|---|---|---|
| 스트림 | /stream/index | 선택한 태그의 실시간 인입 데이터를 라인 차트로 표시 |
| 트렌드 | /storage/index | 선택한 기간의 태그 데이터를 차트와 표로 분석 |
| 스냅샷 | /snapshot/index | 일정 간격으로 샘플링된 대표값을 표 형태로 조회 |
| 데이터 출력 | /data/index | 데이터를 CSV/엑셀 형식으로 일괄 추출 |
네 화면은 좌측에 동일한 모양의 태그 트리 패널을 공유하며, 우측 영역만 화면별 기능에 맞게 다릅니다.
공통 좌측 영역 — 태그 트리 패널
스트림·트렌드·스냅샷 모두 좌측 col-lg-3 폭의 동일한 태그 트리 패널을 사용합니다.
┌─────────────────────────────┐
│ 🗂 모델 [💬] [🔍] [📋] │ ← 헤더 + 도구 3개
│ ─────────────────────────── │
│ 🏭 [ 사이트 ▼ ] │ ← 사이트 셀렉터
│ ─────────────────────────── │
│ [에셋] [연결] │ ← 탭 (ADMIN만 연결 탭 표시)
│ ─────────────────────────── │
│ 🔍 검색... │ ← 토글 시 노출
│ ─────────────────────────── │
│ ▶ 자산 트리 │ ← 자산/태그 계층 트리
│ ▶ MOTOR-001 │
│ ▼ MOTOR-001.SPEED │
│ ▼ MOTOR-001.TEMP │
│ ... │
│ ─────────────────────────── │
│ 오브젝트 ID : (hover 시 표시) │ ← 푸터
└─────────────────────────────┘
헤더 도구 3개
| 버튼 | 아이콘 | 동작 |
|---|---|---|
| 태그 설명 표시 옵션 | 💬 | 트리에서 태그 옆에 설명을 함께 표시할지 토글 |
| 태그 검색 | 🔍 | 트리 위 검색 입력란을 토글 |
| 선택 태그명 복사 | 📋 | 체크된 태그명을 클립보드에 복사 |
사이트 셀렉터
| 항목 | 형태 | 동작 |
|---|---|---|
| 입력 그룹 좌측 | 🏭 (산업 아이콘) | — |
| 셀렉터 | 사이트명 [설명] 옵션 | 변경 시(changeSite()) 트리를 그 사이트의 자산/연결로 다시 로드 |
탭 (에셋 / 연결)
| 탭 | 보이는 사용자 | 트리 내용 |
|---|---|---|
| 에셋 (기본) | 모두 | 사이트 → 구역 → 라인 → 설비 → 태그 자산 트리 |
| 연결 | ADMIN | OPC 서버 → 채널 → 태그 (통신 단위 트리) |
각 탭에는 자체 검색 입력란(assetSearchInput / opcSearchInput)이 토글식으로 펼쳐집니다.
푸터 — 오브젝트 ID 미리보기
태그 또는 자산에 마우스를 호버하면 푸터의 오브젝트 ID 칸에 그 항목의 식별자가 표시되어, 운영자가 자산명만 보고도 ID 를 빠르게 확인할 수 있습니다.
스트림 화면 (/stream/index)
좌측 트리에서 태그를 체크하고 스트리밍 시작 을 누르면, 우측 차트에 실시간으로 데이터가 들어오는 모습을 볼 수 있습니다.
상단 도구
🔀 스트림 [▶ 스트리밍 시작] [■] [↻]
| 버튼 | 동작 |
|---|---|
| 스트리밍 시작 (▶, 빨강) | stream() — 체크된 태그의 실시간 푸시 구독 시작 |
| 정지 (■) | stop() — 스트리밍 중지 (시작 후에만 활성화) |
| 새로고침 (↻) | refresh() — 화면 초기화 |
차트 표시 옵션
차트 패널의 헤더 우측 도구.
| 항목 | ID | 기본값 | 설명 |
|---|---|---|---|
| 표시 (분) | display_minutes | 5 | 차트에 표시할 시간 폭 (분 단위) |
| 가상 포인트 추가 | (버튼) | — | addVPoint() — 사용자 정의 가상 포인트(스크립트 계산 기반)를 차트에 추가 |
| 설정 | (버튼) | — | setDisplayCount() — 표시 개수·기타 옵션 다이얼로그 |
실시간 차트 영역
차트 패널 본문에 다음 공간이 있습니다.
| 항목 | 표시 |
|---|---|
result_txt | 헤더 우측 작은 글씨 — 현재 스트리밍 상태 요약 |
stream-content (목록) | 체크된 태그마다 한 줄로 라인 차트 + 현재 값 표시 |
스트리밍 시작 전에는 다음 안내가 표시됩니다.
🖼 [스트림 아이콘]
태그 데이터 스트림 실시간 태그 데이터를 확인할 수 있습니다. 왼쪽 태그 트리에서 태그명을 선택하신 후, [▶ 스트리밍 시작] 버튼을 클릭하여 주십시오.
사용 절차
- 좌측 트리에서 보고 싶은 태그를 체크 (여러 개 가능)
- 스트리밍 시작 클릭
- 차트가 실시간 인입 데이터로 자동 갱신됨
- 보고 싶은 시간 폭(분)이 다르면 우상단 표시 (분) 값 조정
- 다 보고 나면 ■ 정지 클릭
트렌드 화면 (/storage/index)
선택한 기간의 태그 데이터를 시계열 차트와 집계 테이블로 분석하는 화면입니다.
상단 검색 영역
📈 트렌드 [기간 ▭ ▭▭▭▭▭▭▭▭] [샘플링 ▼] [조회] [🎚️] [정지] [전체화면]
| 컨트롤 | 폭 | 설명 |
|---|---|---|
기간 입력 (search_time) | 280px | 시작~종료 일시 (가운데 정렬, 굵은 글씨). 클릭 시 날짜 범위 선택기. hidden search_date_from / search_date_to 로 전달 |
샘플링 셀렉터 (term) | 자동 | 기본 비활성. 🎚️ 버튼으로 활성화 (아래 샘플링 옵션 참고) |
조회 (submit_button) | 빨강 + 🔍 | search() — 조건으로 차트 + 테이블 갱신 |
샘플링 옵션 토글 (sampling_button) | 빨강 + 🎚️ | samplingOption() — 샘플링 셀렉터 표시/숨기기 |
조회 중지 (cancel_button) | 빨강 + ⏹ | cancel() — 진행 중인 조회 취소 (조회 중에만 활성화) |
| 전체화면 | 빨강 + 🔗 | fullscreen() — 트렌드 화면을 새 창 전체화면으로 |
샘플링 옵션
샘플링 셀렉터(term)는 기본적으로 숨겨져 있고 🎚️ 버튼으로 켭니다. 데이터가 너무 많아 차트가 느릴 때 샘플링으로 가벼운 대표값만 가져오는 용도입니다.
| 옵션 | 의미 | 권장 사용 |
|---|---|---|
(빈 값) — 원본(RAW) | 모든 데이터 | 기본값. 짧은 기간(시간/일) |
LTTB [0.1%] | LTTB 알고리즘으로 0.1% 만 추출 | 장기(월) 트렌드 개요 |
LTTB [0.5%] | 0.5% 만 추출 | 장기(월) 분석 |
LTTB [1%] | 1% 만 추출 | 중기(주) 분석 |
LTTB [5%] | 5% 만 추출 | 단기(일) 분석 |
LTTB [10%] | 10% 만 추출 | 상세 정밀 분석 |
1분 주기 | 1분 간격 단순 샘플 | 단기(일) 샘플링 |
5분 주기 | 5분 간격 | 중기(주) 샘플링 |
30분 주기 | 30분 간격 | 장기(월) 샘플링 |
1시간 주기 | 1시간 간격 | 장기 트렌드 샘플링 |
LTTB(Largest-Triangle-Three-Buckets) 는 시계열의 시각적 형태를 가장 잘 보존하는 다운샘플링 알고리즘으로, 차트 표시에 최적화되어 있습니다.
차트 표시 옵션
차트 패널 헤더 우측의 인라인 도구바입니다.
| 항목 | ID | 옵션 | 설명 |
|---|---|---|---|
| 차트 유형 | chart_type | 선·영역·컬럼·부드러운 선·부드러운 영역 | 차트 시리즈 표현 방식 |
| 스텝 라인 | show_step_line | 기본 라인 / 스텝 라인 | 디지털 신호처럼 계단형 표현 |
| 알람 표시 | show_alarm_flags | 알람 표시 / 표시 안함 | 차트 위에 알람 발생 시점 마커 |
| TRIP 표시 | show_trip_line | TRIP 표시 / 표시 안함 | 멀티 Y-AXIS 모드에서만 트립 임계선 표시 |
| C.HEIGHT | chart_height | 100/150(기본)/200/250/300/400/500 | 차트 높이 (px) |
| 설정 | (버튼) | — | configure() — 추가 차트 설정 다이얼로그 |
| 엑셀 다운로드 | (버튼) | — | downloadXLS() — 결과를 엑셀로 다운로드 |
차트 영역
| 항목 | ID | 설명 |
|---|---|---|
| 차트 | result_chart | 600px 높이 시계열 차트 |
| 결과 카운트 | result_count_txt / result_time_txt | 차트 우상단 — 표시된 데이터 포인트 수와 조회 소요 시간 |
| 데이터 없음 안내 | chart_no_data | "표시할 데이터가 없습니다." (선택 태그가 없거나 결과 비어 있을 때) |
| 로딩 표시 | ws_wait_text | "데이터를 조회중 입니다..." (회전 아이콘) |
| 실행 시간 | exec_time_txt | 패널 하단 작은 글씨 — 마지막 조회 소요 시간 |
태그 집계 테이블
차트 아래에 선택된 태그들의 집계 통계가 표 형태로 표시됩니다(storage_table).
┌──────────────────────────── 헤더 (그룹) ────────────────────────────┐
│ 태그ID │ 태그명 │ 데이터 타입 │ 단위 │ 집계 (4 컬럼) │ 액션 │
│ │ │ │ │ 카운트 │첫|끝│최저|최고│평균|합계│ │
└────────────────────────────────────────────────────────────────────┘
| 컬럼 | 폭 | 표시 |
|---|---|---|
| 태그ID | 90px | 태그 식별자 |
| 태그명 | 220px+ | 사람이 읽기 쉬운 태그 이름 |
| 데이터 타입 | 80px | INT/FLOAT/BOOL/STRING 등 |
| 단위 | 50px | 측정 단위 (예: °C, kPa, rpm) |
| 카운트 | 60px | 조회 기간 내 데이터 포인트 수 |
| 처음 | 마지막 | 60px | 시작/종료 시점의 값 |
| 최저 | 최고 | 60px | 최소·최대 값 |
| 평균 | 합계 | 60px | 평균·합계 |
| 액션 | 40px | 행 단위 도구 버튼 |
타임라인 추가 다이얼로그
차트 위에 자산 단위 이벤트 타임라인을 겹쳐 표시할 수 있습니다.
| 항목 | 설명 |
|---|---|
| 트리거 | 차트 도구의 별도 버튼(차트별로 위치 달라질 수 있음) |
| 모달 제목 | 🎯 "타임라인 추가" |
| 안내 | "에셋 이벤트 타임라인을 차트에 추가합니다. 에셋을 선택하신 후, [타임라인 추가] 버튼을 클릭하십시오." |
| 에셋 선택 | t_asset_id 셀렉터 (240px) — 등록된 설비 목록에서 선택 |
| 확인 | 타임라인 추가 버튼 |
타임라인이 추가되면 차트 하단에 그 자산의 이벤트(가동/정지/이상)가 색상 막대로 그려져 시계열과 함께 비교할 수 있습니다.
스냅샷 화면 (/snapshot/index)
스냅샷은 트렌드와 비슷한 구성이지만, 일정 간격(분 단위) 으로 샘플링된 값만 표 형태로 보는 데 최적화된 화면입니다.
상단 검색 영역
🔪 스냅샷 [기간 ▭▭▭▭] [간격 ▼] [조회] [↻]
| 컨트롤 | 설명 |
|---|---|
기간 입력 (search_time) | 트렌드와 동일 (280px, 가운데 정렬) |
간격 셀렉터 (term) | 시스템 정의 스냅샷 주기 옵션 (예: 1_MIN/5_MIN/30_MIN/1_HOUR/1_DAY) |
| 조회 | search() — 조건으로 표 갱신 |
| 새로고침 | refresh() — 화면 초기화 |
좌측 영역
스트림/트렌드와 동일한 태그 트리 패널 (사이트 셀렉터·에셋/연결 탭·검색).
우측 영역
좌측 트리에서 체크한 태그들의 스냅샷 값을 시간 순서로 표시합니다. 표 형태이며, 각 행은 한 시각, 각 열은 한 태그의 값을 보여 줍니다.
활용 예: 1분 간격으로 5개 태그를 일주일 동안 관찰 → 행 1만 개 × 열 5개 형태로 정리되어 외부 도구로 가져가기 쉬움.
데이터 출력 화면 (/data/index)
수집된 데이터를 일괄 추출(CSV/Excel)하는 화면입니다.
| 영역 | 내용 |
|---|---|
| 상단 도구 | 기간/사이트/태그 선택 + 출력 형식 선택 |
| 출력 형식 | CSV / Excel(.xlsx) — 시스템 환경에 따라 둘 중 하나 또는 둘 다 |
| 다운로드 | 클릭 시 서버가 파일을 생성해 다운로드 |
데이터 양이 많을수록 다운로드에 시간이 걸립니다. 100만 건 이상은 기간을 분할해 추출하시는 것을 권장합니다.
활용 시나리오
| 시나리오 | 화면 | 설정 예시 |
|---|---|---|
| 현재 라인 가동 모니터링 | 스트림 | 라인 자산 트리에서 핵심 5개 태그 체크 → 표시 5분 → 시작 |
| 어제 야간 시프트 트렌드 분석 | 트렌드 | 기간 21:00~07:00 / 샘플링 1분 / 차트 유형 선 |
| 한 달 원격 라인 비교 | 트렌드 | 기간 1개월 / 샘플링 LTTB 1% / TRIP 표시 ON |
| 알람 발생 직전 상황 재구성 | 트렌드 | 기간 알람 시각 ±10분 / 알람 표시 ON / 타임라인 추가 |
| 30분 단위 일일 보고용 데이터 | 스냅샷 | 기간 24시간 / 간격 30_MIN |
| 외부 분석 도구로 데이터 이전 | 데이터 출력 | 1주일 + 핵심 태그 5개 → CSV 다운로드 |
자주 묻는 질문
Q. 스트리밍을 시작했는데 차트가 채워지지 않습니다. A. 좌측 트리에서 태그를 체크하셨는지 확인하세요. 또한 대시보드 의 파이프라인 카드가 0 인지 확인 — 데이터 인입 자체가 끊긴 것일 수 있습니다.
Q. 트렌드 조회가 너무 느립니다. A. 데이터가 너무 많은 경우입니다. 🎚️ 버튼으로 샘플링 셀렉터를 켜고 LTTB(예: 1%) 또는 시간 주기(예: 5분)로 다운샘플링하세요.
Q. 차트 시리즈가 너무 많아 가독성이 떨어집니다. A. 차트 우상단 범례에서 시리즈 이름을 클릭하시면 해당 시리즈만 보이기/숨기기 토글됩니다. 또한 좌측 트리에서 태그 체크를 해제하면 그 태그가 차트에서 빠집니다.
Q. 알람 표시 옵션을 켰는데 차트에 마커가 안 보입니다. A. 조회 기간 내에 그 태그에 알람이 발생하지 않은 것입니다. 알람 화면에서 발생 이력을 먼저 확인하세요.
Q. TRIP 라인이 안 보입니다. A. TRIP 라인은 멀티 Y-AXIS 모드(여러 태그가 각자 다른 Y축을 가질 때)에만 표시됩니다. 단일 Y축 모드에서는 차트 가독성을 위해 표시되지 않습니다.
Q. 스트림과 트렌드의 차이는? A. 스트림은 현재 들어오는 데이터, 트렌드는 과거에 저장된 데이터를 봅니다. 또한 스트림은 자동 갱신되지만 트렌드는 운영자가 명시적으로 조회를 눌러야 갱신됩니다.
Q. 가상 포인트는 무엇인가요? A. 실제 센서 태그가 아닌, 다른 태그들의 값을 계산해 만들어 내는 사용자 정의 포인트입니다. 예: 두 온도 센서의 차이, 압력×유량 등. 스트림 화면의 가상 포인트 추가 버튼으로 정의합니다.
Q. 엑셀 다운로드가 빈 파일로 나옵니다. A. 차트가 비어 있거나 조회 결과가 없을 때 빈 파일이 생성됩니다. 먼저 차트가 정상적으로 그려지는지 확인 후 다운로드하세요.
Q. 한 화면에 너무 많은 태그를 체크하면 어떻게 되나요? A. 차트 가독성·렌더링 속도를 위해 한 번에 10~20개 이내로 제한하시기를 권장합니다. 그 이상이면 LTTB 샘플링으로 데이터 양을 줄이세요.