问题标签 [leveldb]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
2183 浏览

c++ - 如何从 char 指针转换为自定义对象指针

我正在使用 leveldb 来存储整数和 MyClass 对象的键值对。实际上,一个键可以包含多个这些对象。从数据库中检索数据时出现的问题。它可以编译,但是 MyClass 成员的值不是我放入数据库的值。

现在std::string value1可以只包含一个或多个 MyClass 对象。那么我该如何获得它们呢?

我已经尝试了以下不起作用的方法;

1.) 直接类型转换和memcpy

2.) reinterpret_cast 到 void 指针

MyClass 是几个公共成员的集合,例如 unsigned int 和 unsigned char,它具有稳定的大小。

我知道只有一个对象存在类似的问题。但在我的情况下,向量可以包含多个,它来自 leveldb 数据库。

编辑:解决方案

我为 MyClass 编写了(反)序列化方法,然后使它工作。感谢您的提示!

get方法如下(类似put):

0 投票
2 回答
3648 浏览

transactions - 当谈到数据库系统时,事务层是由什么构成的?

例如,LevelDB不支持多语句事务。我在某处读到您必须在“事务层”中处理这些问题。

这个层必须做什么才能将事务支持添加到不支持事务的较低级别的库中?

0 投票
2 回答
1770 浏览

c++ - 通过 LevelDB 将协议缓冲区序列化数据从 C++ 传递到 Python

尽管我遵循了 C++ 和 Python 的优秀协议缓冲区文档和教程,但我无法实现我的目标: - 从 C++ 进程中序列化数据。- 从同一进程将其插入 LevelDB。- 从 Python 进程中提取序列化数据 - 从同一个 Python 进程中反序列化 - 在 Python 中使用那些反序列化的数据

我可以使用 C++ 中的协议缓冲区(使用 std::string 容器)序列化我的数据。我可以将它插入LevelDB。但是,当我 levelDB->Get 我的序列化数据时,虽然 Python 似乎将它识别为一个字符串,并向我展示了它们的原始内容,但每当我将它反序列化为 Python 字符串时,它都是空的!

以下是我在 C++ 中序列化和插入数据的方式:

这是我尝试在 Python 中反序列化它的方法:

广告变量类型为 NoneType

编辑:在 db.Get() 之前,ab.ByteSize() 在 ParseFromString() 之后返回 0、76,我认为这是一个类型问题然后... + ab.ListFields() 返回unexploitable包含字段的列表:成功计算两个人实例,但无法让我访问它。

任何线索,关于我不明白的任何想法,我在这里做错了什么?

非常感谢!

0 投票
2 回答
7816 浏览

database - 如何在键/值存储之上构建数据库索引?

我正在阅读有关LevelDB并发现:

即将发布的 Chrome 浏览器版本包括 IndexedDB HTML5 API 的实现,该 API 构建在 LevelDB 之上

IndexedDB也是一个简单的键/值存储,具有索引数据的能力。

我的问题是:如何在键/值存储之上构建索引?我知道索引的最低级别是 n-ary 树,并且我了解数据在数据库中的索引方式。但是如何使用像 LevelDB 这样的键/值存储来创建数据库索引呢?

0 投票
1 回答
998 浏览

ip-geolocation - LevelDB 键,来自 csv 的值

我有大约 5M 行的巨大 csv 文件数据库,其中包含以下字段

我将这些存储在 LevelDB 中,使用 start_ip 作为键,rest 作为值。

如何检索键的记录

任何替代解决方案。

0 投票
2 回答
229 浏览

semantics - 从 id 检索 freebase quad 转储类型名称

我目前正在使用 freebase 转储开发一个项目,我将断言插入到 per-mid 排序的 LevelDB 中。我的目标是能够为给定的名称(例如 Bob Dylan)检索与其名称相关的所有类型。

例如,“Bob Dylan”将对应于“Musician”、“Film Producer”等,每个都对应于“/music/artist”、“/film/producer”等类型……

不幸的是,如果很容易找到 Bob Dylan 中路进入四轮转储

我希望现在能够以各种语言找到这些类型的名称。但我找不到在转储中检索它们的合乎逻辑的方法。

请问有什么线索吗?

0 投票
1 回答
201 浏览

webos - WebOS LevelDB 和 Google LevelDB 有区别吗?

WebOS LevelDBGoogle LevelDB之间有区别吗?

这两个独立的项目还是 WebOS LevelDB 只是 Google 的数据库与 WebOS 的集成?

0 投票
3 回答
8150 浏览

database - 同时存在多个levelDB数据库实例

有没有办法从多个程序访问 levelDB 数据库?是否有某种选项可以将 dababase 以只读方式打开?

现在,当从我得到的程序打开相同的数据库时:

干杯!

0 投票
1 回答
1626 浏览

c++ - leveldb 示例在 Windows 上不起作用:错误 LNK2029

为了测试 leveldb,我尝试在 VS 2008 上重现 leveldb 的示例。

我已经包含了leveldb/include 目录并链接了 libleveldb.lib。

结果

错误 LNK2019:未解析的外部符号“公共:静态类 leveldb::Status __cdecl leveldb::DB::Open(struct leveldb::Options const &,class std::basic_string,class std::allocator > const &,class leveldb: :DB * *)" (?Open@DB@leveldb@@SA?AVStatus@2@ABUOptions@2@ABV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@ std@@PAPAV12@@Z) 在函数 _main 中引用

错误 LNK2019:未解析的外部符号公共:__thiscall leveldb::Options::Options(void)" (??0Options@leveldb@@QAE@XZ) 在函数 _main 中引用

有谁知道如何解决这一问题 ?

0 投票
4 回答
9179 浏览

c# - C# 是否有一个好的 leveldb 端口?

我希望在我的纯 C# 项目中使用 leveldb。

我搜索了一个 C# 版本的 leveldb,但没有运气。

任何人都可以告诉我在哪里可以找到 C# 版本的 leveldb?

谢谢