Trafodion: Transactional SQL on HBase

HBase上实时分布式事务处理

介绍

HBase的SQL能力一直不足。Phoenix缺乏Join能力,eBay提出的kylin还不够简洁,facebook Presto的HBase连接器还没公开。

那么,Trafodion来了。它在HBase上提供了标准SQL功能,并支持事务OLTP。Trafodion是HP的开源举措。培养在惠普实验室和HP-IT开发一个企业级的SQL上的HBase解决方式。惠普拥有超过20年的积累,针对大数据的事务或业务工作负载,已经开发事务的SQL技术进入数据库technologyand解决方式。
Trafodion给Hadoop的生态系统带来了这一核心技术。要了解很多其它关于起源和项目的名称,请訪问:

www.hp.com/go/trafodion

目标工作负载

 

        Hadoop的工作负载,从长期执行的批处理模式。到跨越例如以下图所看到的的以低延时工作负载。

在右側被视为很适合的Hadoop的三类分析工作,因此也获取了最多的关注。与此相反,定义为“运营”最左边的工作是一类新工作负载。它包含OLTP工作负载,以及交易

这包含使用社交和移动数据的交互和意见结构化和半结构化数据的混合物。

        传统上。这些工作负载已经通过关系处理数据库。可是。关系数据库具有可扩展性的问题。不提供在某些情况下须要的架构灵活性。Hadoop的定位突破了


这些限制。市场有越来越多的兴趣和压力结合Hadoop的优点以显著减少成本,以拥抱这些工作负载在Hadoop的生态系统。

随着业务的工作负载代表的业务需求,它们通常由交易的不断流动,须要低延迟响应时间对于读/写訪问。此外,这些工作负载的特点是:

 

•与ACID兼容保护数据的完整性

•高可用性,并发性和可扩展性

•多结构化数据

•高速变化的数据需求

 

特性

        眼下,还没有现成的开源SQL的上HBase的解决方式能够充分地满足这些要求。

Trafodion提供下面功能以支持Hadoop的事务性工作:

•在多个SQL语句,表和行上ACID兼容的分布式事务保护

•丰富的。全功能的ANSI
SQL语言支持使用ODBC/
JDBC连接接口

•通过利用编译时和执行时优化以提高性能

•Trafodion打算使用并行感知的大型数据集查询优化器以提供Hadoop的的所有功能生态系统:

•通过HBase的列家族提供的架构灵活性结构

•在Hadoop的版本号支持快照功能

•高可用性和灾难恢复支持,复制和快照功能

 

长处

 

        Trafodion提供了一个全功能的HBase解决方式。优化全事务的SQL上的数据库管理系统的事务性的数据保护。

这些功能有助于克服了Hadoop在支持方面事务性工作的弱点。

 

 

使用Trafodion, 客户能获得例如以下优点:

•可以利用SQL专长 &复杂的MapReduce编程现有的事务性应用程序

•无缝支持已经存在的应用程序

•能够开发下一代高可扩展性,实时性事务处理应用

•降低数据延迟降低分析工作负载

也能获得Hadoop生态系统内在的下面优点:

•减少基础设施成本

•大规模的可扩展性和弹性颗粒

•提高数据可用性和灾难恢复保护

架构

Trafodion软件架构由三个不同的层次:client层,SQL数据库服务层,而且所述存储引擎层,例如以下图所看到的。

watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvY2hpbmFfd29ybGQ=/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center" alt="" height="236" width="563">

第一层是客户服务。应用程序通过标准的ODBC/JDBC訪问Trafodion数据库。

第二层是Trafodion提供一个关于HBase的顶部模式关系SQL抽象,封装了全部须要管理Trafodion数据库对象服务。这些服务包含连接管理,事务管理,优化计划生成和运行。Trafodion产生并联一个成熟的查询优化器查询计划,而无需复杂的MapReduce编程。

第三层是存储引擎由标准的hadoop服务,包含HBase的,HDFS和动物园管理员。Trafodion数据库对象存储在本地的Hadoop(HBase的/HDFS)数据库构。
Trafodion处理SQL语句的请求映射到本地HBase的透明代表应用程序的调用。

创新的关键

Trafodion的分布式事务管理(DTM)的组成部分提供了从事务的多个SQL语句。多个表或多个行的单一表的多重保护。此外,TrafodionDTM通过多个HBase区域配置利用传统的两阶段提交协议。
对横跨集群的分布式集群提供了保护。DTM提供了支持隐式(自己主动提交)。并明白(BEGIN,COMMIT,ROLLBACK
WORK)事务控制。

Trafodion对不同的事务性工作供了很多编译时和执行时的优化,从对于OLTP类交易的单个訪问到运营报告高度复杂SQL语句。

演示样例用例:OpenCart应用

OpenCartwhich是一个免费的开源电子商务平台,已被改动为运行Trafodion的SQL语句,而不是默认的数据库(MySQL的)的接口。

这是一个非常好的程序,以典型的OLTP工作负载特性。

前两张图显示的是惠普的购物车OpenCart的变化。最后两个图说明了工作量和查询
- 等级分析使用Trafodion查询工作台。

产品说明

惠普已经作为一个开源项目推出了Trafodion。并公布在Apache许可证2.0版下。Trafodion如今能够帮助您评估Trafodion的能力。并開始证明

