GH GambleHub

실시간 분석

1) 목적 및 사업 가치

실시간 분석 (RTA) 은 시간이 아닌 몇 초 안에 반응을 제공합니다

AML/사기 방지: 예금 구조, 속도 공격, 위험 거래.
책임있는 게임 (RG): 한계 초과, 위험 패턴, 자기 배제.
SRE/운영: SLA 분해, 오류 버스트, 클러스터 과열의 조기 감지.
제품 및 마케팅: 개인화 트리거, 미션/퀘스트, 실시간 세분화.
운영보고: 거의 실시간 GGR/NGR, 홀/공급자의 대시 보드.

목표: p95 엔드 투 엔드 0. 5-5 부, 완전 99. 5%, 가용성은 99 이상입니다. 9%.


2) 참조 아키텍처

1. Ingest/Edge- '/이벤트/배치 '(상태/2/3), gRPC, OTel 수집기; 체계 검증, 중복 방지, 지리 라우팅.
2. 이벤트 버스-Kafka/Redpanda ('user _ id/tenant/market', DLQ, 3-7 일 유지 참여).
3. 스트림 처리-Flink/Spark Structured Streaming/Beam: 고마운 운영자, CEP, 워터 마크, 지연 시간, 데드 업 허용.
4. 온라인 강화-Redis/Scylla/ClickHouse 전망대 (RG 제한, KYC, BIN → MCC, IP → Geo/ASN), 타임 아웃 및 대체가있는 비동기 호출.
5. 서빙-ClickHouse/Pinot/Druid (운영 쇼케이스 1-5 분), Feature Store (온라인 표지판), 웹 후크/발권/SOAR.
6. 레이크 하우스-장기 통합, 재생 및 조정을위한 브론즈/실버/골드.
7. 관찰 가능성-파이프 라인 지표, 추적 (OTel), 로그, 계보 및 비용 대시 보드.


3) 신호 및 분류

지불: '지불. 예금/철회/청구 회수 '.
게임: '게임. 내기/지불 ', 세션.
인증 및 동작: '소. 로그인/실패', 장치 전환, 속도.
작동: 대기 시간, 오류율, 난로 재시작, 채도.
준수: 제재 심사, RG 플래그, DSAR 이벤트.

각 유형에는 도메인 소유자, 스키마, 신선도 SLO 및 최신 데이터 정책이 있습니다.


4) Windows, 워터 마크 및 최신 데이터

창: 텀블링 (고정), 호핑, 세션.
워터 마크: "시간별 지식" 경계 (보통 2-5 분).
뒤늦은 이벤트: 추가 조정 문제, 플래그 'lat = 참', 강력한 지연이있는 DLQ.

Flink SQL 예 (10 분 침전 속도):
sql
SELECT user_id,
TUMBLE_START(event_time, INTERVAL '10' MINUTE) AS win_start,
COUNT() AS deposits_10m,
SUM(amount_base) AS sum_10m
FROM stream.payments
GROUP BY user_id, TUMBLE(event_time, INTERVAL '10' MINUTE);

5) CEP 및 안정적인 집계

키: 'user _ id', 'diche _ id', 'payment. 계정 _ id '.
상태: 슬라이딩 카운터/합계, 중복 제거를위한 블룸 필터, TTL.
CEP 패턴: 구조화 (<임계 값, 3 배, T 창), 장치 스위치, RG 피로.

CEP 의사 코드:
python if cnt_deposits(last=10MIN) >= 3 and sum_deposits(last=10MIN) > THRESH and all(d.amount < REPORTING_THRESHOLD):
emit_alert("AML_STRUCTURING", user_id, snapshot())

6) 정확한 한 번, 순서 및 demmpotence

처리 중 '이벤트 _ id' (TTL 24-72 h) 에 의한 버스 + 디드 업에서 적어도 한 번은 배송됩니다.
주문: 키별로 분할 (로컬 순서가 보장됨).
싱크: 거래 커밋 (2 상) 또는 dempotent upsert/merge.
전송/받은 편지함: OLTP의 도메인 이벤트 거래 게시.


