【问题标题】:Which cache to choose Neo4j Cache or any other?选择 Neo4j Cache 或任何其他缓存?
【发布时间】:2015-05-30 17:00:12
【问题描述】:

我正在使用 neo4j 2.1.5 和 SDN 3.2.2。

您好,我正在开发一个社交网络网络应用程序,其中我将用户社交图存储到 neo4j 数据库中。现在我想为用户提出建议,因为我想将整个用户社交图缓存到缓存中。 谁能告诉我使用 Neo4j 对象缓存或任何其他内存缓存(gauava、memcache 等)的缓存。

如果neo4j缓存,这是正确的做法吗?

@Autowired
   GraphDatabaseService graphdb;
   GlobalGraphOperations gop =  GlobalGraphOperations.at(graphdb);
   // Now to load all nodes into cache, do I have to traverse them.
   for (Node node : gop.getAllNodes()) {
      //to-do
   }

【问题讨论】:

    标签: caching neo4j


    【解决方案1】:

    一级缓存是文件系统+内存映射,这对于快速I/O至关重要。

    Neo4j 的对象缓存(尤其是如果您使用嵌入式)存储节点和关系(使用 cache_type=strong 积极)将加速您的查询。

    第三级缓存可以存储您的 Spring 域对象及其获取的关系。你可能只是将 Spring 的 @Cache 注释与 guava、eh-cache 或类似的东西一起使用。

    我的同事 Max 有一些关于 Neo4j 和较低级别缓存的博客文章: http://maxdemarzi.com/?s=caching

    【讨论】:

    猜你喜欢
    • 2012-05-03
    • 2016-10-15
    • 1970-01-01
    • 2017-12-28
    • 2022-10-14
    • 2017-12-25
    • 1970-01-01
    • 2020-05-29
    • 2019-06-04
    相关资源
    最近更新 更多