问题标签 [document-database]

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 回答
165 浏览

google-app-engine - 在大表中,子(子)集合中的键值是否正常?

我正在使用 Google App Engine 和 Big Table。

我有一个person看起来像这样的实体:

phone_number属性存储为 JSON 格式 (db.Text) 的未索引文本块。如果我想在这种情况下引用特定的电话号码,我会解码 json,然后使用我正在寻找的特定密钥获取电话号码。

phone_number_search_property用于搜索。它可以通过电话号码进行搜索:"SELECT * FROM person WHERE phone_number_search_property = '5555555555'"

在这种情况下,引用实体内部电话号码的好方法是什么?在这里,我使用 UUID 键入每个值。这是一种“正常”且被接受的做事方式吗?如果不是,那是什么?

谢谢!

0 投票
2 回答
490 浏览

google-app-engine - 在 App Engine 中建模数据。子实体与文档样式

尝试在应用引擎中对一些高度连接但也有层次的数据进行建模。

这是一个例子:

一个实体,包含存储为 JSON blob 的数据结构:

一种方法是将phone_numbers集合存储为 JSON 文本的未索引 blob,然后添加搜索属性,以便可以通过电话号码查询人员:

具有父子关系的多个实体:

另一种方法是使用子实体和父实体:

一个用例:

这是高度关联的数据。一个人对象包含多个电话号码。但也可以拨打这些电话号码或从这些电话号码拨打电话。电话记录也需要参考这些电话号码。

父子实体关系的目的:

阅读文档后,我的印象是父子实体关系的目的是执行交易。

但是,在这种情况下它们是否也适用?将父级及其所有子级从数据存储中拉出与将一个实体与其“子级”拉出而不是存储为 JSON 文本 blob 一样有效吗?

基本问题

在谷歌应用引擎中是否有一种正常且可接受的方式来处理此类数据?

0 投票
1 回答
2016 浏览

ravendb - 面向对象数据库和文档数据库有什么区别?

面向对象数据库和文档数据库有什么区别?

我没有使用面向对象的数据库,但是当我使用文档数据库 (RavenDb) 时,我可以毫无问题地存储和读取通常的面向对象类。

0 投票
1 回答
189 浏览

database - DocumentDatabase 对象的实例化

我想使用 DocumentDatabase 对象。为此,我正在编写以下代码,但它不起作用。它给出 NullReferenceException “对象引用未设置为对象的实例。” 请告诉我这样做的正确方法。代码是:

0 投票
1 回答
981 浏览

authentication - 如何在 RavenDB 中对用户进行身份验证

服务器模式下 ravendb 的身份验证机制是什么。Authentication 包包含用于创建用户的 AuthenticationUser 类和用于验证用户的 AuthenticateClient 类。AuthenticateClient 类有一个功能

我不知道如何使用这个功能。这个函数需要 DocumentDatabase 对象。我不知道如何实例化 DocumentDatabase 对象。有没有办法实现身份验证?如果您知道,请告诉我更好的方法。提前致谢。

0 投票
1 回答
591 浏览

asp.net - sisoDB 是否使用 sql server 数据库来存储数据

我正在寻找与 asp.net 一起使用的 NoSQL 数据库,我来到了sisoDB。但据我了解,它使用 Sql server 来保存数据,因此它可以使用 sql server 功能,如安全性和...。

这是正确的吗 ?这种方法的优缺点是什么?

0 投票
0 回答
269 浏览

asp.net - 用于商业用途的免费嵌入式文档数据库

我正在查看我的 ASP.NET MVC 应用程序的文档数据库,我需要一些可以嵌入到我的应用程序中的东西,但也是免费的。我有一个公共网站,我还没有赚钱,但将来可能会。也就是说,我注意到有关这些服务器的以下内容:

  • RavenDB 不能以嵌入式形式免费用于商业用途
  • MongoDB 免费,但不能原生嵌入。有些人已经将它嵌入,但它可能需要 AGPL 许可,如果这是真的,我不能这样做(可以将 mongodb 用作嵌入式数据库吗?)。
  • db40 不可免费用于商业用途,但源代码通常不可用。

有没有快速免费的?同样,我不能将它作为服务器托管,但需要一个可嵌入的数据库到应用程序中。

谢谢。

0 投票
1 回答
178 浏览

c# - RavenDB 索引,组对象

我正在尝试更多地了解 RavenDB,目前专注于如何为 RavenDB 编写好的索引。

假设我有一个对象 Session,将组织作为属性,我想按组织对所有会话进行分组。而且我不希望结果包含所有会话的列表。我怎样才能做到这一点?

任何帮助表示赞赏!

0 投票
1 回答
3449 浏览

sql - 需要一种在 SQL 数据库中存储/查询 json 的有效方法

我正在实施一项服务,其中每个用户都必须拥有自己的 json/文档数据库。除了让用户通过示例查询 json 文档之外,数据库还必须支持涉及多个文档的 ACID 事务,因此我放弃了使用 Couch/Mongo 或其他 NoSQL 数据库(不能使用 RavenDB,因为它必须在 Unix 系统上运行)。

考虑到这一点,我一直试图想办法在 SQL 数据库之上实现它。到目前为止,这是我想出的:

每个用户都有一个包含这两个表的数据库,并且用户必须声明他需要查询哪些字段,以便系统可以正确填充“索引”表。因此,如果用户“A”将其帐户配置为启用按“姓名”和“年龄”进行查询,则每次该用户插入具有“姓名”或“年龄”属性的文档时,系统也会向“索引”插入一条记录表,其中 'property' 列将包含 name/age , 'value' 将包含属性值, 'document_id' 将指向相应的文档。

例如,假设用户插入以下文档:

这将导致对“文档”表的插入和对“索引”表的另外两个插入:

然后假设用户“A”向服务发送了以下查询:

此查询将被转换为以下 SQL:

我的问题:

  • 知道用户可能能够在他的查询中使用大量条件(比如说 20-30 个 AND 条件),这会导致子查询嵌套非常高,以上 SELECT 查询在大多数数据库系统上的效率如何( postgres,mysql ...)?
  • 上述解决方案对于最终将包含数百万/数十亿 json 文档的数据库是否可行?
  • 有没有更好的方法来满足我的要求?
  • 是否有可扩展的文档数据库可以进行涉及多个文档的 ACID 事务并在 Unix 系统上运行?
0 投票
1 回答
210 浏览

c# - 存储 FileInfo 实体时 SisoDB 的 StackOverflow 异常

这个问题是指SisoDB - 一个用 C# 编写的基于 SQL-Server 的文档数据库。

我正在尝试将 FileInfo 实体存储到数据库中。为了避免(潜在的)循环引用,我为我需要的字段定义了接口:

然后尝试存储一个 FileInfo 实体:

这会导致 StackOverflow 异常。任何想法为什么会这样,我该如何克服这个问题?