如何解决 Spark JDBC 的编码问题?

2024-03-19

我在 Oracle 中有一个表,其中有一些俄语记录。

当我使用 Spark JDBC 读取此表时,我收到的数据帧的值不正确。

您知道为什么会发生这种情况以及如何解决吗?

// executes given query using jdbc
  def executeQuery(spark: SparkSession, configuration: Map[String, String], sql_statement: String): DataFrame
  = spark.read.format("jdbc")
    .option("driver", "oracle.jdbc.OracleDriver")
    .option("url", s"jdbc:oracle:thin:@//${configuration("address")}")
    .option("user", configuration("username"))
    .option("password", configuration("password"))
    .option("dbtable", s"(${sql_statement})")
    .option("fetchSize", configuration("fetch_size"))
    .load()

在您的 jdbc 连接中,您需要设置.option("encoding", "UTF-8") and ("characterEncoding", "UTF-8")确保我们在读取数据时使用UTF8字符集。这应该确保您能够正确阅读俄语字符。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

如何解决 Spark JDBC 的编码问题? 的相关文章

随机推荐

  • 在 CSS 中应该使用 rgba(0, 0, 0, 0) 还是 rgba(255, 255, 255, 0) 来实现透明度?

    你应该使用rgba 0 0 0 0 or rgba 255 255 255 0 CSS 的透明度 各自的优点和缺点是什么 最后一个参数为rgba 函数是 alpha 或 opacity 参数 如果您将其设置为0它将意味着 完全透明 前三个参
  • 将datagridview导出到word文档c#

    我正在尝试将数据网格导出到Word文档 但不是这个结果 EmployeeID EmployeeName Birth Phone Address DateOfHiring Salary EmloyeeType 1 name 1 11 test
  • Mandrill 通过 Laravel / PHP 入站电子邮件

    我想知道是否有人可以帮助我解决我在研究 Laravel 和通过 Mandrill 入站电子邮件处理相关问题时遇到的一些问题 基本上我希望能够通过 Mandrill 接收电子邮件并将它们存储在我的 Laravel 数据库中 现在我不确定我是否
  • 将闪亮的小部件显示与特定的导航栏 tabPanel() 选择连接起来

    我有一个闪亮的仪表板 其中有一个导航栏页面 其中包含两个 tabPanel Summary and Available Funds Then Available Funds 由一个tabsetPanel 有两个选项卡面板 Plot and
  • Android蓝牙UUID连接APP到ANDROID

    我正在构建一个 Android 应用程序 用于跟踪设备上的蓝牙连接 并在超出范围时触发警报 Android 文档要求提供 UUID 才能建立连接 uuid 是用于唯一标识信息的字符串 ID 的通用唯一标识符 UUID 标准化 128 位格式
  • 如何在多个显示器上正确使用 SetDisplayConfig?

    我正在创建一个小程序 它将包含桌面中的所有显示器 扩展模式 或禁用所有辅助显示器 显示器可以连接到 GPU 和集成显卡 该程序适用于Windows 7 因此根据互联网上的信息 我决定使用CCD API 但遇到了SetDisplayConfi
  • 带有空 RHS 的“dcast”[重复]

    这个问题在这里已经有答案了 有没有办法在不首先指定要翻转的变量的情况下翻转我的数据 在我看来 逻辑默认值似乎是组内索引 例如 DT lt data table id rep 6 10 each 3 var rnorm 15 DT id va
  • TypeScript:如何从类型中提取泛型参数?

    假设我有这样的类型React ComponentClass
  • JComboBox 填充枚举变量值

    我有一个JComboBox我用这种方式制作的enum其价值观 JComboBox
  • migrate.exe 忽略绑定重定向

    我正在尝试运行migrate exe申请来自EntityFramework在特定的 DLL 上 该DLL引用了Microsoft Azure KeyVault WebKeynuget 包 当我尝试运行命令时 migrate MyProjec
  • 使用 .htaccess 动态 URL 重写

    我对 htaccess 重写还很陌生 我正在尝试创建规则来动态重写 URL 例如 假设用户输入以下 URL http example com xxx user 2002 它将被重写为 http example com xxx user 20
  • Solr - 如何获取特定格式的搜索结果

    在探索示例时索引维基百科数据 http wiki apache org solr DataImportHandler Example 3a Indexing wikipedia在Solr中 我们如何才能得到预期的结果 即与导入的数据相同 是
  • 斜杠有什么用? [复制]

    这个问题在这里已经有答案了 可能的重复 在 mysql real escape string 之后使用 stripslashes https stackoverflow com questions 11295141 using strips
  • 将我的 sql 查询转换为 crm 中的 queryexpression 或 fetchxml

    我有这个SQL查询我试图获取的位置opportunityId来自机会实体 为谁approvaldocument尚未创建 批准文档是其他实体的名称 我认为 fetchxml 不支持此类查询 我是 crm 新手 我的项目位于crm 4 0版本
  • 如何在 SwiftUI 中显示 HTML 文本

    我的要求是显示文本SwiftUI其中包含HTML标签 我尝试使用的方法WKWebKit Loadhtml效果很好 但是 我需要像这样显示它 人物卡集合 人员卡 姓名 职务 具有 HTML 文本的人员详细信息 例如Hello world 有人
  • 如何在 LIFERAY 中从first.jsp 重定向到second.jsp?

    这怎么办 请帮我解决这个问题 jsp 内部的重定向并不是真正方便的想法 因为下面的 jsp 解析进入渲染阶段 而该阶段的目的是显示内容 另一方面 下面重定向到操作阶段 在这里您可以决定 portlet 接下来应该做什么 阅读本教程以更好地理
  • 更新到 3.0 后 Gradle 构建失败

    我最近将项目的 gradle 版本从 2 14 1 更新到 3 0 从那时起 gradle 构建每次都会失败 并出现以下错误 错误 原因 org gradle api internal tasks DefaultTaskInputs Tas
  • 分组表视图

    我想创建一个如下图所示的表格视图 谁能告诉我一个例子或者说我该怎么做 创建一个 UITableView 并将样式设置为 UITableViewStyleGrouped 您可以通过编程方式或在 IB 中执行此操作 然后您需要 2 个部分 第一
  • 如何卸载Keras?

    我已经使用以下命令安装了 Keras sudo pip install keras 它安装正确并且工作正常 直到我尝试导入应用程序模块 from keras applications vgg16 import VGG16 Using The
  • 如何解决 Spark JDBC 的编码问题?

    我在 Oracle 中有一个表 其中有一些俄语记录 当我使用 Spark JDBC 读取此表时 我收到的数据帧的值不正确 您知道为什么会发生这种情况以及如何解决吗 executes given query using jdbc def ex