概念和原型效果。

Trafodion文件和下载包中包括了安装程序和可运行代码,可在www.trafodion.org

Trafodion:Transactional SQL on HBase的更多相关文章

  1. Phoenix(SQL On HBase)安装和使用报告

    一.为什么使用Phoenix二.安装Phoenix2.1 兼容问题?2.2 编译CDH版本的Phoenix2.3 安装Phoenix到CDH环境中三.Phoenix的使用3.1 phoenix的4种调 ...

  2. Phoenix(sql on hbase)简单介绍

    Phoenix(sql on hbase)简单介绍 介绍: Phoenix is a SQL skin over HBase delivered as a client-embedded JDBC d ...

  3. spark sql读hbase

    项目背景 spark sql读hbase据说官网如今在写,但还没稳定,所以我基于hbase-rdd这个项目进行了一个封装,当中会区分是否为2进制,假设是就在配置文件里指定为#b,如long#b,还实用 ...

  4. Phoenix实现用SQL查询HBase

    博客已转移,请借一步说话,http://www.weixuehao.com/archives/111 HBase,一个NoSQL数据库,可存储大量非关系型数据. HBase,可以用HBase shel ...

  5. Phoenix(SQL On HBase)

    1.简介 Phoenix是一个HBase框架,可以通过SQL的方式来操作HBase. Phoenix是构建在HBase上的一个SQL层,是内嵌在HBase中的JDBC驱动,能够让用户使用标准的JDBC ...

  6. Phoenix的安装使用与SQL查询HBase

    一. Phoenix的简介 1. 什么是phoenix 现有hbase的查询工具有很多如:Hive,Tez,Impala,Shark/Spark,Phoenix等.今天主要说Phoenix.phoen ...

  7. 快速理解 Phoenix : SQL on HBASE

    转自:http://blog.csdn.net/colorant/article/details/8645081 ==是什么 == 目标Scope EasyStandard SQL access on ...

  8. hbase单机版安装+phoneix SQL on hbase 单节点安装

    hbase 单机安装部署及phoneix 单机安装 Hbase 下载 (需先配置jdk) https://www.apache.org/dyn/closer.lua/hbase/2.0.1/hbase ...

  9. hive Hbase sql

    Hive和HBase的区别 ​ hive是为了简化编写MapReduce程序而生的,使用MapReduce做过数据分析的人都知道,很多分析程序除业务逻辑不同外,程序流程基本一样.在这种情况下,就需要h ...

随机推荐

  1. 移动端(手机端)页面自适应解决方案—rem布局篇

    移动端(手机端)页面自适应解决方案-rem布局 假设设计妹妹给我们的设计稿尺寸为750 * 1340.结合网易.淘宝移动端首页html元素上的动态font-size属性.设计稿尺寸.前端与设计之间协作 ...

  2. windows上 python有多版本,如何管理,如何区别?

    win10环境下: 1. where python 查看安装了哪些版本. 2.更改对应python.exe 文件的名称就能更改调用python的名称了. 3.不同python是两个完全独立的软件(独立 ...

  3. 洛谷 P1156 垃圾陷阱 (01背包拓展)(好题!!)

    这真是一道好题目 学到了很多 一开始感觉吃或者不吃会有后效性 然后看到洛谷的题解,直接把这个有后效性的部分当作dp的维度和值 因为这个垃圾可以堆或者不堆,所以这个很像01背包, 但是加了非常多的限制条 ...

  4. CMSIS-RTOS 时间管理之时间延迟Time Delay

    时间管理 Time Management 此RTOS除了可以把你的应用代码作为线程运行,它还可以提供一些时间服务功能,使用这些功能你就可以访问RTOS的一些系统调用. 时间延迟Time Delay 在 ...

  5. ArcGIS api for javascript——加入动态地图

    描述 这个示例展示了增加一个按用户缩放或平移服务器每次绘制的地图.这样的地图没有切片的cache并被调用一个动态地图服务图层.ArcGISDynamicMapServiceLayer表示ArcGIS ...

  6. UVa 11085 - Back to the 8-Queens

    题目:给你一个棋盘上的八个皇后.每行一个.如今让他们互相不攻击,每一个皇后仅仅能竖着移动, 一次能够移动到本列的不论什么位置,问最少移动几步.能满足要求. 分析:搜索,八皇后.由于八皇后仅仅有92组解 ...

  7. 比较两个文件是否相同(C/C++语言)

    #include <stdio.h> #include <string.h> ; // Calculate the file size void Get_file_size(c ...

  8. 安装vnc出现的问题

    重启vnc 命令:/sbin/service vncserver start或者vncserver VNC的启动/停止/重启 #service vncserver start/stop/restart ...

  9. (转载)http协议的Request Payload 和 Form Data 的区别

    我正在开发的项目前端和后端是完全独立的,通过配置 webpack 的 proxy 将前端请求跨域代理到后台服务.昨天发现,我前端执行 post 请求,后台 springmvc 的 @RequestMa ...

  10. 技嘉H81M-DS2 主板安装 XP方法,及网卡驱动安装

    这是微软联合厂家封杀XP的结果,目的很简单,微软只想把你驱赶到WIN7.WIN8上去. 16.7.18 技嘉H81M-S1, G3260 安装XP系统 *BIOS 修改 Storage Boot Op ...