7) 온라인 농축 및 기능 상점

전망: RG 제한, KYC 상태, BIN → MCC, IP → Geo/ASN, 시장/세금, 이벤트 당시 FX.
비동기 호출: 타임 아웃이있는 제재/APP API; 오류- '알 수 없음' + 리트레이/캐시.
피처 스토어: 온라인/오프라인 협상; 하나의 변환 코드베이스.


8) 실시간 상점 및 서핑

ClickHouse/Pinot/Druid: 2 분/분 집계, 구체화 된 전망, SLA는 1-5 분 지연됩니다.
API/GraphQL: 대시 보드/위젯의 대기 시간이 짧습니다.
경고: 풍부한 컨텍스트가있는 webhooks/Jira/SOAR (trace _ id, 마지막 이벤트).

ClickHouse 예 (분당 GGR):
sql
CREATE MATERIALIZED VIEW mv_ggr_1m
ENGINE = AggregatingMergeTree()
PARTITION BY toDate(event_time)
ORDER BY (toStartOfMinute(event_time), market, provider_id) AS
SELECT toStartOfMinute(event_time) AS ts_min,
market,
provider_id,
sumState(stake_base) AS s_stake,
sumState(payout_base) AS s_payout
FROM stream.game_events
GROUP BY ts_min, market, provider_id;

9) 측정 항목, SLI/SLO 및 대시 보드

권장 SLI/SLO:
  • p95 섭취 → 경고
  • 그림% 1개의 캡션을 편집했습니다. 5%; 스키마 유효도는 99 이상입니다. 9%; 추적 범위는 98% 이상입니다.
  • 서비스 가용성을 99 이상으로 스트리밍하십시 9%; 늦은 비율은 1% 입니다.
대시 보드 (최소):
  • 파티/주제별로 걸레질; 운영자의 바쁜 시간; 상태 크기.
  • 깔때기 "sobytiye → pravilo → key", 도메인 별 정밀/리콜.
  • 열 카드 늦게/완전성; 핫 키 맵.

10) 스트리밍 DQ (품질)

잉게 스키마 검증: 스키마/에넘/크기 제한, 복제 방지.
스트림시: 완전성/dup 비율/후기 비율, 창 정확성 (이중 계산 없음).
반응 정책: 중요한 → DLQ + 호출기; 주요/사소한 → 태깅 + 보고서.

YAML 예:
yaml stream: payments rules:
- name: schema_valid type: schema severity: critical
- name: currency_whitelist type: in_set column: currency set: [EUR,USD,GBP,TRY,BRL]
- name: dedup_window type: unique keys: [event_id]
window_minutes: 1440

11) 개인 정보 보호, 보안 및 거주

PII 최소화: ID 앨리어싱, 민감한 필드 마스킹, PAN/IBAN 토큰 화.
데이터 레지던트: 지역 파이프 라인 (EEA/UK/BR), 개별 KMS 키.
DSAR/RTBF: 다운 스트림 상점의 선택적 편집; 사례/보고서에 대한 법적 보류.
감사: 변경 불가능한 액세스/규칙 변경 로그, 로깅 해제.


12) 경제와 생산성

샤딩/키: "핫" 키 (소금/복합), 당사자의 균형을 피하십시오.
상태: TTL, 컴팩트 한 스냅 샷, RocksDB/상태 백엔드 튜닝.
사전 집계: 시끄러운 테마의 초기 단계에서 줄입니다.
샘플링: 중요하지 않은 지표 (트랜잭션/규정 준수 아님) 에만 해당됩니다.
충전: 테마/작업 예산, 재생 할당량 및 무거운 요청.


13) 프로세스 및 RACI

R: 스트리밍 플랫폼 (정보/릴리스), 도메인 분석 (규칙/기능), MLops (점수/기능 저장소).
A: 도메인 별 데이터/위험/준수 책임자.
C: DPO/Legal (PII/보존), SRE (SLO/사건), 아키텍처.
I: 제품, 지원, 마케팅, 재무.


