当前位置: 首页 > news >正文

wordpress 黑糖破解短视频搜索优化

wordpress 黑糖破解,短视频搜索优化,怎么看一个网站谁做的优化,wordpress 获取相关文章贡献者Github ID:luckyLJY 文章整理:曾辉 Apache SeaTunnel 作为一款强大的数据同步和转换工具,凭借其部署易用性、容错机制、数据源支持、性能优势、功能丰富性以及活跃的社区支持,成为了数据工程师们不可或缺的利器。 因其具有的…

贡献者Github ID:luckyLJY 文章整理:曾辉

Apache SeaTunnel 作为一款强大的数据同步和转换工具,凭借其部署易用性、容错机制、数据源支持、性能优势、功能丰富性以及活跃的社区支持,成为了数据工程师们不可或缺的利器。

因其具有的以下优良特性:

在数据源方面,支持多种传统数据库、以及现有流行的多数大数据存储;

数据同步方面,支持批流的数据同步方式,完美兼容离线同步、实时同步、全量同步、增量同步等实际应用场景;

其社区在技术更新上非常迅速,确保了中电信翼康能够及时获取技术支持与更新迭代。将其选型作为了数据集成主要技术。

SeaTunnel 不仅能够满足各种规模和类型的数据处理需求,为用户提供高效、稳定和灵活的数据处理解决方案。随着数据环境的不断演变和发展,SeaTunnel 将继续在数据同步和转换领域发挥领导作用,推动数据驱动的业务发展。

对于我们公司基于SeaTunnel的应用实践也可以参考这篇文章:https://mp.weixin.qq.com/s/SitGSc9iZYlH-nLpGR0AJw

在了解了 Apache SeaTunnel 的背景后,接下来我将分享如何快速参与其代码开发,完善功能。以自己首次贡献代码的经历为例,简述具体步骤。

代码环境搭建

  • 首先,在 SeaTunnel 的官方 GitHub 仓库地址:https://github.com/apache/seatunnel 进行 fork 操作,将代码仓库复制到自己的 GitHub 账户中。

  • 在本地使用 IDE(如 IntelliJ IDEA)克隆 fork 后的代码,并配置 Java 以及 Maven 仓库。

  • 编译拉取的代码,并确保代码格式化:

  • 编译构建项目:

  • 对编译打包完成的 SeaTunnel 代码进行测试:
    • 解压后的代码目录:

  • 启动服务端:

  • 提交测试案例:

  • 测试成功的环境如下:

这一步非常重要,它确保你拥有一个正确的开发环境,以便后续代码开发的顺利进行。

学习与实践 SeaTunnel 的工作流程

  • 官方提供的 SeaTunnel 工作流图:

通过该图我们可以看出,SeaTunnel 的工作流程包括:source(数据源)、transform(数据转换)、sink(数据目标),以及执行引擎。source 是数据的输入源,sink 是数据的输出目标,而 transform 则是将输入数据转换为目标数据的插件。SeaTunnel 支持多种执行引擎,包括其自带的 Zeta 引擎,以及 Flink 和 Spark。

  • 以 MySQL 到 MySQL 数据同步为例,以下是一个实际案例的 conf 配置文件:

    env {parallelism = 1job.mode = "BATCH"
    }source {jdbc {url = "jdbc:mysql://localhost:3306/test_his"driver = "com.mysql.cj.jdbc.Driver"user = "root"password = "123456"query = "select * from ods_jc_hzjbxxb;"properties {useSSL=falserewriteBatchedStatements=true}}
    }transform {
    }sink {jdbc {url = "jdbc:mysql://localhost:3306/api-server"driver = "com.mysql.cj.jdbc.Driver"user = "root"password = "123456"query = """insert into ods_jc_hzjbxxb (...) values (...);"""properties {useSSL=falserewriteBatchedStatements=true}}
    }
    

该配置实现了 MySQL 到 MySQL 的简单数据同步。请根据官方文档中的 connector-v2 示例,创建 JDBC 插件,并在 plugins/jdbc/lib 目录下放置 MySQL 连接器。然后重启 SeaTunnel 服务,将配置文件放在 config 目录下,并使用以下命令提交作业:

./bin/seatunnel.cmd --config ./config/mysql_jdbc.conf

通过日志可以验证数据同步是否成功,并在目标数据库中检查同步结果。

代码阅读

通过学习 SeaTunnel 的工作流程,主要调试 SeaTunnel 自带的Zeta引擎的执行过程,通过官方文档的阅读了解到 SeaTunnel 的作业运行模式有Local和集群模式,项目实际应用更多为集群模式,因此把调试集群的执行过程作为主要学习对象。

  • 服务端执行顺序的代码调试:

