摘要:表与表如何映射我们已经知道中的表其实是映射和存储在表中的,本文通过一个简单介绍一下中创建的表是如何映射到表。下面通过一个例子简单介绍如何通过来访问原生的表。
Trafodion表与HBase表如何映射
我们已经知道Trafodion中的表其实是映射和存储在HBase表中的, 本文通过一个简单DEMO介绍一下Trafodion中创建的表是如何映射到HBase表。
1.创建Trafodion测试表并插入样例数据
SQL>create table mytable(a integer not null, b char(10), primary key (a)); --- SQL operation complete. SQL>insert into mytable values (1, "abc"), (2, "def"); --- 2 row(s) inserted. SQL>select * from mytable; A B ----------- ---------- 1 abc 2 def --- 2 row(s) selected. ---------------------
2.通过HBase Shell查询前面创建的表
hbase(main):002:0> scan "TRAFODION.SEABASE.MYTABLE" ROW COLUMN+CELL x80x00x00x01 column=#1:x01, timestamp=1475979256797, value=x80x00x00x01 x80x00x00x01 column=#1:x02, timestamp=1475979256797, value=x00abc x80x00x00x02 column=#1:x01, timestamp=1475979256800, value=x80x00x00x02 x80x00x00x02 column=#1:x02, timestamp=1475979256800, value=x00def
3.通过上述结果,我们可以验证以下结论
Trafodion中的每一列数据都存放在HBase表中多带带的CELL中
每一个Trafodion表采用单一column family,它的名字叫"#1"
Trafodion中每一列对应HBase表中有一个Column qualifier,它是一个整数的序号,从1开始计数,为了避免长名浪费空间
HBase表中的rowkey是对应Trafodion表主键所有字段进行编码后的结果,为了保证正确的进行二进制排序
对于给定的Trafodion表,HBase表中的rowkey长度是一致的
Trafodion访问原生HBase表Trafodion中所有的原生HBase表都拥有相同的表结构,通过Trafodion访问原生HBase表有两种模式:ROW和CELL。
下面通过一个例子简单介绍如何通过Trafodion来访问原生的HBase表。
1.HBase Shell下创建测试表并插入一条记录
hbase(main):001:0> create "nativetab","colfam1" 0 row(s) in 0.4610 seconds => Hbase::Table - nativetab hbase(main):002:0> put "nativetab","row1","colfam1:col1", hbase(main):003:0* "val1" 0 row(s) in 0.1370 seconds hbase(main):004:0> scan "nativetab" ROW COLUMN+CELL row1 column=colfam1:col1, timestamp=1475892882126, value=val1 1 row(s) in 0.0270 seconds.
2.Trafodion CLI 通过CELL模式访问上述表
SQL>select * from hbase."_CELL_"."nativetab"; ROW_ID COL_FAMILY COL_NAME COL_TIMESTAMP COL_VALUE ---------------------------------------------------------------------------------------------------- ---------------------------------------------------------------------------------------------------- ---------------------------------------------------------------------------------------------------- -------------------- ----------------------------------------------------------------------------- row1 colfam1 col1 1475892882126 val1 --- 1 row(s) selected.
3.Trafodion CLI 通过ROW模式访问上述表
SQL>select * from hbase."_ROW_"."nativetab"; ROW_ID COLUMN_DETAILS ---------------------------------------------------------------------------------------------------- -------------------------------------------------------------------------------------------------------------------------------- row1 colfam1:col1val1 --- 1 row(s) selected.
作者:Post_yuan,易鲸捷资深交付工程师。
文章版权归作者所有,未经允许请勿转载,若此文章存在违规行为,您可以联系管理员删除。
转载请注明本文地址:https://www.ucloud.cn/yun/17814.html
摘要:它主要包括以下几部分采用对文本进行文法分析,生成语法树。对语法树进一步进行分析,类似程序编译器的语义分析,对语法合格的进一步进行检查。优化器对语法树应用各种规则,生成不同的执行计划,形成一个搜索空间。 Trafodion简介 Trafodion是一个构建在Hadoop/HBase基础之上的关系型数据库,它完全开源免费。Trafodion能够完整地支持ANSI SQL,并且提供ACID事...
摘要:它主要包括以下几部分采用对文本进行文法分析,生成语法树。对语法树进一步进行分析,类似程序编译器的语义分析,对语法合格的进一步进行检查。优化器对语法树应用各种规则,生成不同的执行计划,形成一个搜索空间。 Trafodion简介 Trafodion是一个构建在Hadoop/HBase基础之上的关系型数据库,它完全开源免费。Trafodion能够完整地支持ANSI SQL,并且提供ACID事...
阅读 1297·2021-11-24 09:38
阅读 3236·2021-11-22 12:03
阅读 4071·2021-11-11 10:59
阅读 2287·2021-09-28 09:36
阅读 1007·2021-09-09 09:32
阅读 3384·2021-08-05 10:00
阅读 2505·2021-07-23 15:30
阅读 2949·2019-08-30 13:12