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

婴儿网站建设住栏目广州高端网站开发公司

婴儿网站建设住栏目,广州高端网站开发公司,网页版微信是什么意思,新网域名自助管理平台Apache SeaTunnel 是下一代高性能、分布式、海量数据集成平台#xff0c;已经在 B 站、腾讯云等 100 家公司生产使用。目前处于 incubator 阶段。作为公司内部使用的 ETL 工具#xff0c;Seatunnel 可以基于已有的 Spark、Flink 计算平台进行数据交换也可以运行在 k8s 平台上…Apache SeaTunnel 是下一代高性能、分布式、海量数据集成平台已经在 B 站、腾讯云等 100 家公司生产使用。目前处于 incubator 阶段。作为公司内部使用的 ETL 工具Seatunnel 可以基于已有的 Spark、Flink 计算平台进行数据交换也可以运行在 k8s 平台上作为公司大数据团队小小小组长在调研了海量的开源项目(其实就一两个)最终选用 Seatunnel 作为公司的 ETL 工具的底层。而在前期测试过程中发现 Seatunnel 依然存在一些 bug而本人也在结合公司数据迁移业务发现了若干 bug 并提交代码进行解决同时结合业务场景提交了一个 feature如果你也想成为它的 contributors 那你就需要认真阅读这篇文章了。下面将从零开始教你成为 Seatunnel 源码贡献者。 一、写在前面 首先你必须要有使用 Seatunnel 的需求如果只是学习、测试已经很难发现 bug因为 Seatunnel 从 2017 年开始经过近五年的发展一些浅显的 bug 早就不复存在加上 Seatunnel 严格的 e2e 通过对产品的简单使用很难发现问题(一些冷门的连接器除外)。 二、如何编译 官方文档已经给出了源码编译的过程但随着项目的开发和我实际编译过程中出现的问题对文档做出补充。下面是我在三端(mac、windows、linux)编译过程中出现的问题的总结以及解决方案 spotless插件下载失败[403] 根据报错信息发现是 javac-shaded-9181-r4173-1.jar(当你看到这里的时候可能已经不是这个版本了)下载失败 403 错误解决方案 maven 中心仓库中手动下载 jar 包 项目根路径下执行(注意 jar 包路径的替换) mvn install:install-file -DgroupIdcom.google.errorprone -DartifactIdjavac-shaded -Dversion9181-r4173-1 -Dpackagingjar -Dfile/root/Project/lib/javac-shaded-9181-r4173-1.jarjindo 系列包不存在 这类问题主要是阿里云 oss 连接器的问题jindo 的介绍可以看这里 下载地址 。他的 jar 目前没有上传至 maven 各大仓库(阿里云自己的maven也没有)因此需要离线下载 下载地址解压之后我们需要给 Seatunnel 安装下面两个 jar都在下载的 tar 的 lib 目录下 mvn install:install-file -DgroupIdcom.aliyun.jindodata -DartifactIdjindo-core -Dversion4.6.1 -Dpackagingjar -Dfile/Users/wjun/Documents/Program/lib/jindosdk-4.6.1/lib/jindo-core-4.6.1.jarmvn install:install-file -DgroupIdcom.aliyun.jindodata -DartifactIdjindosdk -Dversion4.6.1 -Dpackagingjar -Dfile/Users/wjun/Documents/Program/lib/jindosdk-4.6.1/lib/jindo-sdk-4.6.1.jar这样基本上都可以编译通过例如 编译整个项目 mvn clean package -pl seatunnel-dist -am -Dmaven.test.skiptrue编译某个模块 mvn clean package -pl seatunnel-connectors-v2/connector-redis -am -DskipTests -T 1C三、如何运行调试 官方文档已经给出了本地运行的方式但如果你运行其他连接器时就会出现 Caused by: java.lang.RuntimeException: Plugin PluginIdentifier{engineTypeseatunnel, pluginTypesource, pluginNameElasticsearch} not found.at org.apache.seatunnel.plugin.discovery.AbstractPluginDiscovery.createPluginInstance(AbstractPluginDiscovery.java:219)at org.apache.seatunnel.engine.core.parse.ConnectorInstanceLoader.loadSourceInstance(ConnectorInstanceLoader.java:63)at org.apache.seatunnel.engine.core.parse.JobConfigParser.sampleAnalyze(JobConfigParser.java:352)at org.apache.seatunnel.engine.core.parse.JobConfigParser.parse(JobConfigParser.java:133)at org.apache.seatunnel.engine.client.job.JobExecutionEnvironment.getLogicalDag(JobExecutionEnvironment.java:155)at org.apache.seatunnel.engine.client.job.JobExecutionEnvironment.execute(JobExecutionEnvironment.java:147)at org.apache.seatunnel.core.starter.seatunnel.command.ClientExecuteCommand.execute(ClientExecuteCommand.java:122)... 2 more例如我在调试 Elasticsearch 插件时就出现这个问题很显然运行时的相关 jar 没有被加载只需要在 seatunnel-engine-examples 模块的 pom 文件添加上对应插件模块的依赖即可例如调试 es ?xml version1.0 encodingUTF-8? project xmlnshttp://maven.apache.org/POM/4.0.0 xmlns:xsihttp://www.w3.org/2001/XMLSchema-instancexsi:schemaLocationhttp://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsdmodelVersion4.0.0/modelVersionparentgroupIdorg.apache.seatunnel/groupIdartifactIdseatunnel-examples/artifactIdversion${revision}/version/parentartifactIdseatunnel-engine-examples/artifactIddependenciesdependencygroupIdorg.apache.seatunnel/groupIdartifactIdseatunnel-starter/artifactIdversion${project.version}/version/dependency!-- seatunnel-transforms-v2 --dependencygroupIdorg.apache.seatunnel/groupIdartifactIdseatunnel-transforms-v2/artifactIdversion${project.version}/version/dependency!-- seatunnel-transforms-v2 --dependencygroupIdorg.apache.seatunnel/groupIdartifactIdconnector-console/artifactIdversion${project.version}/version/dependencydependencygroupIdorg.apache.seatunnel/groupIdartifactIdconnector-elasticsearch/artifactIdversion${project.version}/versionexclusionsexclusiongroupIdcom.google.guava/groupIdartifactIdguava/artifactId/exclusion/exclusions/dependencydependencygroupIdcom.google.guava/groupIdartifactIdguava/artifactIdversion31.1-jre/version/dependency/dependencies /project 这里排除 guava 只是针对 Elasticsearch之前的作者在开发 Elasticsearch 支持 https 协议时使用的 airlift 依赖的 guava 与 Seatunnel 统一定义的 guava 版本冲突了(这个问题已经被我顺带解决了pr#4076) 这时候就可以在 IDE 上随意打断点了。 四、如何PR 当你在使用过程中出现了 bug 首先你应该去 github 上搜索或提出 issue因为你所使用的 release 版本这个 bug 可能已经被发现和解决这时候你只需要拉取最新的 dev 分支代码后重新编译出现 bug 的模块后替换 jar 包即可。如果在 issue 或 pr 上没有发现这个 bug那么需要你贡献力量的时候到了。 首先你需要 fork 源代码到你的私有仓库 - clone 私有仓库到本地 - 创建bug分支并修改代码 — 本地运行测试 如果你为 Seatunnel 添加了 feature 你还需要为其编写 e2e 和补齐 docs 当一切没有问题时不要着急提交你的代码你可能需要走一遍 CI当然这个 CI 你可以推到远程仓库交由 github 执行如果你不想 review 的成员看到你因为通过 CI 而疯狂 commit 最好在本地跑一遍 CI 个人建议首先通过插件格式化一下代码(这也是 CI 的一部分即使你只是修改了一下文档)命令如下 mvn spotless:apply如果修改过 e2e 则也需要走一遍 CI(最好跑一遍我的多次提交就是因为过分相信自己让 github 跑 CI)注意e2e 的 CI 需要本地有 Docker 环境命令如下 mvn -T 1C -B verify -DskipUTtrue -DskipITfalse -Dlicense.skipAddThirdPartytrue --no-snapshot-updates -pl :connector-elasticsearch-e2e -am -Pci经过三端测试相同配置在 linux 上跑 e2e 的 CI 最快可能是因为 Docker 在 windows、mac 独特的运行模式吧 当 CI 本地没有问题时就可以提交代码并创建 PR 了此时你需要按照规范编写一段详细的 commented 并关注绑定 github 的邮箱邮件即可。Seatunnel 社区成员还是很活跃很大一部分都是国人但在沟通时最好还是使用英文(机翻即可啊哈哈哈)
http://www.dnsts.com.cn/news/154423.html

