• 请不要在回答技术问题时复制粘贴 AI 生成的内容
3country
V2EX  ›  程序员

这样的需求能实现吗?

  •  
  •   3country · Jul 9, 2020 · 2698 views
    This topic created in 2159 days ago, the information mentioned may be changed or developed.
    数据库数据 --> ES 创建索引和文档 --> 自动生成查用查询接口 --> 客户端调用

    数据库类型有很多种,mysql,Oracle,sqlserver,功能就是 选择一张表,然后系统自动查询表中的数据,同步到 ES,然后生成查询接口,如主键查询。

    职场新人求教
    9 replies    2020-07-09 18:57:05 +08:00
    235777178
        1
    235777178  
       Jul 9, 2020
    功能没有啥能不能实现,主要是实现成本高不高。
    bolide2005
        2
    bolide2005  
       Jul 9, 2020
    没啥不能的,mysql 不熟悉,但是 Postgresql 是可以通过监听流复制事件对数据库的变动进行响应的,我想 mysql 也有相关的东西。本质上相当于自己起一个服务,伪装成 mysql 的一个从库,主库数据发生变动,通知从库,你的服务把事件转换成 es 的数据,再给后端加一个查询接口
    dongisking
        3
    dongisking  
       Jul 9, 2020
    可以啊,通过 mysql binlog 同步到 es
    bolide2005
        4
    bolide2005  
       Jul 9, 2020
    流复制也可以同步存量数据,相当于新启动的从库做一次全量同步
    3country
        5
    3country  
    OP
       Jul 9, 2020
    大佬们都是从数据库角度出发的吗。。。说实话,完全不懂。。。老大让我用 java 做一个这样的 web 平台,目前已经实现根据前台传过来的表名拿到字段,然后就卡住了
    bolide2005
        6
    bolide2005  
       Jul 9, 2020
    @3country #5 那最好去问问你老大,我感觉你可能误会你老大的需求了,如果你是一个新人,而这个需求又相对复杂的话,你老大应该不会交给你做。还是再问问清楚的好。
    asmoker
        7
    asmoker  
       Jul 9, 2020
    MySQL 的话可以用 canal 试试 https://github.com/alibaba/canal
    3country
        8
    3country  
    OP
       Jul 9, 2020
    @bolide2005 感谢解答。之前聊过,应该跟我理解的差不多(我猜老大只是想给我个活干。。。因为我在的公司比较老派),我现在决定用 java 反射做,有了点思路,先做着试试
    sadfQED2
        9
    sadfQED2  
       Jul 9, 2020 via Android
    @3country 用反射?性能不用考虑吗,不过听你描述确实不用考虑了
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Solana   ·   2843 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 41ms · UTC 04:39 · PVG 12:39 · LAX 21:39 · JFK 00:39
    ♥ Do have faith in what you're doing.