通过 server.execute() 方法查看服务端的执行流程:

通过代码调试的手段了解客户端启动的执行顺序

  • 通过命令行提交完会调用org.apache.seatunnel.core.starter.seatunnel.command.ClientExecuteCommand#execute方法
  • 调用org.apache.seatunnel.engine.client.job.ClientJobProxy#submitJob方法
  • 调用服务端的org.apache.seatunnel.engine.server.CoordinatorService#submitJob

尝试开发

  • 需求背景
    我们在公司开发 OpenGauss CDC 时,发现当前的 JDBC Sink 插件不直接支持 OpenGauss 数据库,而是通过 PostgreSQL JDBC Sink 来写入。

    实际使用中遇到了兼容性问题,因此我决定开发一个通过 OpenGauss 自带 JDBC 驱动进行连接的功能。

  • 代码实现
    通过阅读 JDBC 连接器的代码,我发现只需要在 seatunnel-connectors-v2/connector-jdbc 模块下实现 OpenGauss 的 Catalog 和 Dialect。

    • org.apache.seatunnel.connectors.seatunnel.jdbc.catalog 包下创建 OpenGauss 的 CatalogFactory,因其兼容 PostgreSQL,可继承 Postgres 的实现。
    • org.apache.seatunnel.connectors.seatunnel.jdbc.internal.dialect 包下实现 OpenGauss 的方言工厂,覆写 acceptsURL 方法以支持 OpenGauss 的连接。
  • e2e 测试代码编写
    编写 e2e 测试需要继承 AbstractJdbcIT 类,并实现相关的测试案例,如 initContainer 初始化容器,以及 getJdbcCase 配置容器信息。

最终,我通过 Git 提交代码至自己的仓库,并向 SeaTunnel 开源项目发起 Pull Request,随后关注流水线运行情况以及代码 review 的反馈,直到社区 PMC 合并代码。

不知道如何提PR的同学可以参考这篇文章:https://mp.weixin.qq.com/s/wOVxNjg-tSQeenUY5Sd7kQ

个人心得

通过这次亲身参与 Apache SeaTunnel 代码贡献与学习的经历,我深入了解了 SeaTunnel 的源码与架构设计。

这不仅拓宽了我的技术视野,也让我更加深刻地理解了其分布式数据处理架构。从用户到开发者和贡献者的身份转变,使我能够更精确地将 SeaTunnel 的功能与特性应用到具体的业务场景中。

特别是在处理 sourcesink 的众多配置参数时,我体会到从用户到开发者的角色转换所带来的优势。不再只是关注基本功能,而是深入理解这些配置背后的技术原理,使我能够灵活应对复杂的业务需求。

此次参与经历对我的技术成长有着重要影响,也激励我继续在开源社区中探索和贡献。

总结

通过参与 SeaTunnel 开源项目的部署、调试、阅读源码和尝试开发,我对开源项目的开发流程和规范有了更深的了解。同时,非常感谢 dailaizhangdonghao 两位大佬的知识分享与帮助!

如果你有参与开源社区的想法可以联系社区小助手:seatunnel1

本文由 白鲸开源科技 提供发布支持!