相关文章:

  • 通过网站做国际贸易的成本简历网
  • 网站建设软文推广商城网站用html做
  • 什么网站可以做期刊封面专业做网站的页面设计
  • 网站建设公司海南番禺外贸网站建设
  • 网站后期维修问题网站开发需要多线程
  • 北京州网站建设公司制作小程序需要什么技术
  • 朝阳网站关键词优化网站开发工资高吗
  • 崇仁网站建设推广费用石家庄网站优化推广
  • 吉林市做网站的科技公司沈阳市建设工程项目管理中心
  • 亚马逊店铺网站建设费用个人作品网页设计
  • 做网站网络杭州网站制作工具
  • wordpress子 主题贵阳做网站优化
  • 手机网站建设制作教程视频教程wordpress插件直播
  • 南京做网站哪家最好广西建设厅考试网站
  • 建设部人才交流中心网站推广普通话奋进新征程ppt
  • 网站制作网站推广服务营销理论
  • 电商是干什么工作的长沙优化网站技巧
  • 河北住房与城乡建设部网站企业推广的成功
  • 外贸网站解决方案域名查询购买
  • 外贸网站推广做英语quiz的网站
  • 建设厅官方网站新资质标准类似游侠客网站建设
  • 哪些人做数据监测网站seo任务大厅
  • 郑州市二七建设局网站长沙装修公司排名十强
  • 做海报有哪些网站网站必须要备案吗
  • 网站开发可以学吗网站运营推广该如何做
  • 智慧团建网站登录入口手机版惠州网络推广公司
  • 加强网站微信信息编辑队伍建设做网络技术方案叫什么
  • 制作钓鱼网站1111wk域名更换
  • 网站做排名有用吗淘宝网页设计流程图
  • 自己怎么做淘宝网站安卓手机app开发软件下载