GoWindGoWind
Home
Framework
GoWind Toolkit
  • Open Source

    • GoWind Admin (Admin Platform)
    • GoWind CMS (Content Management)
    • GoWind UBA (Behavior Analytics)
    • GoWind Shop (E-commerce)
    • GoWind Kanban (Kanban Boards)
    • GoWind Ledger (Personal Finance)
    • GoWind ShortPlay (Short Drama)
    • GoWind Ops (Operations Platform)
    • RushWind (Rust Ecosystem)
  • Open Core (Community + Enterprise)

    • GoWind OA (Office Collaboration)
    • GoWind ERP (Procure-to-Pay)
    • GoWind WMS (Warehousing)
  • Commercial

    • GoWind IM (Instant Messaging)
    • GoWind IoT (IoT Platform)
    • GoWind Edu (AI Education)
    • GoWind MES (Manufacturing Execution)
    • GoWind CDC (Data Pipeline)
    • GoWind SDP (Zero-Trust Gateway)
    • GoWind Quant (Quant Research)
    • GoWind Trade Radar (Export Sourcing)
    • GoWind Game Radar (Game Greenlight)
  • 简体中文
  • English
GitHub
Home
Framework
GoWind Toolkit
  • Open Source

    • GoWind Admin (Admin Platform)
    • GoWind CMS (Content Management)
    • GoWind UBA (Behavior Analytics)
    • GoWind Shop (E-commerce)
    • GoWind Kanban (Kanban Boards)
    • GoWind Ledger (Personal Finance)
    • GoWind ShortPlay (Short Drama)
    • GoWind Ops (Operations Platform)
    • RushWind (Rust Ecosystem)
  • Open Core (Community + Enterprise)

    • GoWind OA (Office Collaboration)
    • GoWind ERP (Procure-to-Pay)
    • GoWind WMS (Warehousing)
  • Commercial

    • GoWind IM (Instant Messaging)
    • GoWind IoT (IoT Platform)
    • GoWind Edu (AI Education)
    • GoWind MES (Manufacturing Execution)
    • GoWind CDC (Data Pipeline)
    • GoWind SDP (Zero-Trust Gateway)
    • GoWind Quant (Quant Research)
    • GoWind Trade Radar (Export Sourcing)
    • GoWind Game Radar (Game Greenlight)
  • 简体中文
  • English
GitHub
  • Introduction

    • GoWind UBA Product Introduction
  • Architecture Reference

    • UBA System Architecture
    • UBA Backend Module Overview
    • UBA Backend API Contract
    • UBA Frontend Architecture
  • Developer Guide

    • UBA Installation Guide
    • UBA Code Generation Pipeline Tutorial
    • Adding an External Service Tutorial
    • Adding a Business Entity Tutorial
    • Adding a Frontend Page Tutorial
  • Operations Guide

    • UBA Docker Deployment Guide
    • UBA Configuration Reference & Security Checklist
    • UBA PM2 Deployment Guide
    • UBA Superset BI Deployment Guide
  • Analyst Guide

    • Data Analyst Getting Started Guide
    • Basic Aggregation

      • Event Trend Analysis
      • Active Users Analysis
      • Group By Aggregation
    • Conversion & Paths

      • Funnel Analysis
      • Retention Analysis
      • Top Conversion Paths
      • Behavior Sequence Analysis
    • User Depth

      • Attribution Analysis
      • Distribution Analysis
      • User Segmentation
      • Click Heatmap
      • Interval Analysis
    • Lifecycle

      • User Lifecycle
      • Churn & Reactivation Analysis
      • New vs Returning Users
      • Matrix Quadrant Analysis
    • Revenue & Value

      • Revenue Analysis
      • Whale Tier (Payer Segmentation)
      • Historical LTV Analysis
    • Sessions & Anomalies

      • Session Analysis
      • Period-over-Period Comparison and Anomaly Detection
    • Gaming

      • Level Analysis (Game)
      • Server Retention (Game)
      • Online Stats Analysis (Game)
      • Economy Analysis (Game)
    • OLAP Cookbook
  • SDK Integration

    • Web SDK Integration Guide
    • C# SDK Integration Guide (Unity / Godot / .NET)
  • Appendix

    • UBA Appendix: Ports, Glossary, Known Limitations & FAQ

