github.com/nutsdb/nutsdb@v1.0.4/examples/batch/read/main.go (about) 1 package main 2 3 import ( 4 "fmt" 5 "log" 6 7 "github.com/nutsdb/nutsdb" 8 "github.com/xujiajun/utils/strconv2" 9 "github.com/xujiajun/utils/time2" 10 ) 11 12 var ( 13 db *nutsdb.DB 14 bucket string 15 ) 16 17 func init() { 18 time2.Start() 19 db, _ = nutsdb.Open( 20 nutsdb.DefaultOptions, 21 nutsdb.WithDir("/tmp/nutsdbexample/example_batch"), 22 // nutsdb.WithRWMode(nutsdb.MMap), 23 // nutsdb.WithSyncEnable(false), 24 ) 25 bucket = "bucket1" 26 fmt.Println("load cost:", time2.End()) 27 } 28 29 func main() { 30 time2.Start() 31 32 if err := db.View( 33 func(tx *nutsdb.Tx) error { 34 for i := 0; i < 10000; i++ { 35 key := []byte("namename" + strconv2.IntToStr(i)) 36 if _, err := tx.Get(bucket, key); err != nil { 37 log.Println("key", string(key)) 38 return err 39 } 40 } 41 return nil 42 }); err != nil { 43 log.Fatal(err) 44 } 45 46 fmt.Println("read cost", time2.End()) 47 }