关于elasticsearch和Cassandra

来源:互联网 发布:网络体系结构的概念 编辑:程序博客网 时间:2024/05/16 12:21

最近项目中用到了elasticsearch和Cassandra,刚接触都不知道是干什么的,终于有时间总结下了,简单来说,Cassandra就是个数据库,ElasticSearch是一个搜索服务器


关于elasticsearch
ElasticSearch是一个基于Lucene的搜索服务器。它提供了一个分布式多用户能力的全文搜索引擎,基于RESTful web接口。Elasticsearch是用Java开发的,并作为Apache许可条款下的开放源码发布,是当前流行的企业级搜索引擎。设计用于云计算中,能够达到实时搜索,稳定,可靠,快速,安装使用方便。我们建立一个网站或应用程序,并要添加搜索功能,令我们受打击的是:搜索工作是很难的。我们希望我们的搜索解决方案要快,我们希望有一个零配置和一个完全免费的搜索模式,我们希望能够简单地使用JSON通过HTTP的索引数据,我们希望我们的搜索服务器始终可用,我们希望能够一台开始并扩展到数百,我们要实时搜索,我们要简单的多租户,我们希望建立一个云的解决方案。Elasticsearch旨在解决所有这些问题和更多的问题。


关于Cassandra:
            1概念: Cassandra是一套开源分布式NoSQL数据库系统
     2存储模型:与BigTable和其模仿者HBase不同,Cassandra的数据并不存储在分布式文件系统如GFSHDFS中,而是直接存于本地。与BigTable一样,Cassandra也是日志型数据库,即把新写入的数据存储在内存的Memtable中并通过磁盘中的CommitLog来做持久化,内存填满后将数据按照key的顺序写进一个只读文件SSTable中,每次读取数据时将所有SSTable和内存中的数据进行查找和合并。这种系统的特点是写入比读取更快,因为写入一条数据是顺序计入commit log中,不需要随机读取磁盘以及搜索。


0 0
原创粉丝点击