3
특정 기준을 만족하는 모든 행을 검색하려면 HBase에서 스캔을 사용해야합니다. 그 이유는 필자가 필터를 사용하는 이유입니다. 두 개의 SingleColumnValueFilter). 지금, 나는 내 rowKeys이 방식으로 구성했다 :시작 행, 끝 행 및 필터가있는 HBase에서 스캔 사용하기
a.b.x|1|1252525
a.b.x|1|2373273
a.b.x|1|2999238
...
a.b.x|2|3000320
a.b.x|2|4000023
...
a.b.y|1|1202002
a.b.y|1|1778949
a.b.y|1|2738273
및 추가 요구 사항으로, 나는 "ABX | 1"로 시작하는 rowKey을 가진 행만을 반복 할 필요가
이제, 질문
- 내 필터 목록에 추가 PrefixFilter를 사용하면 스캐너가 항상 모든 행을 검색하지만 필터가 적용됩니다.
- startRow (접두어)와 filterlist (PrefixFilter없이)를 전달하는 검색을 인스턴스화하면 주어진 행 접두사에서부터 검색이 시작된다는 것을 이해했습니다. 그래서, "a.b.x." startRow로 스캔하면 a.b.y도 스캔됩니까?
- 새 스캔 (startRow, endRow)을 사용하고 setFilter를 사용하면 어떤 행동이 발생합니까? 즉, 누락 된 생성자 Scan (byte [] start, byte [] end, Filter filter)은 무엇입니까? 사전에
덕분에
안드레아
감사합니다,하지만 난 내 질문에 대답하지 않는 것을 생각한다. 제 말은, 사전 순 서적과 스캔 문제에 대해 알고 있고, 제 코드가 작동하고 있습니다. 내 질문은 내부적으로 스캔이 어떻게 실행되는지에 관한 질문이었습니다 (세 가지 질문 참조). 어쨌든 고맙습니다. – Andrea