[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"project-10433":3},{"id":4,"name":5,"fullName":6,"owner":7,"repo":5,"description":8,"homepage":9,"htmlUrl":9,"language":10,"languages":9,"totalLinesOfCode":9,"stars":11,"forks":12,"watchers":13,"openIssues":14,"contributorsCount":15,"subscribersCount":15,"size":15,"stars1d":15,"stars7d":16,"stars30d":17,"stars90d":15,"forks30d":15,"starsTrendScore":18,"compositeScore":19,"rankGlobal":9,"rankLanguage":9,"license":20,"archived":21,"fork":21,"defaultBranch":22,"hasWiki":21,"hasPages":21,"topics":23,"createdAt":9,"pushedAt":9,"updatedAt":27,"readmeContent":28,"aiSummary":29,"trendingCount":15,"starSnapshotCount":15,"syncStatus":16,"lastSyncTime":30,"discoverSource":31},10433,"goleveldb","syndtr\u002Fgoleveldb","syndtr","LevelDB key\u002Fvalue database in Go.",null,"Go",6322,986,175,86,0,2,5,1,66.48,"BSD 2-Clause \"Simplified\" License",false,"master",[24,25,26],"database","go","leveldb","2026-06-12 04:00:50","This is an implementation of the [LevelDB key\u002Fvalue database](https:\u002F\u002Fgithub.com\u002Fgoogle\u002Fleveldb) in the [Go programming language](https:\u002F\u002Fgo.dev).\n\n[![Build Status](https:\u002F\u002Fapp.travis-ci.com\u002Fsyndtr\u002Fgoleveldb.svg?branch=master)](https:\u002F\u002Fapp.travis-ci.com\u002Fsyndtr\u002Fgoleveldb)\n\nInstallation\n-----------\n\n\tgo get github.com\u002Fsyndtr\u002Fgoleveldb\u002Fleveldb\n\nRequirements\n-----------\n\n* Need at least `go1.14` or newer.\n\nUsage\n-----------\n\nCreate or open a database:\n```go\n\u002F\u002F The returned DB instance is safe for concurrent use. Which mean that all\n\u002F\u002F DB's methods may be called concurrently from multiple goroutine.\ndb, err := leveldb.OpenFile(\"path\u002Fto\u002Fdb\", nil)\n...\ndefer db.Close()\n...\n```\nRead or modify the database content:\n```go\n\u002F\u002F Remember that the contents of the returned slice should not be modified.\ndata, err := db.Get([]byte(\"key\"), nil)\n...\nerr = db.Put([]byte(\"key\"), []byte(\"value\"), nil)\n...\nerr = db.Delete([]byte(\"key\"), nil)\n...\n```\n\nIterate over database content:\n```go\niter := db.NewIterator(nil, nil)\nfor iter.Next() {\n\t\u002F\u002F Remember that the contents of the returned slice should not be modified, and\n\t\u002F\u002F only valid until the next call to Next.\n\tkey := iter.Key()\n\tvalue := iter.Value()\n\t...\n}\niter.Release()\nerr = iter.Error()\n...\n```\nSeek-then-Iterate:\n```go\niter := db.NewIterator(nil, nil)\nfor ok := iter.Seek(key); ok; ok = iter.Next() {\n\t\u002F\u002F Use key\u002Fvalue.\n\t...\n}\niter.Release()\nerr = iter.Error()\n...\n```\nIterate over subset of database content:\n```go\niter := db.NewIterator(&util.Range{Start: []byte(\"foo\"), Limit: []byte(\"xoo\")}, nil)\nfor iter.Next() {\n\t\u002F\u002F Use key\u002Fvalue.\n\t...\n}\niter.Release()\nerr = iter.Error()\n...\n```\nIterate over subset of database content with a particular prefix:\n```go\niter := db.NewIterator(util.BytesPrefix([]byte(\"foo-\")), nil)\nfor iter.Next() {\n\t\u002F\u002F Use key\u002Fvalue.\n\t...\n}\niter.Release()\nerr = iter.Error()\n...\n```\nBatch writes:\n```go\nbatch := new(leveldb.Batch)\nbatch.Put([]byte(\"foo\"), []byte(\"value\"))\nbatch.Put([]byte(\"bar\"), []byte(\"another value\"))\nbatch.Delete([]byte(\"baz\"))\nerr = db.Write(batch, nil)\n...\n```\nUse bloom filter:\n```go\no := &opt.Options{\n\tFilter: filter.NewBloomFilter(10),\n}\ndb, err := leveldb.OpenFile(\"path\u002Fto\u002Fdb\", o)\n...\ndefer db.Close()\n...\n```\nDocumentation\n-----------\n\nYou can read package documentation [here](https:\u002F\u002Fpkg.go.dev\u002Fgithub.com\u002Fsyndtr\u002Fgoleveldb).\n","goleveldb 是一个用 Go 语言实现的 LevelDB 键值数据库。该项目提供了完整的键值存储功能，支持数据的读取、写入和删除操作，并且可以安全地在多个 goroutine 中并发使用。它还支持迭代器遍历数据库内容，包括按范围或前缀过滤的数据子集，以及批量写入操作。此外，goleveldb 允许用户通过设置选项来启用布隆过滤器等功能以优化性能。适用于需要轻量级持久化存储解决方案的应用场景，特别是在对性能有较高要求的情况下。","2026-06-11 03:28:22","top_topic"]