- android - RelativeLayout 背景可绘制重叠内容
- android - 如何链接 cpufeatures lib 以获取 native android 库?
- java - OnItemClickListener 不起作用,但 OnLongItemClickListener 在自定义 ListView 中起作用
- java - Android 文件转字符串
根据我所做的研究,我怀疑键值存储不是可行的方法,但我想获得更多定向输入:
我有一个包含许多“文档”的应用程序。这些目前存储在某种 CMIS 存储库中。然而,应用程序只会在这些文档被索引到 elasticsearch 之后才与这些文档进行交互。这意味着所有读取操作都会命中 elasticsearch,所有写入操作都会同时更新 elasticsearch 和存储库。
请求的功能表明当前存储库过于严格,并且在该级别强制执行模型模式的理由为零。当然,这导致了对 NoSQL 选项的调查。
为了将这些“文档”填充到 elasticsearch 索引中,它们需要存在于某个地方,我必须能够获取所有并在它们加载到索引中时对它们进行分页(还有一些在此步骤中发生的聚合,以填充基于现有字段构建的字段)。
现在,get all 实际上是根据文档类型分阶段完成的,但是这个要求可能是可以协商的,而不是简单的get all all types 可能就足够了,但并不理想。
在我对键值存储的理解中,存储对它存储的值一无所知,它们只能通过一个键来引用。这让我想知道当我不打算在任何地方维护完整的 key 列表时,我是否可以执行 get all。我已经看到一些键值存储支持使用字典作为键(redis)。我不确定这是否意味着我可以按类型查询(如果它是字典中的一个条目)或者我是否需要知道完整的字典才能获取值?
因为只有在 elasticsearch 失败时才需要填充索引,所以性能不是我的首要任务(但它肯定不会受到伤害)。对我来说,MongoDB 似乎是一个近乎完美的选择。我可以存储文档并按类型轻松查询。
以防万一,对于文档存储,我一直在比较 CouchDB、Couchbase 和 MongoDB。对于键值存储,我一直在关注 Redis 和 BerkeleyDB。
最佳答案
在 Redis 中,您可以通过一些工作和以下命令获取所有键和值:
SCAN 命令也可以方便地实现以转储“redis-cli --scan”以及许多客户端库(例如 Python)中的所有内容。
您可能需要编写一些内容才能使其适用于您的特定场景,希望不会太困难。
注意:有一个 KEYS 命令(与 SCAN 的作用类似)不推荐用于现场制作。虽然没有什么能阻止您构建一个单独的独立从实例,从主实例复制,与主实例断开连接,然后按您的意愿使用从实例,而不会对任何服务于实时流量的任何东西产生任何影响。
关于mongodb - 键值存储是否适合需要 "get all"的用途?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28469482/
XML可以应用于 WEB 开发的许多方面,常用于简化数据的存储和共享 XML 把数据从 HTML 分离 现在的HTML 文档一般都是显示动态数据,每当数据改变时将花费大量的时间来编辑 HTML
在类(class)(方案)中,我们最近学习了允许函数接受任意数量参数的语法,例如; (define len (lambda args (length args))) >(len 1 2 3
在 redis-cli 中执行 info 命令时,会列出与该服务器相关的所有信息。 “evicted_keys”的目的是什么? 最佳答案 Redis 可以配置为根据需要自动清除键。如果这样配置,red
golang 空结构体 struct{} 可以用来节省内存 ? 1
有人可以解释一下资源文件夹中的 Info.plist 是什么吗?我如何在我的应用程序中使用它?提前致谢。 最佳答案 您可以在Info.plist文件中为所有类型的设备指定不同的常规资源和应用程序配置,
我需要减小可执行文件的大小,并且经常在我的可执行文件中将某些“不必要的” uses占用一定的大小。 例如: Unit1连接到Unit2,但是两个单元的导入为“ System.SysUtils”。 然后
我是 OOP 的新手。虽然我了解多态是什么,但我无法真正使用它。我可以有不同名称的函数。为什么我应该尝试在我的应用程序中实现多态性。 最佳答案 在严格类型化的语言中,多态性对于拥有不同类型对象的列表/
Possible Duplicate: What is the difference between a delegate and events? Possible Duplicate: Differ
这个问题在这里已经有了答案: Custom index.html javadoc page? (2 个答案) 关闭 7 年前。 我使用的是eclipse。一般情况下我们可以使用javadoc.exe
你能解释一下吗ValidateAntiForgeryToken目的并向我展示有关 MVC 4 中的 ValidateAntiForgeryToken 的示例? 我找不到任何解释此属性的示例? 最佳答案
我正在学习 RxSwift 并试图了解 Observable 和 PublishSubject aka Sequence 之间的主要区别。 据我了解,Sequences/PublishesSubjec
有时有人说,在使用 Azure 表时,实际上存在第三个关键分区数据 - 表名称本身。 我在执行分段查询时注意到 TableContinuationToken 有一个 NextTableName 属性。
在Apple提供的aurioTouch项目中,听说在performRender()函数下的AudioController文件中的AudioBufferList ioData携带了mic到音频播放器的音
MSDN 文档没有详细解释它的用途。 由于它是可选的,我几乎假设它类似于某种元数据。 我现在如何看待它,我想用它来为特定用户指定缓存,例如: new CacheItem(key: "keyName",
我正在学习 browserify,我正在尝试用它做两件基本的事情: 转换(通过 shim)非 CommonJS 模块以实现易用性和依赖跟踪 捆绑项目特定的库 我找到了一个工作流程,说明如何使用 Gul
我通过按 CTRL + C 访问 eix 1.8.2 的 Break 菜单。它看起来像这样: BREAK: (a)bort (c)ontinue (p)roc info (i)nfo (l)oaded
在 codeLabs 教程(Android - Kotlin - Room with a View)中,他们使用“viewModelScope.launch(Dispatchers.IO)”来调用插入
我通过按 CTRL + C 访问 eix 1.8.2 的 Break 菜单。它看起来像这样: BREAK: (a)bort (c)ontinue (p)roc info (i)nfo (l)oaded
请耐心等待,因为我没有太多地使用压缩算法,所以这对你们中的一些人来说可能是显而易见的。当某些流媒体视频开始滞后时,我总是注意到这一点。当我看到这个问题时我才意识到我很好奇: Twitter image
关闭。这个问题是opinion-based 。目前不接受答案。 想要改进这个问题吗?更新问题,以便 editing this post 可以用事实和引文来回答它。 . 已关闭 3 年前。 Improv
我是一名优秀的程序员,十分优秀!