用于从外壳进行REST的hbase模糊/过滤器列表匹配

时间:2019-03-20 05:16:26

标签: rest hadoop hbase stargate

我正在尝试使用模糊逻辑或多个过滤器(filterList)制定一些RESTful调用以从hbase表返回特定数据。我的行键由' BatchId + UserId + Timestamp '+' ModelId >”,例如,我希望能够找到所有行键都包含xyz用户ID和yxz的ModelId(与BatchId和时间戳记值无关)的人。

我没有从外壳复制模糊过滤器的运气,作为最后的选择,我试图使用过滤器列表(多个过滤器)分别对每个列进行过滤(这会降低性能,这会降低性能)我可以接受)。

关于过滤器列表,当尝试在RK自身上进行过滤时,我不确定要为限定符和列族传递什么值,也不确定添加多个过滤器的语法,因此不胜感激。

找到下面的filterlist的curl命令和args文件内容。

CURL: curl -vi -X PUT -H“ Content-Type:text / xml” -d @ args.xml“ host-rest-machine-address / namespace:table / scanner”

ARGS.XML:

<Scanner batch ="1024">

<filter>

{

    "type": "FilterList",

    "op": "MUST_PASS_ONE",

    "filters": [{

        "type": "FilterList",

        "op": "MUST_PASS_ALL",

        "filters": [{

            "type": "FamilyFilter",

            "op": "EQUAL",

            "comparator": {

                "type": "BinaryComparator",

                "value": "Y2Yx"

            }

        }, {

            "type": "QualifierFilter",

            "op": "EQUAL",

            "comparator": {

                "type": "BinaryComparator",

                "value": "cm93S2V5"

            }

        }, {

            "type": "RowFilter",

            "op": "EQUAL",

            "comparator": {

                "type": "BinaryComparator",

                "value": "MjAwMDAyMDE4OTM3Mw=="

            }

        }]

    }]

}

</filter>

</Scanner>

我的列族:cf1 (不确定对行键进行搜索时是否适用?) HBase表中的限定符:列名(也不确定如何在此处引用行键-在导入时尝试过行,行键,我的SQL别名,但没有运气) 值:要过滤给定列/表的值

注意-所有传递的值均以base_64编码

预先感谢

0 个答案:

没有答案