Поиск префикса по определенному столбцу в hbase не работает в Java

Есть столбец, в котором указано, что в hbase указаны страны, и я хочу добавить к этому столбцу префикс (это не ключ строки), тогда я буду использовать ColumnPrefixFilter и сделаю что-то подобное

    ColumnPrefixFilter columnPrefixFilter = new ColumnPrefixFilter("IND".getBytes());

но здесь у меня две проблемы:

  1. У меня нет никакой возможности указать семейство столбцов и имя пространства имен, чтобы он мог искать только в столбце стран.
  2. Во-вторых, этот фильтр не работает и не дает ответа, тогда как запись со значением INDIA присутствует. Это зависимости, которые я использую для hbase.

    <hbase-client.version>2.0.1</hbase-client.version>
    <hbase-ds.version>0.0.2-SNAPSHOT</hbase-ds.version>
    

1 ответ

Я не узнал, почему он не работал с ColumnPrefixFilter, хотя у меня была альтернатива сделать что-то подобное.

   SingleColumnValueFilter filter = new SingleColumnValueFilter(COLUMN_FAMILY_NAME, QUALIFIER_NAME, CompareOperator.EQUAL,
            new BinaryPrefixComparator("IND".getBytes()));

Это работает как шарм. Хотя я подожду, если кто-нибудь сможет объяснить, почему он не работал с ColumnPrefixFilter.

Другие вопросы по тегам