northisland
V2EX  ›  数据库

探讨一下,用 lucene 的索引表取代数据库的可行性

  •  
  •   northisland · Apr 10, 2015 · 1920 views
    This topic created in 4226 days ago, the information mentioned may be changed or developed.

    lucene只维护一张表,field内容支持文本、数字、时间。

    说说个人的看法,我认为lucene索引表,比数据库好

    查询速度,单一属性查询性能,lucene远超数据库,100w数据10ms以内搞定
    访问并发性,个人感觉不相上下
    lucene的field数据更加灵活,可以为多组值,也可以临时加field

    劣势就是,需要用python或者java写代码,没有数据库的SQL语句

    这些是我这个小新人的看法
    大家点评点评

    12 replies  •  2015-04-10 21:14:39 +08:00
    sun1991
    sun1991
    Apr 10, 2015❤️1
    1
    两者不是一个东西... 没什么可比性.
    northisland
    northisland
    OP
    Apr 10, 2015
    2
    @sun1991 都是维护一堆数据,差异在哪儿?
    Septembers
    Septembers
    Apr 10, 2015
    3
    @northisland 结构化
    windyboy
    windyboy
    Apr 10, 2015
    4
    看elasticsearch
    1120101929
    1120101929
    Apr 10, 2015
    5
    lucene在处理像SQL中的group by上面还不是很好。lucene现在提供的分组只支持一个字段。
    而且,lucene不能处理SQL中的约束。
    ivanlw
    ivanlw
    Apr 10, 2015
    6
    Elasticsearch和Apache Solr不就干这事儿的嘛,并发性好,还有漂亮的RESTful API
    msg7086
    msg7086
    Apr 10, 2015
    7
    @Septembers 或者说范式?
    @northisland
    关系型数据库本来就是维护关系的。你全放进一张表了,哪来的关系?
    如果你的数据本来就没有关系,那你本来就应该去用nosql类的软件了。
    zhangxiao
    zhangxiao
    Apr 10, 2015 via Android
    8
    如果你的应用可以接受冗余来保持数据关系,用索引会更快。虽然两者不同,但在现在很多场景里可以替换了
    ncisoft
    ncisoft
    Apr 10, 2015
    9
    倒排序能满足dml性能能吗?
    clino
    clino
    Apr 10, 2015
    10
    怎么感觉就是在说nosql数据库啊?
    otakustay
    otakustay
    Apr 10, 2015
    11
    我以前就是所有查询走lucene然后拿到id去数据库取全数据的,在我的实际环境下性能比mysql好多了
    zhicheng
    zhicheng
    Apr 10, 2015 via Android
    12
    比如事务?主键索引,你说的那个量级任何SQL数据库应该都不是问题。。。话说是谁让你们觉得RDBMS很慢的?
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Privacy   ·   Solana   ·   4917 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 40ms · UTC 07:24 · PVG 15:24 · LAX 23:24 · JFK 02:24
    ♥ Do have faith in what you're doing.