整合 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中建立這個表,你能夠像其餘表那樣查詢它。

相關文章
相關標籤/搜索