Skip to content

Commit

Permalink
DOC-4239 added Count-min sketch examples (redis#3118)
Browse files Browse the repository at this point in the history
Co-authored-by: Vladyslav Vildanov <117659936+vladvildanov@users.noreply.github.com>
Co-authored-by: ofekshenawa <104765379+ofekshenawa@users.noreply.github.com>
  • Loading branch information
3 people authored Oct 9, 2024
1 parent 7cc1e32 commit 13682c4
Showing 1 changed file with 84 additions and 0 deletions.
84 changes: 84 additions & 0 deletions doctests/cms_tutorial_test.go
Original file line number Diff line number Diff line change
@@ -0,0 +1,84 @@
// EXAMPLE: cms_tutorial
// HIDE_START
package example_commands_test

import (
"context"
"fmt"

"github.com/redis/go-redis/v9"
)

// HIDE_END

func ExampleClient_cms() {
ctx := context.Background()

rdb := redis.NewClient(&redis.Options{
Addr: "localhost:6379",
Password: "", // no password docs
DB: 0, // use default DB
})

// REMOVE_START
rdb.Del(ctx, "bikes:profit")
// REMOVE_END

// STEP_START cms
res1, err := rdb.CMSInitByProb(ctx, "bikes:profit", 0.001, 0.002).Result()

if err != nil {
panic(err)
}

fmt.Println(res1) // >>> OK

res2, err := rdb.CMSIncrBy(ctx, "bikes:profit",
"Smoky Mountain Striker", 100,
).Result()

if err != nil {
panic(err)
}

fmt.Println(res2) // >>> [100]

res3, err := rdb.CMSIncrBy(ctx, "bikes:profit",
"Rocky Mountain Racer", 200,
"Cloudy City Cruiser", 150,
).Result()

if err != nil {
panic(err)
}

fmt.Println(res3) // >>> [200 150]

res4, err := rdb.CMSQuery(ctx, "bikes:profit",
"Smoky Mountain Striker",
).Result()

if err != nil {
panic(err)
}

fmt.Println(res4) // >>> [100]

res5, err := rdb.CMSInfo(ctx, "bikes:profit").Result()

if err != nil {
panic(err)
}

fmt.Printf("Width: %v, Depth: %v, Count: %v",
res5.Width, res5.Depth, res5.Count)
// >>> Width: 2000, Depth: 9, Count: 450
// STEP_END

// Output:
// OK
// [100]
// [200 150]
// [100]
// Width: 2000, Depth: 9, Count: 450
}

0 comments on commit 13682c4

Please sign in to comment.