Elasticsearch vs Cassandra vs Elasticsearch与Cassandra

 吴之薇_1989_l5g_112 发布于 2022-12-10 11:53

我正在学习NoSQL,并根据我的客户要求查看不同的选项.在提出这个问题之前我已经经历了各种资源(一个对NoSQL知之甚少的人)

我需要以更快的速度存储数据并读取数据.

完全故障安全且易于扩展.

能够搜索Analytics的数据.

我最后得到了一份简短的清单: Cassandra and Elasticsearch

我所理解的是Cassandra对我来说是一个完美的NoSQL存储解决方案,因为我可以使用索引编写数据和读取数据.它失败或失败的地方是分析.在未来,如果我想从数据中获取数据from_date to to_date,或者有更多方法来获取分析数据,如果我没有正确设计数据模型或保持长期视野,这在不断变化的世界中可能会非常困难.

虽然Elastic Search最好是索引(由Lucene支持),并且可以通过抛出一些随机文本随机搜索数据.但即使我想检索数据from_date to to_date(我希望它可能是),它的工作原理是否相同.但真正的问题是,它是一个搜索引擎,还是完美的NoSQL数据存储,如Cassandra?如果是的话,为什么我们仍然需要Cassandra?

如果这两者都在不同的世界,请解释一下!我们如何将它们结合起来以获得更有效的解决方案?

3 个回答
  • Cassandra + Lucene是个不错的选择.针对此问题有不同的举措,例如:

    Stratio的Cassandra Lucene索引 - 源自Stratio Cassandra,是Apache Cassandra的插件,扩展了其索引功能.(https://github.com/Stratio/cassandra-lucene-index)

    Stratio Cassandra,它与Apache Lucene本地集成,非常有趣.(https://github.com/Stratio/stratio-cassandra) - 这个项目已经被Stratio的Cassandra Lucene指数所取代

    Tuplejump Calliope,就像Stratio Cassandra一样,但它不太活跃.(https://github.com/tuplejump/stargate-core)

    DSE按Datastax搜索.它允许使用Cassandra和Apache Solr,但它是一个专有选项.(http://www.datastax.com/what-we-offer/products-services/datastax-enterprise)

    2022-12-11 02:04 回答
  • 我们的一个应用程序使用存储在Cassandra和ElasticSearch中的数据.我们使用Cassandra随时访问这些记录,并将数据复制到查询表中,以便遵循特定的应用程序端请求.对于比我们的查询表允许的更自由的搜索,ElasticSearch很好地执行该功能.

    我们问了同样的问题(我们自己)......"为什么我们不从ElastsicSearch获得所有东西?"

    答案是ElasticSearch被设计为搜索引擎,而不是持久数据存储.有时ElasticSearch会丢失写入内容.在ElasticSearch中很难进行模式更改,而不会将所有内容都移除并重新加载.为此,我编写了旨在使ElasticSearch与我们的Cassandra集群保持同步的作业.最近还有一个关于Quora的关于这个主题的讨论,它产生了类似的观点.

    话虽如此,ElasticSearch 作为搜索引擎非常有用.和卡桑德拉工程巨大的可扩展性,高性能的数据存储.但查询数据与搜索数据不同.有时候我们需要一个或另一个,两者的组合很适合我们的应用.它可能(或可能不)适合你的.

    至于分析,我在使用Cassandra Spark连接器方面取得了一些成功,可以提供更复杂的OLAP查询.希望有所帮助.

    2022-12-11 02:08 回答
  • 在我自己解决这个问题之后,我已经意识到当你想要确保使用可靠的写入操作保留数据模式时,像casandra这样的NoSQL数据库是好的,并且不想利用elasticsearch提供的索引操作.如果你想保留一些索引数据,那么弹性搜索是好的,以防你信任你的方案,只做更多的读取而不是写入.

    我的情况是数据分析.所以我在弹性搜索中保留了很多我的Latices,因为后来我想要遍历数据,看看下一步应该是什么.如果我想在我的分析线中对数据的模式进行大量更改,我会使用casandra.

    还有许多很好的代表工具,如kibana,你可以使用它来呈现你的数据和一些好的图形.也许我很懒,但他们很好看,他们帮助了我.

    2022-12-11 03:12 回答
撰写答案
今天,你开发时遇到什么问题呢?
立即提问
热门标签
PHP1.CN | 中国最专业的PHP中文社区 | PNG素材下载 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有