spark导入doris的几种方式

这篇具有很好参考价值的文章主要介绍了spark导入doris的几种方式。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。


本文主要介绍通过spark导入doris的3种方式。

1.最简单的方式:jdbc

jdbc 方式需要引入mysql-connector-java的依赖


<dependency>
    <groupId>mysql</groupId>
    <artifactId>mysql-connector-java</artifactId>
    <version>5.1.48</version>
</dependency>

代码demo

	.....


    df.show()
    df
      .write
      .format("jdbc")
      .mode(SaveMode.Append)
      .option("driver", "com.mysql.jdbc.Driver")
      .option("url", "jdbc:mysql://xxxx:xx/xx?rewriteBatchedStatements=true")
      .option("batchsize", "10000")
      .option("user", "xxxx")
      .option("password", "xxxx")
      .option("isolationLevel", "NONE")
      .option("dbtable", "xxxxxx")
      .save()


注意:

一定要添加?rewriteBatchedStatements=true参数,不然导入速度会很慢。

2.Doris官方推荐的方式:Spark Doris Connector


Spark Doris Connector 可以支持通过 Spark 读取 Doris 中存储的数据,也支持通过Spark写入数据到Doris。

代码库地址:https://github.com/apache/doris-spark-connector

  • 支持从Doris中读取数据
  • 支持Spark DataFrame批量/流式 写入Doris
  • 可以将Doris表映射为DataFrame或者RDD,推荐使用DataFrame
  • 支持在Doris端完成数据过滤,减少数据传输量。

版本兼容:

Connector Spark Doris Java Scala
1.2.0 3.2, 3.1, 2.3 1.0 + 8 2.12, 2.11
1.1.0 3.2, 3.1, 2.3 1.0 + 8 2.12, 2.11
1.0.1 3.1, 2.3 0.12 - 0.15 8 2.12, 2.11

使用已经编译好的版本


可在https://repo.maven.apache.org/maven2/org/apache/doris/下载需要的jar包 但是可供选择的版本比较少,目前只有下图中的3个。

spark导入doris的几种方式,Doris,Spark,spark

自行编译


编译步骤:
  1. 修改custom_env.sh.tpl文件,重命名为custom_env.sh
  2. 在源码目录下执行: sh build.sh 根据提示输入你需要的 Scala 与 Spark 版本进行编译。

编译成功后,会在 dist 目录生成目标jar包,如:spark-doris-connector-3.2_2.12-1.2.0-SNAPSHOT.jar。 将此文件复制到 SparkClassPath 中即可使用 Spark-Doris-Connector

例如,Local 模式运行的 Spark,将此文件放入 jars/ 文件夹下。Yarn集群模式运行的Spark,则将此文件放入预部署包中。

例如将 spark-doris-connector-3.2_2.12-1.2.0-SNAPSHOT.jar 上传到 hdfs 并在 spark.yarn.jars 参数上添加 hdfs 上的 Jar 包路径文章来源地址https://www.toymoban.com/news/detail-675466.html

  1. 上传 spark-doris-connector-3.2_2.12-1.2.0-SNAPSHOT.jar 到hdfs。
hdfs dfs -mkdir /spark-jars/
hdfs dfs -put /your_local_path/spark-doris-connector-3.2_2.12-1.2.0-SNAPSHOT.jar /spark-jars/
  1. 在集群中添加 spark-doris-connector-3.2_2.12-1.2.0-SNAPSHOT.jar 依赖。
spark.yarn.jars=hdfs:///spark-ja

