ข้อมูลหลักการวิเคราะห์

การวิเคราะห์แบบเรียลไทม์

นับเหตุการณ์ในขณะที่เกิดขึ้น จัดอันดับสิ่งที่กำลังมาแรง และดูว่าคีย์ใดรับภาระ

ต่อเหตุการณ์
O(1)
รายการที่กำลังมาแรง
สด
เมตริก Prometheus
ในตัว
ขั้นที่ 1 จาก 4
นับทุกการดู

หนึ่งตัวนับต่อวัน แต่ละเหตุการณ์คือการเพิ่มค่าในหน่วยความจำครั้งเดียว

เซสชันตัวอย่างplaying
# นับทุกการดู
hotkv> INCR pageviews:2026-10-16
(integer) 184213

ตัวอย่างแบบแอนิเมชันพร้อมคำสั่ง HotKV จริงและคำตอบตัวอย่าง คลิกขั้นตอนใดก็ได้เพื่อข้ามไปยังขั้นนั้น คำสั่งและคำตอบยังคงเป็นภาษาอังกฤษ ตรงตามที่คุณพิมพ์และเห็นใน HotKV

ปัญหา

แดชบอร์ดที่ล่าช้าเป็นนาทีไม่ใช่เรียลไทม์ การเขียนทุกการดูหน้าลงฐานข้อมูลแล้วรวมค่าทีหลังมีค่าใช้จ่ายสูง และเมื่อคีย์เดียวรับทราฟฟิกส่วนใหญ่อย่างกะทันหัน มักรู้ก็ต่อเมื่อโหนดล้มไปแล้ว

HotKV จัดการอย่างไร

ตัวนับและ sorted set รับสตรีมเหตุการณ์ที่ไหลเข้ามาไม่หยุดได้ในราคาถูก และอ่านยอดรวมได้ทุกเมื่อ การตรวจจับ hot key แสดงว่าคีย์ใดถูกเข้าถึงหนักที่สุด และเมตริกของเอนจินเองถูกส่งออกในรูปแบบ Prometheus

ทีละขั้นตอน

เกิดอะไรขึ้นบ้าง ทีละคำสั่ง

  1. 01

    นับทุกการดู

    หนึ่งตัวนับต่อวัน แต่ละเหตุการณ์คือการเพิ่มค่าในหน่วยความจำครั้งเดียว

    INCR pageviews:2026-10-16
  2. 02

    จัดอันดับสิ่งที่กำลังมาแรง

    Sorted set เก็บบทความเรียงลำดับเมื่อมีการดูเข้ามา

    ZINCRBY trending:articles 1 article:42
  3. 03

    อ่าน 10 อันดับต้น

    แดชบอร์ดรีเฟรชทุกวินาที

    ZREVRANGE trending:articles 0 9 WITHSCORES
  4. 04

    หา hot key

    เมื่อเปิดใช้ hotkey-tracking คีย์ที่ถูกเข้าถึงมากที่สุดจะแสดงรายการโดยไม่ต้องสแกน

    HOTKEYS TOP 3
เหมาะกับงานแบบไหน

สถานการณ์จริง

สื่อและการเผยแพร่

ห้องข่าวเฝ้าดูว่าเรื่องใดกำลังขึ้นมาทีละนาที และโปรโมตบนหน้าแรก

การวิเคราะห์ผลิตภัณฑ์

ตัวนับการใช้ฟีเจอร์รายวันป้อนแดชบอร์ดสดโดยไม่ต้องมีคลังเหตุการณ์ในเส้นทางหลัก

การปฏิบัติการ

การตรวจจับ hot key ชี้ไปที่คีย์เบื้องหลัง CPU ที่พุ่งขึ้นกะทันหันก่อนที่มันจะทำให้โหนดล้ม

อยู่ในตัว

สิ่งที่คุณได้รับ

ตัวนับราคาถูก

INCR ต่อเหตุการณ์ ต่อบักเก็ต

INCRINCRBY

รายการที่กำลังมาแรง

Sorted set เรียงลำดับเมื่อเหตุการณ์เข้ามา

ZINCRBYZREVRANGE

การตรวจจับ hot key

คีย์ที่ถูกเข้าถึงมากที่สุด แบบประมาณ โดยไม่ต้องสแกน

HOTKEYS TOP

เมตริก Prometheus

เมตริกของเอนจินเองบนพอร์ตเมตริก

ข้อมูลอ้างอิง:INCRZINCRBYHOTKEYS

คำถามที่พบบ่อย

นับต่อนาทีหรือต่อวันได้อย่างไร

ใส่บักเก็ตในชื่อคีย์ เช่น pageviews:2026-10-16 และตั้งเวลาหมดอายุเพื่อให้บักเก็ตเก่าถูกล้างเอง

นับผู้เยี่ยมชมที่ไม่ซ้ำได้อย่างไร

ใช้ HyperLogLog ด้วย PFADD และ PFCOUNT ดูกรณีใช้งานการนับเชิงความน่าจะเป็น

มอนิเตอร์ HotKV ด้วย Prometheus ได้ไหม

ได้ HotKV เปิดเมตริกในตัวในรูปแบบ Prometheus

กรณีใช้งานที่เกี่ยวข้อง

ลองกับเวิร์กโหลดของคุณเอง

HotKV ใช้โปรโตคอลของ Redis คุณจึงชี้ไคลเอนต์ที่มีอยู่มาที่ HotKV แล้วรันคำสั่งเดียวกันนี้ได้