HBase过滤器继承咨询

发布于 2024-11-26 16:01:34 字数 545 浏览 0 评论 0原文

我需要一个有点像 TimestampsFilter 的过滤器,只不过它需要一个时间帧并在该帧内应用带有时间戳的每一行。 这是我的实现:

public class TimeFilter extends TimestampsFilter {
private long from;
private long to;

public TimeFilter(long from, long to) {
    this.from = from;
    this.to = to;
}

@Override
public ReturnCode filterKeyValue(KeyValue v) {
    long timestamp = v.getTimestamp();
    if (from <= timestamp && to >= timestamp) {
        return ReturnCode.INCLUDE;
    }
    return ReturnCode.SKIP;
}
}

这个实现足够好吗? 我找不到适合我需要的现有过滤器。 有什么意见吗?

I need a filter which is a bit like TimestampsFilter except that it takes a time frame and applies every row with timestamp within this frame.
This is my implementation:

public class TimeFilter extends TimestampsFilter {
private long from;
private long to;

public TimeFilter(long from, long to) {
    this.from = from;
    this.to = to;
}

@Override
public ReturnCode filterKeyValue(KeyValue v) {
    long timestamp = v.getTimestamp();
    if (from <= timestamp && to >= timestamp) {
        return ReturnCode.INCLUDE;
    }
    return ReturnCode.SKIP;
}
}

Is this implementation good enough?
I couldn't find an existing filter that suites my need.
Any input?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

我ぃ本無心為│何有愛 2024-12-03 16:01:34

你不能使用

Can't you use a setTimeRange on the Scan?

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文