14) 구현 로드맵

MVP (2-4 주):

1. Kafka/Redpanda + 2 중요한 주제 (예: '결제', '지정').

2. 워터 마크, 중복 제거 및 1 CEP 규칙 (AML 또는 RG) 을 사용한 플링크 작업.

3. ClickHouse/Pinot (1-5 분) 의 운영 쇼케이스, 지연/완성 대시 보드.

4. 인시던트 채널 (webhooks/Jira), 기본 SLO 및 경고.

2 단계 (4-8 주):
  • 온라인 농축 (Redis/Scylla), Feature Store, 비동기 전망대.
  • 코드, 카나리아/A-B, 스트리밍 DQ로서의 규칙 관리.
  • 컨베이어의 지역화, DSAR/RTBF 절차, 사건에 대한 법적 보류.
3 단계 (8-12 주):
  • 다중 지역 활성 활성, 재생 및 What-if 시뮬레이터, 자동 임계 값 보정.
  • 골드 스트림 매장 (GGR/RG/AML), 거의 실시간보고.
  • 비용 대시 보드, 청구서, DR 연습.

15) 예 (조각)

Flink CEP - 장치 전환:
sql
MATCH_RECOGNIZE (
PARTITION BY user_id
ORDER BY event_time
MEASURES
FIRST(A.device_id) AS d1,
LAST(B.device_id) AS d2,
COUNT()      AS cnt
PATTERN (A B+)
DEFINE
B AS B.device_id <> PREV(device_id) AND B.ip_asn <> PREV(ip_asn)
) MR
카프카 스트림-dem 등원 필터:
java if (seenStore.putIfAbsent(eventId, now()) == null) {
context.forward(event);
}

16) 사전 판매 점검표

  • 레지스트리 계획/계약, 백 컴패트 테스트는 녹색입니다.
  • 포함 된 워터 마크/허용 된 지연 시간, dedup 및 DLQ.
  • 구성 SLO 및 경고 (지연/후기/염색/상태 크기).
  • 캐시와 타임 아웃으로 농축; 대체 "알 수 없음".
  • 규칙/모델에 대한 RBAC/이중 제어; 로그를 변경할 수 있습니
  • 규칙/상점 창 문서; 런북 및 재생/롤백.

17) 빈번한 실수와 피하는 방법

이벤트 시간을 무시하십시오: 워터 마크가 없으면 메트릭이 "플로트" 됩니다.
중복 없음: 잘못된 경고, 이중 계산.
핫 키: 파티의 왜곡 → 소금/리 샤딩.
핫 경로의 동기식 프론트 엔드 API: async + 캐시 만.
관리되지 않는 비용: 집계, TTL 상태, 할당량, 비용 모니터링.
시뮬레이터 없음: 재생이없는 롤아웃 → 회귀.


18) 결론

실시간 분석은 "빠른 BI" 가 아니라 계약, 고정 논리, CEP, 워터 마크, 온라인 농축 및 엄격한 SLO를 갖춘 관리 회로입니다. 이러한 관행에 따라 플랫폼은 몇 초 내에 정확한 신호 및 결정을 수신하여 제어 된 비용으로 규정 준수, 제품 시나리오 및 운영 탄력성을 유지합니

Contact

문의하기

질문이나 지원이 필요하시면 언제든지 연락하십시오.우리는 항상 도울 준비가 되어 있습니다!

통합 시작

Email — 필수. Telegram 또는 WhatsApp — 선택 사항.

이름 선택 사항
Email 선택 사항
제목 선택 사항
메시지 선택 사항
Telegram 선택 사항
@
Telegram을 입력하시면 Email과 함께 Telegram에서도 답변드립니다.
WhatsApp 선택 사항
형식: +국가 코드 + 번호 (예: +82XXXXXXXXX).

버튼을 클릭하면 데이터 처리에 동의하는 것으로 간주됩니다.