整合 Tachyon 运行Shark(译)

整合 Tachyon 运行Shark

前提是已经有 Shark , 咱们也假设你已经安装了 Tachyon 和 Hadoop  根据  Local Mode or  Cluster Modehtml

Shark 0.7 增长了一个新的存储格式支持从 Tachyon 高效率读取数据,这使得在 Shark 实例间数据共享和隔离。咱们的聚会幻灯片(slide)给出了使用Tachyon 缓存 Shark's 表的好处一个很好的概述。总之,如下四个是主要的:git

  • 内存中的数据共享多个 Shark 实例 (即:增强隔离)github

  • 即时恢复内存中的表web

  • 减小 Shark 的堆大小致使的频繁GC 问题缓存

  • 若是表的大小超出了可用内存总数,只有经常使用列会被缓存在内存中(译者注:根据使用频率缓存)ide

Shark 兼容性

Tachyon 版本 Shark 版本
0.2.1 0.7.x
0.3.0 0.8.1
0.4.0 0.9.0
0.4.1 0.9.1 +
0.5.0 0.9.1 +

配置

为了基于Tachyon运行 Shark,首先须要配置Tachyon,在 Local Mode or in Cluster Mode, 及 HDFS 。oop

而后添加如下行内容在 shark-env.sh:spa

export TACHYON_MASTER="tachyon://TachyonMasterHost:TachyonMasterPort" export TACHYON_WAREHOUSE_PATH=/sharktables

缓存 Shark tables 到 Tachyon

组合方式在Tachyon 上建立缓存表,运行这些查询须要一些数据已经在 文件系统 或加载到 Shark。code

指定 TBLPROPERTIES(“shark.cache” = “tachyon”), 示例:
CREATE TABLE data TBLPROPERTIES(“shark.cache” = “tachyon”) AS SELECT a, b, c from data_on_disk WHERE month=“May”;
指定表名字必须以 _tachyon 结尾,示例:

CREATE TABLE orders_tachyon AS SELECT * FROM orders;
orm

以后再Tachyon中建立这个表,你能够像其余表那样查询它。

相关文章
相关标签/搜索