到了这里,关于spark导入doris的几种方式的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • Spark Doris Connector 可以支持通过 Spark 读取 Doris 数据类型不兼容报错解决

    doris版本: 1.2.8 Spark Connector for Apache Doris 版本: spark-doris-connector-3.3_2.12-1.3.0.jar:1.3.0-SNAPSHOT spark版本:spark-3.3.1 Spark Doris Connector - Apache Doris 目前最新发布版本: Release Apache Doris Spark Connector 1.3.0 Release · apache/doris-spark-connector · GitHub 2.1、Spark Doris Connector概述 Spark Doris Connector 可

    2024年01月23日
    浏览(47)
  • 生态扩展Spark Doris Connector

    生态扩展Spark Doris Connector doris官网去查找相匹配的spark spark的安装: spark环境配置:vim /etc/profile 将编译好的spark-doris-connector-3.3_2.12-1.3.0-SNAPSHOT.jar复制到spark的jars目录 代码库地址:https://github.com/apache/doris-spark-connector 编译与安装 准备工作 修改custom_env.sh.tpl文件,重命名为cu

    2024年02月06日
    浏览(41)
  • Spark写数据到Doris报错node and exceeded the max retry times

    用spark dataframe向doris写数据时,报下面错误: Failed to load data on BE: http://192.168.50.10:18040/api/mydb/dwd_virtual_table/_stream_load? node and exceeded the max retry times. 发现表没写入成功。刚开始很困惑,后来发现是 dataFrame中的字段和目标表不一致 。 这种提示很不友好,有没有更好方式提示,

    2024年02月11日
    浏览(53)
  • Doris-05-集成Spark、Flink、Datax,以及数据湖分析(JDBC、ODBC、ES、Hive、多源数据目录Catalog)

    准备表和数据: Spark 读写 Doris Spark Doris Connector 可以支持通过 Spark 读取 Doris 中存储的数据,也支持通过Spark写入数据到Doris。 代码库地址:https://github.com/apache/incubator-doris-spark-connector 支持从 Doris 中读取数据 支持 Spark DataFrame 批量/流式 写入 Doris 可以将 Doris 表映射为 DataFra

    2024年02月06日
    浏览(58)
  • 【Python】导入Excel数据表的几种方式

    如何导入csv、xlsx格式的Excel; 一张数据表里有多个sheet页,如何获取所有sheet页名字,并导入每张sheet页; 1. 导入CSV格式的Excel表: 2. 导入xlsx格式的Excel表: 如果Excel表里只有一个sheet页: 如果Excel表里有多个sheet页: 如果Excel表里sheet页过多:

    2024年02月03日
    浏览(49)
  • Hudi Spark-SQL增量查询数据几种方式

    由于项目上主要用Hive查询Hudi,所以之前总结过一篇:Hive增量查询Hudi表。最近可能会有Spark SQL增量查询Hudi表的需求,并且我发现目前用纯Spark SQL的形式还不能直接增量查询Hudi表,于是进行学习总结一下。 先看一下官方文档上Spark SQL增量查询的方式,地址:https://hudi.apache.or

    2024年02月11日
    浏览(40)
  • Apache Doris (三十三):Doris 数据导入(十一)Routine Load 2- 导入案例及注意事项

    目录 1. 导入Kafka数据到Doris 2. 严格模式导入Kafka数据到Doris 3. kafka 简单json格式数据导入到Doris

    2024年02月16日
    浏览(56)
  • Apache Doris (二十三) :Doris 数据导入(一)Insert Into

    目录 1. 语法及参数 2. 案例 ​​​​3. 注意事项 3.1. 关于插入数据量

    2024年02月13日
    浏览(53)
  • 从mysql 数据库表导入数据到elasticSearch的几种方式

            从MySQL数据库导入数据到Elasticsearch有几种方式,主要包括以下几种:         1. 使用Logstash:         Logstash是一个开源的数据收集引擎,可以用来从不同的数据源导入数据到Elasticsearch。它具有强大的数据处理能力和插件生态系统,可以方便地实现数据的解

    2024年04月12日
    浏览(50)
  • Doris(五) -- 数据的导入导出

    用户可以通过 MySQL 协议,使用 INSERT 语句进行数据导入 INSERT 语句的使用方式和 MySQL 等数据库中 INSERT 语句的使用方式类似。 INSERT 语句支持以下两种语法: 对于 Doris 来说,一个 INSERT 命令就是一个完整的导入事务。 因此不论是导入一条数据,还是多条数据,我们都不建议在

    2024年02月07日
    浏览(40)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包