V2EX = way to explore
V2EX 是一个关于分享和探索的地方
Sign Up Now
For Existing Member  Sign In
daoqiongsi1101
V2EX  ›  Kafka

为什么很多场景数据先写入 kafka 再写入 elastic,而不是直接写 elastic?

  •  
  •   daoqiongsi1101 · Dec 12, 2021 · 2157 views
    This topic created in 1601 days ago, the information mentioned may be changed or developed.

    是因为直接写 elastic 会造成 es 压力太大吗,所以用 kafka 缓冲一下?

    5 replies    2021-12-12 23:57:33 +08:00
    abersheeran
        1
    abersheeran  
       Dec 12, 2021   ❤️ 1
    因为用 mq 可以消峰填谷啊。整体来看能节约机器资源。
    ipwx
        2
    ipwx  
       Dec 12, 2021   ❤️ 1
    因为现实世界中可能有突如其然的大量数据,让 es 暂时宕机。此时如果你每个客户端都自己重试,就会让这个突如其来再度翻几倍,那么你将损失一大批数据。Kafka 的写入比 es 快很多,所以相当于一个缓冲区,还是分布式的。
    akira
        3
    akira  
       Dec 12, 2021
    是的。如果你的数据量很小,就没必要上 kafka 了
    iyaozhen
        4
    iyaozhen  
       Dec 12, 2021
    就是你说的那样 但最终也取决于 ES 的性能,经常遇到队列阻塞,数据延迟的
    CEBBCAT
        5
    CEBBCAT  
       Dec 12, 2021
    原因很多,看设计者了。有的时候其他部门也要用这个事件
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Solana   ·   1389 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 35ms · UTC 16:29 · PVG 00:29 · LAX 09:29 · JFK 12:29
    ♥ Do have faith in what you're doing.