GoWind UBA Product Introduction

GoWind UBA (User Behavior Analytics, Chinese name "风行用户行为分析平台") is a multi-tenant user behavior analytics system built on Go (the go-kratos microservice framework) + Vue 3 + ClickHouse/Doris dual-engine OLAP. v1.0.0 has been officially released.

  • 25+ analysis models: 10 general analytics + 9 in-depth user insights + 6 game-specific
  • Growth loop: covers the full chain of "collect → analyze → archive → reach", with a built-in AI assistant
  • Dual-engine OLAP: Apache Doris (default) or ClickHouse, sharing the same business model
  • Multi-platform SDKs: Web SDK (auto-tracking / offline retransmission / sampling compliance) + C# SDK (Unity/Godot)
  • Open source and free: MIT license

Make every user behavior traceable, and every data insight within reach.

This page is the entry point for all UBA documentation. Whether you are a secondary developer, an operations engineer, or a data analyst, we recommend reading the "Reader Navigation" section first to find the reading path that suits you.


1. What Is UBA

UBA (User Behavior Analytics) is a data analysis technique for collecting, analyzing, and reporting user behavior on digital products such as websites, apps, and games. It helps enterprises understand user preferences, habits, and behavior patterns, so as to optimize product experience, improve conversion rates, enable precision marketing, and identify potential business and security risks.

The core data pipeline of GoWind UBA is a classic streaming data warehouse:

Client SDK  →  Collector (ingestion)  →  Kafka (buffering)  →  OLAP engine (Doris / ClickHouse, consumed and loaded via Routine Load)

Admin console  →  Admin Service (BFF)  →  Core (gRPC: modeling / query)  →  OLAP engine + PostgreSQL (business entities)

uba-ingest (assembly CLI) → table creation / Routine Load assembly / daily ETL (intraday looping supported)

On the write path, Core does not handle event ingestion by default — after the Collector sends events to Kafka, Doris Routine Load loads them directly; Core is responsible for read-side modeling and queries. See System Architecture for details.


2. Feature Overview

25+ Analysis Models

AnalyticsService provides 25+ analysis models, grouped into three categories by scenario: 10 general analytics, 9 in-depth user insights, and 6 game-specific, covering event trends, active users, funnels, retention, conversion paths, user segmentation, revenue/LTV, level analysis, merged-server retention, concurrent online users (PCU/ACU), in-game economy, and more.

The documentation site provides a dedicated page for each model (including definition notes and usage guides); see Data Analyst Getting Started for the entry point.

Growth Loop

Built around "collect → analyze → archive → reach", UBA offers a complete set of closed-loop capabilities:

CapabilityDescription
Persistent segmentsUser segments are stored persistently for reuse by downstream analysis and reach
Custom dashboardsFreely combine charts to build your own dashboards
Threshold alertsAlerts are triggered when a metric crosses a threshold
Scheduled reportsGenerate and push analysis reports on schedule
Feature flags & A/B testingFeature flag control + A/B experiment comparison
Marketing reachMarketing outreach targeting segmented users
Self-service SQLWrite SQL directly to query OLAP data
User 360A full-dimensional behavior profile of a single user
ID-MappingIdentity unification across platforms and sources
Dynamic tagsAutomatically maintain user tags based on rules
Visual trackingEvent tracking configuration without code changes
rrweb session replayUser session replay based on rrweb

Real-time Dashboards & Export

  • Real-time dashboards: based on SSE push, supporting two display modes;
  • Server-side full export: XLSX / CSV formats, covering 7 resource types.

Intraday Loop ETL

uba-ingest supports intraday looping ETL (--loop --every), so you can see the current day's data during the day instead of waiting until the next day.

Notification Domain

CapabilityDescription
Multiple channelsIn-app messages / Email / SMS / Webhook
Event routingConfigure routing rules per event
Message templatesTemplated notification content
Delivery ledgerFull delivery records are queryable

