【kettle007】kettle访问MongoDB数据库并处理数据至execl文件(已更新)

发布于:2024-05-06 ⋅ 阅读:(26) ⋅ 点赞:(0)

1.一直以来想写下基于kettle的系列文章,作为较火的数据ETL工具,也是日常项目开发中常用的一款工具,最近刚好挤时间梳理、总结下这块儿的知识体系。
2.熟悉、梳理、总结下MongoDB分布式文件存储数据库相关知识体系
3.欢迎批评指正,跪谢一键三连!

1.MongoDB环境搭建、配置

  • 1.0 实验环境信息

    • Windows 10
    • CentOS 7.1(虚拟机)
    • Docker version 26.0.2
    • NoSQLBooster 8.1.9 Free Edition,下载地址:nosqlbooster4mongo-8.1.9
    • Kettle 8.2
    • MonDB版本:7.0.9
      在这里插入图片描述
  • 1.1 拉取MongoDB数据库镜像,并创建容器

    docker pull mongo:latest
    
    docker images
    	
    docker run -d  -p 27017:27017 --name mongodb -e MONGO_INITDB_ROOT_USERNAME=admin -e MONGO_INITDB_ROOT_PASSWORD=123456 mongo
    
    docker ps -a
    
    docker exec -it mongodb /bin/bash
    
    mongosh -u 'admin' -p '123456' --authenticationDatabase 'admin'
    
    # 开放防火墙端口
    sudo firewall-cmd --zone=public --add-port=27017/tcp --permanent
    sudo firewall-cmd --reload
    
  • 1.2 MongoDB容器最终运行效果
    在这里插入图片描述

  • 1.3 问题记录

    • mongo -u ‘admin’ -p ‘123456’ --authenticationDatabase ‘admin’ 命令报错: bash: mongo: command not found
    • MongoDB 6.0全面弃用mongo而使用mongosh

2.MongoDB数据库容器链接测试

  • hostname: 192.168.10.183 # 替换成本地实验的地址,MySQL驱动
    port: 27017
    用户名: admin
    密码:123456
    
  • 2.1 链接测试配置详情
    在这里插入图片描述
    在这里插入图片描述

  • 2.2 新建数据库,新建用户及密码,新建表并测试

    use youlidb
    db.createUser({"user":"youli","pwd":"youli","roles":[{"role":"dbOwner","db":"youlidb"}]});
    
    db.tb_youli.insert({username:'李四',age:11})
    db.tb_youli.insert({username:"小明",age:12})
    db.tb_youli.insert({username:"小红",age:31})
    db.tb_youli.insert({username:"明凯",age:12})
    db.tb_youli.insert({username:"秀红",age:22})
    
    db.tb_youli.find() -- 查询所有数据
    
    # 查看数据库
    show dbs
    # 创建的数据库名称youli
    use youli
    # 查看数据表(集合)
    show collections
    # 检索表中的所有数据
    db.tb_user.find()
    # 新建数据表、插入数据
    db.tb_youli.insert({username:'李四',age:11})
    # 删除数据表
    db.tb_youli.drop()
    # 删除数据库
    db.dropDatabase()
    
  • 2.3 SQL执行效果示例
    在这里插入图片描述

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

在这里插入图片描述
在这里插入图片描述

  • 3.2 kettle链接MongoDB数据库容器环境测试结果
    在这里插入图片描述
    在这里插入图片描述

4.参考文章