登陆 | 注册 | 留言 | 设首页 | 加收藏
当前位置: 网站首页 > 前沿技术 > 文章 当前位置: 前沿技术 > 文章

大数据工具(一)parquet文件生成与上传

时间:2024-08-19    点击: 次    来源:网络    作者:佚名 - 小 + 大

  • DataX-ETL工具仅支持ORC、TEXTFILE两种格式,对Parquet文件的读取和上传并不支持;
  • 魔方开发私有数据上传需要对EXCEL、CSV格式的文件导入大数据数据库,创建私有表,私有数据的大小不确定,需要支持对大文件的高效上传;
  • 魔方大数据查询采用计算引擎(impala、presto)的JDBC协议进行开发,插入数据采用JDBC的Insert语句,Hive-Insert其底层实现map-reduce效率很低;
  • 目前公司、网站上缺少对大数据parquet存储格式的解析和写入的工具程序。

     实际统计:

数据量/方式
JDBC-INSERT
本地生成PAQUET文件
3000行 3min <10s
20万行 - <15s

2、目标

  • 扩展DataX插件,使DataX支持Parquet表文件的支持;
  • 提升大文件上传效率;
  • 搭建一个大数据的工具包,实现ETL、文件解析、数据源管理的工具。

3、parquet文件格式的介绍

TODO

4、具体实现

  • 阅读presto-parquet源码,借鉴presto-parquet读写;
  • 改进复用DataX对记录(record)字段(column)动态配置文件(configuration)、对外接口等

目前项目模块

类图

  • Record 实现了一行记录的抽象
  • Column 实现了字段的抽象
  • TransConfiguration 封装任何数据源连接的配置和字段信息(为以后不同数据源数据交换提供统一的封装

  • IParConfigurationConvert<T> 提供接口将其他的数据封装转化为TransConfiguration 类,其中<T>为外部系统的实体封装

  • ErrorCode 提供统一错误码

5、调用方式

  • 引入依赖
1
2
3
4
5
<dependency>
   <artifactId>hi-bigdata-parquet</artifactId>
   <groupId>com.hisense.hiatmp</groupId>
   <version>1.0-SNAPSHOT</version>
</dependency>
  • 实现接口
 展开源码
  • 使用方式
 展开源码


 展开源码


上一篇:大数据存储分离的架构设计及搭建

下一篇:大数据国产化迁移通用方案

推荐阅读
鲁ICP备2022041402号  |   QQ:8346417  |  地址:山东青岛