问题标签 [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.
c# - RavenDB 和复合模式
假设我有这样的结构
Field 类可以是复合的,也可以包含从Field
该类派生的其他 Field,所以我有某种层次结构。表单作为实体文档保存到 RavenDB 中,并且工作正常。我只是想知道Form
从 RavenDB 获取实例,我希望 Raven 创建适当的类(类,派生自Field
类)。因此,假设我有两个派生类FieldDerived1
,并在取回它们后将FieldDerived2
它们放入Fields
集合中,我想要两个具有实际类型的元素 -以及我添加到这些类中的所有附加属性?Form
FieldDerived1
FieldDerived2
c# - Ravendb 多映射在同一组文档上构建查询对象?
我正在通过在项目中使用 RavendDb 并尝试做一些事情来学习它。我没有任何 SQL/关系数据库经验背景,这就是为什么我发现使用 map reduce 和文档数据库更容易。
我试图创建一个静态索引来创建一个对象,该对象保存 4 个条件字段的出现次数,而不是创建 4 个静态索引并在 4 个数据库查询后组合结果。
这是静态索引:
我将 4 个变量添加到每个 select new 语句中,以使索引在我的单元测试中编译和部署。正如我在一些示例中看到的那样,我似乎无法使用 AddMap(...) 函数(我意识到我只是覆盖了 Map 变量)。没有那么多客户,在 10 或 100 中,但可能有很多产品,每个客户肯定在 1000 中。
有没有一种简洁的方法来构建这个索引的意图?还是每个字段使用一个 map reduce 并将结果组合到调用者代码中是更好的方法?
database - 使用关系数据库/ORM 或文档数据库/ODM 的动机
很久没有从头开始创建项目了,现在面向文档的数据库(以及ODM)已经非常流行,所以在盲目走关系路线之前,我必须考虑它们。
任何人都可以尝试列出可能导致一种或另一种选择的动机/项目标准吗?
nosql - 何时使用什么数据库?ie 选择要使用的数据库时应该看哪些参数?
我正在开发一个具有多个模块的系统,
- 社交媒体用户人口统计 - (文档) - 姓名、地点、兴趣、工作、教育
- 社交媒体用户连接 - (图表) - 朋友
- CRM - (行和列) - 电信 + 银行等
仅举几例。我很确定我已经在每一项中都跨越了数百万条记录。
当我寻找可供选择的 NoSql 数据库时,每个类别中至少有 10 个。对于 Document 数据库,我有一个从MongoDB
到的数组列表DjonDB
。当我寻找图形数据库时,情况也是如此,依此类推。我还在http://nosql-database.org/看到了其他键值存储数据库、列式数据库等。
所以我想知道在这些数据库中选择时是否应该遵循任何通用的拇指规则,当列式数据库被优化时,键值存储最适合哪种类型的数据等等。
对于什么类型的数据,最适合的数据库是什么?为什么?最重要的是,对于什么类型的数据最不适合的数据库是什么?为什么?
谢谢
postgresql - 可以将 Postgres 用作文档数据库吗?
假设我们正在构建一个用于存储来自网站或移动应用程序的分析的数据库。事务不重要(可以丢弃),只会减慢速度,支持尽可能多的并发调用,最终可能会保持一致性,并且部分数据将是非结构化的(即用户可以传递随机 JSON blob作为分析日志调用的参数,我们将其存储在数据库中)。
像 Mongo 这样的东西将是一个合理的选择,因为它确实满足了我上面列出的大部分要求。然而,人们确实经常听说 Postgres 具有可定制以填补许多不同角色的能力。我想一个人可以禁用交易等。
我对 Postgres 设置不是很熟悉,因此我必须问:实际上是否可以调整 Postgres 以适应我上面列出的要求?
c# - 如何优化 RavenDB 查询以检索所有文档?
我正在尝试学习如何使用 RavenDB,为此我创建了一个基本示例。似乎初始化存储和查询需要花费大量时间!
这会产生以下输出:
从这个粗略的例子中,我可以看到:
- 初始化商店需要大量时间!
- 存储第一个实体(十个)需要相当长的时间。
- 第一次查询所有实体需要很多时间,但第二次则完全没有时间。
如何正确查询数据库中特定类型(EntityA)的所有文档?当然,RavenDB 不可能每个查询都需要索引吗?特别是对于没有任何标准的查询?
(注意:我打算使用嵌入在桌面应用程序中的 DB,其中列出所有文档用于显示 DB 的内容。)
json - 设计数据结构
我正在编写一个爱好 Web 应用程序。它目前将 JSON 对象发送到客户端,然后客户端将它们创建为博客文章。目前 JSON 对象如下所示:
有时顺序开始很重要。例如,如果我想为博客文章创建随机显示顺序。目前我使用一个单独的数组post_ids
,它看起来像["id1", "id2", ...]
,它的值用作上面 JSON 对象的键。
显然,我的对象可能如下所示:
但随后我将失去按 ID 索引的能力,并且每次都需要遍历我的数据。
有时我也有一个对象,我想获取它的 ID。我可以将 ID 包含到初始对象中:
设计包含这些 CouchDB/MongoDB 样式文档的数据结构的规范方法是什么?
database-design - 文档与列式数据库的场景
NoSQL 数据库可以分为 KV、Document、Columnar 和 Graph。我一直在试图弄清楚将哪种 NoSQL 用于不同的场景,阅读了几篇博客/文章,但仍然感到困惑。
假设我想存储员工详细信息。它可以存储在像 HBase 这样的列式数据库和像 Mongo 这样的文档数据库中。那么,Columnar vs Document 的场景是什么?我想根据查询模式,必须选择适当的数据库。
mongodb - 适用于 Windows XP 32 位的文档数据库
我正在寻找一个支持 Windows XP 32 位的文档数据库,满足以下要求:
- 不得中断支持。即我希望能够安装最新版本的数据库。MongoDB 不适合,因为它们不再支持 XP,而 CouchDB 不适合,因为它们不再支持任何 Windows 32 位。
- 应该比较简单。显然,该应用程序不是企业应用程序,因此像 Cassandra 这样的复杂数据库已经不存在了。事实上,我想避免列数据库,因为我认为它们的存在是为了解决企业级问题,而这里不是这样。另一方面,我不想要关系数据库,因为我想避免每次添加新字段时都升级数据库(并且它们将被添加)。
- 它应该支持对部分文档进行索引,例如 MongoDB。我可以使用关系数据库,如 hsqldb 将数据存储为 json 字符串。这使得添加新字段变得容易 - 无需更改架构。但是这些字段不能被数据库索引。同样,与 MongoDB 不同。
- 最后,数据库将与应用程序本身在同一台机器上运行 - MongoDB 会再运行一台机器,这会将应用程序的所有 RAM 都窃取给它自己。
所以,从某种意义上说,我正在寻找类似 MongoDB 的东西,但要支持 Windows XP 32 位。
有什么建议吗?
附言
我知道 Windows XP 在 MS 放弃支持它之前还有一年的寿命。但是,无论如何我必须支持XP。
c++ - 不仅网络数据库(桌面应用程序) - 面向文档
我正在寻找一个提供 SQLite 或 BerkeleyDB 访问权限的数据库:通过“进程内 API 调用”进行访问。那将用于桌面应用程序。
要求:
- 可以链接到桌面应用程序(无需运行单独的进程/服务器)
- 面向文档,具有可查询的元数据/字段
- 索引
- 持久性(磁盘存储)
- C++ 绑定