gpt4 book ai didi

memcached - 决定合适的键值存储 : Voldemort vs Cassandra vs Memcached vs Redis

转载 作者:IT王子 更新时间:2023-10-29 06:02:36 25 4
gpt4 key购买 nike

我正在为我的一个项目(医疗保健语义搜索引擎)使用三重存储数据库,它工作得很好。我正在考虑通过在三重存储之上使用一层键值存储来提高它的性能。由于我们进行了深度语义处理,所以三重存储查询速度较慢。

这就是我计划提高性能的方式:

1) 每天通过查询三重存储为所有查询词运行 Hadoop 作业。2) 将这些结果缓存在集群中的键值存储中。3)当用户搜索查询词时,将首先搜索键值存储而不是搜索三元组存储。只有在键值存储中找不到查询词时才会搜索三重存储。

我打算保存的键值对是“字符串”到“POJO 映射列表”。我可以将其保存为 BLOB。

我对使用哪个键值存储感到困惑。我主要寻找故障转移和负载平衡支持。我只需要一个提供上述功能的简单键值存储。我不需要在值或任何其他功能中进行排序/搜索。

如有错误请指正。我假设 memcached 和 Redis 会更快,因为它在内存中。但我不知道 Redis(Jredis) 或 memchaced(Spymemcached) 的 Java 客户端是否支持故障转移。我不确定是使用内存还是持久存储。我也在考虑 Voldemort、Cassandra 和 HBase。总体键值大约为 2GB 到 4GB 大小。对此的任何指示都会非常有帮助。

我对 nosql 和键值存储还很陌生。如果您需要更多详细信息,请告诉我。

最佳答案

您是否阅读了 memcached 教程文章(他们在那里解释了负载平衡方面,因为 memcached 实例根据您的 key 哈希来平衡负载,并且还讨论了 spymemcached 如何处理连接失败):

使用 Memcached 提高 Java 企业性能,第 1 部分:体系结构和设置 http://www.javaworld.com/javaworld/jw-04-2012/120418-memcached-for-java-enterprise-performance.html

使用 Memcached 提高 Java 企业性能,第 2 部分:数据库驱动的 Web 应用 http://www.javaworld.com/javaworld/jw-05-2012/120515-memcached-for-java-enterprise-performance-2.html

对于 memcached 中的企业级故障转移/跨数据中心复制支持,您应该使用 Couchbase提供这些功能。该产品是从 memcached 基础发展而来的。

关于memcached - 决定合适的键值存储 : Voldemort vs Cassandra vs Memcached vs Redis,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13469459/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com