【kettle002】kettle访问人大金仓KingbaseES数据库并处理数据至execl文件

一直以来想写下基于kettle的系列文章,作为较火的数据ETL工具,也是日常项目开发中常用的一款工具,最近刚好挤时间梳理、总结下这块儿的知识体系。
熟悉、梳理、总结下人大金仓KingbaseES数据库相关知识体系

  • kettle访问人大金仓KingbaseES数据库并处理数据至execl文件文章目录索引如下所示:
    在这里插入图片描述

1.环境搭建、配置

  • 1.0 实验环境

    • Windows 10
    • CentOS 7.1(虚拟机)
    • Docker version 26.0.2
    • Dbeaver
    • Kettle 8.2
    • KingbaseEs V8R3,kingbase (Kingbase) V008R003C002B0290
  • 1.1 拉取人大金仓KingbaseES数据库镜像

    docker pull godmeowicesun/kingbase
    
  • 1.2 创建目录文件

    mkdir -p /opt/docker/kingbase-latest/spft
    chmod 777 /opt/docker/kingbase-latest/spft
    mkdir -p /opt/docker/kingbase-latest/spft/license
    
  • 1.3 下载授权文件,并上传至目标路径

    • 官网地址可下载标准版证书(可根据自身需求选择授权文件版本):https://www.kingbase.com.cn/xzzx/index.htm。如下图所示:
      在这里插入图片描述
    • 授权文件上传目标路径:/opt/docker/kingbase-latest/spft
      在这里插入图片描述
  • 1.4 创建镜像容器

    # 参考模版
    # docker run -d -it --privileged=true -p [对外端口号]:54321 -v [本地主机的虚拟挂载路径]:/opt --name kingbase-latest godmeowicesun/kingbase:latest# 实操命令,注意如果不带 /bin/bash 数据库无法有效启动,将不能建立有效链接
    docker run -d -it --privileged=true -p 54321:54321 -v /opt/docker/kingbase-latest/spft:/opt --name kingbase-v8 godmeowicesun/kingbase:latest /bin/bash
    
    • 效果图如下所示:在这里插入图片描述
  • 1.5 DBeaver链接测试

    • 新建 驱动管理器数据库 --》 驱动管理器 --》 新建库 --》 添加kingbasev8驱动文件
      在这里插入图片描述
    • 数据库访问默认信息
      端口: 54321
      用户名: SYSTEM
      密码: 123456
      默认数据库: TEST
      
    • 待确认解决问题,后续有时间定位下具体问题
      在这里插入图片描述

2.人大金仓KingbaseES数据库链接测试

  • 2.1 SQL测试脚本
    select * from youli001.youli_test-- drop table youli001.youli_test;create table youli001.youli_test(id varchar(32) not null,remark varchar(255),length int8,front text, status smallint,range float8,create_time timestamp
    );create index createtime on youli001.youli_test(create_time);
    comment on column youli001.youli_test.remark is '备注';
    comment on column youli001.youli_test.length is '长度';
    comment on column youli001.youli_test.status is '状态';
    comment on column youli001.youli_test.range is '范围';
    comment on column youli001.youli_test.create_time is '创建时间';insert into youli001.youli_test values('001', 'good', 12, 'good', 0, 0.34, now());
    insert into youli001.youli_test values('002', 'good', 12, 'good', 0, 0.34, now());
    insert into youli001.youli_test values('003', 'good', 12, 'good', 0, 0.34, now());
    insert into youli001.youli_test values('004', 'good', 12, 'good', 0, 0.34, now());
    insert into youli001.youli_test values('005', 'good', 12, 'good', 0, 0.34, now());
    insert into youli001.youli_test values('006', 'good', 12, 'good', 0, 0.34, now());
    insert into youli001.youli_test values('007', 'good', 12, 'good', 0, 0.34, now());
    insert into youli001.youli_test values('008', 'good', 12, 'good', 0, 0.34, now());
    insert into youli001.youli_test values('009', 'good', 12, 'good', 0, 0.34, now());
    insert into youli001.youli_test values('010', 'good', 12, 'good', 0, 0.34, now());
    insert into youli001.youli_test values('011', 'good', 12, 'good', 0, 0.34, now());
    
  • 2.2 查询示例效果
    在这里插入图片描述

3.kettle流程任务配置、效果验证

  • 3.1 表输入 测试链接 OK
    在这里插入图片描述
  • 系统级schema:
    • pg_catalog 包含着系统目录表、内建数据类型、函数和操作符。 即便在 schema 搜索路径中没有显式地提到它,它也总是 schema 搜索路径的一部分
    • gp_toolkit 是一个管理用途的 schema ,它包含用户可以用 SQL 命令访问的外部表、视图和函数。 所有的数据库用户都能访问gp_toolkit 来查看和查询系统日志文件以及其他系统指标
    • pg_aoseg 存储追加优化表对象。 这个 schema 由 数据库系统内部使用
    • pg_bitmapindex 存储位图索引对象,例如值的列表。 这个 schema 由 数据库系统内部使用
    • pg_toast 存储大型对象,如超过页面尺寸的记录。 这个 schema 由 数据库系统内部使用
    • information_schema 有一个包含数据库中对象信息的视图集合组成。 这些视图以一种标准化的方式从系统目录表中得到系统信息
  • 其他参考命令
    # docker 人大金仓登录数据库
    ksql -h 127.0.0.1 -U SYSTEM -d TESTcreate tablespace youli location '/opt'; # linux 查看端口号
    lsof -i :54321# 查看启动服务
    ps -ef
    