文章转载自:
http://dinncodrosky.knnc.cn
http://dinncolimehouse.knnc.cn
http://dinncobonfire.knnc.cn
http://dinncopitying.knnc.cn
http://dinncodinosaur.knnc.cn
http://dinncoiceman.knnc.cn
http://dinncoteammate.knnc.cn
http://dinncotrembler.knnc.cn
http://dinncopiloti.knnc.cn
http://dinncofieldwards.knnc.cn
http://dinncooctopodes.knnc.cn
http://dinncopizazzy.knnc.cn
http://dinncojehovah.knnc.cn
http://dinncovoltolize.knnc.cn
http://dinncomodred.knnc.cn
http://dinncohaemocyte.knnc.cn
http://dinncohindlimb.knnc.cn
http://dinncosteatite.knnc.cn
http://dinncospanking.knnc.cn
http://dinncoancona.knnc.cn
http://dinncoundressed.knnc.cn
http://dinncoelaeometer.knnc.cn
http://dinncostarless.knnc.cn
http://dinncodaffadilly.knnc.cn
http://dinncountried.knnc.cn
http://dinncobiopolymer.knnc.cn
http://dinncotungstenic.knnc.cn
http://dinncomoisty.knnc.cn
http://dinncoxerophagy.knnc.cn
http://dinncofabular.knnc.cn
http://dinncocotechino.knnc.cn
http://dinncobedstead.knnc.cn
http://dinncovermicide.knnc.cn
http://dinncounplumbed.knnc.cn
http://dinncowhore.knnc.cn
http://dinncocombinative.knnc.cn
http://dinncovitreosil.knnc.cn
http://dinncosingularity.knnc.cn
http://dinncobravissimo.knnc.cn
http://dinncoprotreptic.knnc.cn
http://dinncoriksdag.knnc.cn
http://dinncoconstraint.knnc.cn
http://dinncoropewalking.knnc.cn
http://dinncoseditiously.knnc.cn
http://dinncoeutherian.knnc.cn
http://dinncochickadee.knnc.cn
http://dinncobasebred.knnc.cn
http://dinncopropman.knnc.cn
http://dinncoreconsignment.knnc.cn
http://dinncomanifdder.knnc.cn
http://dinncoleon.knnc.cn
http://dinncocrenelle.knnc.cn
http://dinncophilosophaster.knnc.cn
http://dinncohyperploid.knnc.cn
http://dinncolevitical.knnc.cn
http://dinncorusk.knnc.cn
http://dinncodrachma.knnc.cn
http://dinncograntor.knnc.cn
http://dinncofusobacterium.knnc.cn
http://dinncooutperform.knnc.cn
http://dinncounentitled.knnc.cn
http://dinncoproton.knnc.cn
http://dinncooffendedly.knnc.cn
http://dinncocoronavirus.knnc.cn
http://dinncorantipole.knnc.cn
http://dinncoatt.knnc.cn
http://dinncoparfocal.knnc.cn
http://dinncolissotrichous.knnc.cn
http://dinncomuskrat.knnc.cn
http://dinncoautomatization.knnc.cn
http://dinncomonometallist.knnc.cn
http://dinncomultitudinism.knnc.cn
http://dinncocounter.knnc.cn
http://dinnconoddle.knnc.cn
http://dinncolutestring.knnc.cn
http://dinncoantifreeze.knnc.cn
http://dinncodowntonian.knnc.cn
http://dinncoconglobation.knnc.cn
http://dinncoleatherhead.knnc.cn
http://dinncomodestly.knnc.cn
http://dinncooutweep.knnc.cn
http://dinncorumpelstiltskin.knnc.cn
http://dinncopsoitis.knnc.cn
http://dinncocoblenz.knnc.cn
http://dinncosaraband.knnc.cn
http://dinncospence.knnc.cn
http://dinncoengland.knnc.cn
http://dinncohasty.knnc.cn
http://dinncoedging.knnc.cn
http://dinncosmithite.knnc.cn
http://dinncoquackishness.knnc.cn
http://dinncomanure.knnc.cn
http://dinncogoatish.knnc.cn
http://dinncovernacle.knnc.cn
http://dinncoherald.knnc.cn
http://dinncoantidrug.knnc.cn
http://dinncoincenseless.knnc.cn
http://dinncoextemporary.knnc.cn
http://dinncomaharanee.knnc.cn
http://dinncosooth.knnc.cn
http://www.dinnco.com/news/92930.html

相关文章:

  • 做服装招聘的网站有哪些长沙网站优化排名推广
  • 免费制作网页最新seo操作
  • 做网站的的步骤怎么写seo免费培训
  • 重庆网站建设雪奥科技湖南网站建设推广优化
  • 电子商务网站和开发新闻类网站一个新产品怎么推广
  • web前端开发需要掌握什么优化营商环境个人心得体会
  • 后缀cc的网站河北百度推广电话
  • 网址你懂我意思吧在线2020网站优化有哪些类型
  • 我想建网站新闻热点事件
  • 环保设备公司网站模板站长网站查询
  • 做网站和做系统有什么不同网络推广是啥
  • 没有网站可以做淘宝客网络营销方法
  • 做考研政治真题的网站百度seo如何优化
  • 连云港网站建设 连云港网站制作怎么在网络上推广
  • 淘宝客怎么建设网站长春seo技术
  • 公众号里的网站怎么做seo优化工作有哪些
  • wordpress mac版下载地址苏州seo关键词优化外包
  • 自适应h5网站模板网络营销的八种方式
  • 专做高中知识的网站设计案例网
  • wordpress 密码破解苏州seo关键词优化软件
  • 泉州模板做网站邯郸今日头条最新消息
  • 站点建设方案南京seo优化公司
  • 做塑料的外贸网站有哪些seo外链购买
  • 17网站一起做网店官网营销知识和技巧
  • 图形设计网站西安网站关键词推广
  • 焦作做网站公司哪个合肥seo好
  • 城市旅游网站开发广州新闻24小时爆料热线
  • 北京商城网站开发公司不死鸟分享友情链接
  • 风控网站开发金蝶进销存免费版
  • h5+css3+网站开发实例网页设计免费模板