Risk Engine

Risk rule configuration and risk event management. The reporting channel supports mixed reporting of behavior events and risk events to identify abnormal behavior.

AI Module

CapabilityDescription
ChatAI chat assistant
RAGKnowledge retrieval augmented Q&A
NL2SQL data Q&ANatural-language data querying via NL2SQL, read-only execution
Q&A auditExecution audit records of NL2SQL data Q&A
Report AI summaryAutomatically generate AI summaries for reports
Tenant token quotaPer-tenant control of AI token usage

3. System Architecture

Service Composition

ServicePositioningResponsibilities
admin-serviceAdmin console BFFServes the admin console HTTP API and SSE push
collector-serviceIngestion BFFReceives SDK reports, applies authentication, field validation and completion, forwards to Kafka; stateless, horizontally scalable
core-serviceCore serviceHeavy business logic such as analytics modeling, queries, segments, tags, notifications, and AI
uba-ingestAssembly CLITable creation, Routine Load configuration, daily ETL (supports --loop --every intraday looping)

Data Collection SDKs

SDKPlatformsFeatures
Web SDK (TypeScript)Browser / NodeAuto-tracking, offline retransmission, sampling compliance
C# SDK (.NET Standard 2.0)Unity (native + WebGL) / Godot 4 / .NETGame-specific dimensions serverId / level

4. Interface Preview

Analytics dashboardEvent analysis
Analytics dashboardEvent analysis

5. Deployment & Experience

  • One-click deployment with Docker Compose: the OLAP engine uses Doris (FE/BE) by default, switchable to ClickHouse; see Docker Deployment
  • Data loading: Kafka + Routine Load consumption, assembled by uba-ingest
  • Optional BI: Apache Superset container connects directly to the engine to build dashboards on fact tables; see Superset Deployment
  • Demo data: the repository provides sql/postgresql/demo-data.sql; import it to get out-of-the-box analyzable data

About the online demo

UBA has no public demo site yet. Local experience path: follow Docker Deployment to start the three services and dependency components, import the demo data sql/postgresql/demo-data.sql, then log in to the admin console and start analyzing.

Business cooperation and technical support WeChat: yang_lin_bo


6. Reader Navigation

This documentation set is organized by role. Choose your reading path based on who you are:

Secondary Developers

Care about "how to do secondary development on UBA: adding APIs, pages, and entities".

  1. First read the Installation Guide to get the three services running
  2. Read System Architecture and Backend Module Overview to build a global picture
  3. Read Backend API Contract to understand the proto-first development model
  4. Follow the hands-on tutorials: Code Generation Pipeline, Adding an External Service, Adding a Business Entity, Adding a Frontend Page
  5. When integrating SDKs, read Web SDK Integration / C# SDK Integration

Operations Engineers

Care about "how to deploy, configure, monitor, and ensure stability".

  1. Read System Architecture to learn about the three services and dependencies
  2. Deployment: Docker Deployment, Configuration Reference (includes a default password/secret security checklist — rotate them), PM2 Deployment
  3. BI integration: Superset Deployment
  4. Troubleshooting and port reference: Appendix

Data Analysts

Care about "where data comes from, where it is stored, how to query it, and how to analyze it".

  1. Read Data Analyst Getting Started (includes entries to the 25 analysis model pages and a map of OLAP table fields)
  2. Master the core analytics: Event Trend Analysis, Funnel Analysis, Retention Analysis
  3. Advanced queries: OLAP Query Cookbook
  4. Working with BI: Superset Deployment

7. Related Documentation & Getting Help

  • Project source code and README: go-wind-uba
  • Feedback and questions: GitHub Issues
  • Technical foundation: GoWind Admin documentation (UBA shares the same go-kratos + Ent + permission foundation with Admin/CMS)
  • General guide: Quick Start
  • Business cooperation and technical support WeChat: yang_lin_bo
  • Business cooperation and technical support email: yanglinbo@gmail.com
  • Open source license: MIT
Edit this page
Last Updated:: 11/3/26, 2:14 PM
Contributors: Bobo