4.参考文章

  • https://blog.csdn.net/fy512/article/details/126546899
  • https://www.kingbase.com.cn/xzzx/index.htm
  • https://help.kingbase.com.cn/v8/install-updata/install-docker/install-docker-3.html

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/644035.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

关于Spring事务管理之默认事务间调用问题

由事务的传播行为我们知道, 如果将方法配置为默认事务REQUIRED在执行过程中Spring会为其新启事务REQUIRES_NEW, 作为一个独立事务来执行. 由此存在一个问题。 如果使用不慎, 会引发org.springframework.transaction.UnexpectedRollbackException: Transaction rolled back bec…

用于割草机器人,商用服务型机器人的陀螺仪

介绍一款EPSON推出适用于割草机器人,商用服务型机器人的高精度陀螺仪模组GGPM61,具体型号为GGPM61-C01。模组GGPM61是一款基于QMEMS传感器的低成本航向角输出的传感器模组,它可以输出加速度、角速度及姿态角等信息,为控制机器人运…

Git 保姆级教程(一):Git 基础

一、获取 Git 仓库 通常有两种获取 Git 项目仓库的方式: 1. 将尚未进行版本控制的本地目录转换为 Git 仓库; 2. 从其它服务器克隆 一个已存在的 Git 仓库。 两种方式都会在你的本地机器上得到一个工作就绪的 Git 仓库。 1.1 git init(本地…

【InternLM】Lagent智能体应用搭建

1. Lagent和AgentLego 1.1 Lagent Lagent 是一个开源的 LLM 智能体框架,允许使用者快速将一个大语言模型转换成智能体,并提供一些典型工具来激发大语言模型的潜能。Lagent 框架图如下: Lagent 包含三个主要模块:agents&#xf…

【数据结构】二叉树(定义、性质、存储、遍历、构造)解析+完整代码

文章目录 1.树的基本概念2.二叉树的概念2.1 二叉树定义和特性2.2 二叉树性质2.3 二叉树的存储2.3.1 顺序存储2.3.2 链式存储 3.二叉树的遍历3.1 先序遍历3.2 中序遍历3.3 后序遍历3.4 层序遍历3.5 由遍历序列构造二叉树A.前序中序遍历序列B.后序中序遍历序列C.层序中序遍历序列…

G2024-04-24 开源项目日报 Top10

根据Github Trendings的统计,今日(2024-04-24统计)共有10个项目上榜。根据开发语言中项目的数量,汇总情况如下: 开发语言项目数量Python项目5TypeScript项目3PowerShell项目1C++项目1非开发语言项目1LLaMA模型的C/C++移植 创建周期:306 天开发语言:C, C++协议类型:MIT Li…

【嵌入式】Arduino IDE + ESP32开发环境配置

一 背景说明 最近想捣鼓一下ESP32的集成芯片,比较了一下,选择Arduino IDE并添加ESP32支持库的方式来开发,下面记录一下安装过程以及安装过程中遇到的坑。 二 下载准备 【1】Arduino IDE ESP32支持一键安装包(非常推荐&#xff0…

消息队列 Kafka 入门篇(二) -- 安装启动与可视化工具

一、Windows 10 环境安装 1、下载与解压 首先,访问Apache Kafka的官方下载地址: https://kafka.apache.org/downloads 在本教程中,我们将使用kafka_2.13-2.8.1版本作为示例。下载完成后,解压到您的工作目录的合适位置&#xff…

【动态规划】C++ 子序列问题(递增子序列、数对链、定差子序列、斐波那契子序列...)

文章目录 1. 前言2. 例题最长递增子序列 3. 算法题3.1_摆动序列3.2_最长递增子序列的个数3.3_最长数对链[3.4_ 最长定差子序列](https://leetcode.cn/problems/longest-arithmetic-subsequence-of-given-difference/description/)3.5_最长的斐波那契子序列的长度3.6_最长等差数…

jvm知识点总结(一)

JVM的跨平台 java程序一次编写到处运行。java文件编译生成字节码,jvm将字节码翻译成不同平台的机器码。 JVM的语言无关性 JVM只是识别字节码,和语言是解耦的,很多语言只要编译成字节码,符合规范,就能在JVM里运行&am…

小程序AI智能名片商城系统直连:打造用户与企业无缝对接的新时代!

在高度不确定性的商业环境中,企业如何快速响应市场变化,实现与用户的零距离接触?答案就是——小程序AI智能名片商城系统直连!这一创新工具不仅为企业打开了与用户直接连接的大门,更为企业提供了持续收集用户反馈、快速…

基于Python+Selenium+Pytest的Dockerfile如何写

使用 Dockerfile 部署 Python 应用程序与 Selenium 测试 在本文中,我们将介绍如何使用 Dockerfile 部署一个 Python 应用程序,同时利用 Selenium 进行自动化测试。我们将使用官方的 Python 运行时作为父镜像,并在其中安装所需的依赖项和工具…