【YashanDB知识库】DataX迁移Hive到崖山分布式

简介: 本文来自YashanDB官网,介绍通过DataX将Hive数据迁移到YashanDB的实现方法。源环境为Hive 3.1.3,目标为YashanDB 23.2.3.100。文章提供了Hive与YashanDB的建表脚本、数据类型映射及DataX配置示例,包含reader和writer插件参数设置,并通过`datax.py`执行同步任务。内容详尽展示了数据迁移的全流程。

本文内容来自YashanDB官网,原文内容请见 https://www.yashandb.com/newsinfo/7441390.html?templateId=1718516

概述

本文主要介绍通过Datax实现Hive数据迁移到崖山分布式。

环境

源Hive版本:3.1.3

目标YashanDB版本:23.2.3.100

建表脚本

-- hive

CREATE TABLE IF NOT EXISTS product(

    product_no char(5),

    product_name varchar(30),

    cost double,

    price duble

)

ROW FORMAT DELIMITED FIELDS TERMINATED BY '\001'

STORED AS textfile;



-- yashandb

CREATE TABLE product

(

    product_no CHAR(5),

    product_name VARCHAR2(30),

    cost NUMBER,

    price NUMBER

);

hive表和DataX数据类型映射

hive同步到崖山job配置

{

    "job": {

        "content": [

            {

                "reader": {

                    "name":"hdfsreader",

                    "parameter":{

                        "column":[

                            {

                                "index":0,

                                "type":"string"

                            },

                            {

                                "index":1,

                                "type":"string"

                            },

                            {

                                "index":2,

                                "type":"double"

                            },

                            {

                                "index":3,

                                "type":"double"

                            }

                        ],

                        "defaultFS":"hdfs://127.0.0.1:8020",

                        "encoding":"UTF-8",

                        "fieldDelimiter":"\u0001",

                        "fileType":"text",

                        "path":"/usr/hive/warehouse/sales.db/product"

                    }

                },

                "writer": {

                    "name": "yashandbwriter",

                    "parallel": {

                        "binder": 6

                    },

                    "parameter": {

                        "batchError": true,

                        "column":[

                            "PRODUCT_NO",

                            "PRODUCT_NAME",

                            "COST",

                            "PRICE"

                        ],

                        "connection": [

                            {

                                "jdbcUrl": "jdbc:yasdb://127.0.0.1:1688/yashandb",

                                "table": [

                                    "SALES.PRODUCT"

                                ]

                            }

                        ],

                        "batchSize": 4096,

                        "batchesPerTxn": 1000,

                        "password": "sales",

                        "preSql": ["truncate table SALES.PRODUCT"],

                        "session": [],

                        "username": "sales",

                        "writeMode": "bulkinsert"

                    }

                }

            }

        ],

        "setting": {

            "speed": {

                "channel": "1"

            }

        }

    }

}

执行同步

python bin/datax.py job/hive2yashandb.json

相关文章
|
SQL 存储 分布式数据库
分布式存储数据恢复—hbase和hive数据库数据恢复案例
分布式存储数据恢复环境: 16台某品牌R730xd服务器节点,每台服务器节点上有数台虚拟机。 虚拟机上部署Hbase和Hive数据库。 分布式存储故障: 数据库底层文件被误删除,数据库不能使用。要求恢复hbase和hive数据库。
753 12
【YashanDB知识库】分布式LSC表修改字段
本文来自YashanDB官网,介绍了一种间接修改分布式LSC表字段的方法。通过重命名原表为备份表、重建新表调整字段长度、使用bulkload方式快速导入数据、验证记录数并删除备份表等步骤,实现将字段`area_name`从VARCHAR2(60)修改为VARCHAR2(100)。此方法高效且适用于分布式环境下的表结构调整。
|
Java 数据库连接
【YashanDB知识库】Springboot启动找不到崖山jdbc驱动的问题处理
本文来自YashanDB官网,主要解决SpringBoot应用启动时出现“找不到崖山JDBC驱动”的问题,尽管lib目录下已有yashandb-jdbc-1.6.9.jar文件。错误信息显示`java.lang.ClassNotFoundException: com.yashandb.jdbc.Driver`。解决方案为:通过`which java`等命令定位Java安装路径,将驱动jar包复制到JRE的`lib/ext`目录下,最后重启应用即可。
|
SQL 关系型数据库 PostgreSQL
【YashanDB 知识库】从 PostgreSQL 迁移到 YashanDB 如何进行数据行数比对
【YashanDB 知识库】从 PostgreSQL 迁移到 YashanDB 如何进行数据行数比对
|
JSON 分布式计算 DataX
【YashanDB知识库】使用DataX工具迁移yashan数据到maxcompute
本文介绍使用崖山适配的DataX工具进行数据库迁移的方法,包括单表迁移和批量表迁移。单表迁移需配置json文件并执行同步命令;批量迁移则通过脚本自动化生成json配置文件并完成数据迁移,最后提供数据比对功能验证迁移结果。具体步骤涵盖连接信息配置、表清单获取、json文件生成、数据迁移执行及日志记录,确保数据一致性。相关工具和脚本简化了复杂迁移过程,提升效率。
|
SQL Oracle 关系型数据库
【YashanDB知识库】从PostgreSQL迁移到YashanDB如何进行数据行数比对
本文介绍了通过Oracle视图`v$sql`和`v$sql_plan`分析SQL性能的方法。首先,可通过`plan_hash_value`从`v$sql_plan`获取SQL执行计划,结合示例展示了具体查询方式。文章还创建了一个UDF函数`REPEAT`用于格式化输出,便于阅读复杂执行计划。最后,通过实例展示了如何根据`plan_hash_value`获取SQL文本及其内存中的执行计划,帮助优化性能问题。
|
SQL 数据采集 数据挖掘
大数据行业应用之Hive数据分析航班线路相关的各项指标
大数据行业应用之Hive数据分析航班线路相关的各项指标
737 1
|
SQL 分布式计算 大数据
大数据新视界 --大数据大厂之Hive与大数据融合:构建强大数据仓库实战指南
本文深入介绍 Hive 与大数据融合构建强大数据仓库的实战指南。涵盖 Hive 简介、优势、安装配置、数据处理、性能优化及安全管理等内容,并通过互联网广告和物流行业案例分析,展示其实际应用。具有专业性、可操作性和参考价值。
大数据新视界 --大数据大厂之Hive与大数据融合:构建强大数据仓库实战指南
|
SQL 分布式计算 大数据
大数据处理平台Hive详解
【7月更文挑战第15天】Hive作为基于Hadoop的数据仓库工具,在大数据处理和分析领域发挥着重要作用。通过提供类SQL的查询语言,Hive降低了数据处理的门槛,使得具有SQL背景的开发者可以轻松地处理大规模数据。然而,Hive也存在查询延迟高、表达能力有限等缺点,需要在实际应用中根据具体场景和需求进行选择和优化。
1492 6
|
SQL 分布式计算 Java
大数据-96 Spark 集群 SparkSQL Scala编写SQL操作SparkSQL的数据源:JSON、CSV、JDBC、Hive
大数据-96 Spark 集群 SparkSQL Scala编写SQL操作SparkSQL的数据源:JSON、CSV、JDBC、Hive
605 0