Tajo--一个分布式数据仓库系统(概述)

时间:2023-03-09 14:42:19
Tajo--一个分布式数据仓库系统(概述)

前言:一直对OS X比较仰慕,刚工作送给自己的第一件大礼就是mac pro,嘿嘿。最近在看一个叫tajo得分布式数据仓库,需要依赖protoc 2.4.1,2.5.0都不work,不知道为啥,我在装2.4.1的时候make不过,报make[2]: *** [message.lo] Error 1这种错误,上网查了需要修改一下message.h代码,贴一下解决办法:

解决办法:修改src/google/protobuf/message.h

#ifdef __DECCXX
// HP C++'s iosfwd doesn't work.
#include <iostream>
#else
#include <sstream>
//#include <iosfwd>
#endif

言归正传,开始介绍一下这个tajo吧。

  Apache tajo是韩国大学数据库实验室开源的基于YARN的分布式数据仓库,目前是Apache的二级项目。Tajo的设计思想类似于Tenzing,它充分借鉴了MapReduce和DataBase的优势,使其具有Hive的扩展性和容错性好的优点,但同时性能比Hive高不少。Tajo是一个分布式数据仓库系统,基于Hadoop实现,特点是低延迟、高可伸缩,提供专用查询和ETL工具。主要由如下特点:

1、 可伸缩性和低延迟

完全分布式的 SQL 查询处理,基于存储于 HDFS 的大数据集

超低响应时间(约100毫秒),在合理数据范围内的简单查询

支持长时间运行的查询

容错支持,避免某些任务失败后的查询重启

动态调度,处理和异构集群节点故障

2、 ETL

ETL 可实现不同数据格式之间的转换

支持多种文件格式,如 CSV、RCFile 和 RowFile

3、 扩展性

支持用户自定义函数

提供自定义文件格式的 Scanner/Appender 接口

4、 兼容性

遵循 ANSI/ISO SQL 标准,非标准方面遵循 PostgreSQL 规范

支持 HiveQL 模式

在 HCatalog 和 Hive MetaStore 实现表访问

支持 JDBC 驱动

5、 简单

提供交互式 Shell 来提交 SQL 查询到 Tajo 集群

提供备份和恢复工具

异步/同步 Java API 来提交 SQL 查询到 Tajo 集群