我有几个按模式系列列出的列:限定符。以下是具有第一行值的列:
b'data:name': b'test33',
b'data:appender.0.more.deep.0.name': b'nested',
b'data:appender.0.more.deep.0.value': b'4711',
b'data:appender.0.more.deep.1.name': b'nested2',
b'data:appender.0.more.deep.1.value': b'42',
b'data:appender.0.more.name': b'Alex',
b'data:appender.0.more.process': b'buy',
b'data:appender.0.more.value': b'1.0',
b'data:appender.0.id': b'32542352352354432',
b'data:appender.1.more.name': b'Andrew',
b'data:appender.1.more.process': b'sell',
b'data:appender.1.more.value': b'20.0',
b'data:appender.1.id': b'deaf3232432',
…
b'data:appender.47110.more.deep.name': b'3rfsdf3',
b'data:appender.47110.more.deep.value': b'412',
b'data:appender.47110.more.name': b'Jenny',
b'data:appender.47110.more.process': b'buy',
b'data:appender.47110.more.value': b'10.0',
b'data:date': b'2020-11-02 12:18:49.479229',
b'data:ob.0.cd': b'902359874598459834985093',
b'data:ob.0.n': b'235a3ff4234234',
b'data:s.c': b'hco',
b'data:s.s.p': b'nm',
b'data:id': b'5345345'
问题是如何使用happybase 查询至少一列'data:appender.NumberX.more.deep.NumberY.value' 的值为42 的行。我不知道NumberX 或NumberY 的最大数量。正如您在上面的示例中所见,NumberY 不一定存在。这同样适用于 NumberX。
我不知道如何使用 python/happybase 查询列,因为我是 HBase/happybase 的新手。首先,我会检测 re.findall(".[0-9]*.", key) 这样的列名的数字,然后用一个点替换它。我想创建一个像这样的查询 data:appender.more.deep.name 查找所有可能的列(例如在 'data:appender.47110.more.deep.value' 或 'data:appender.0.more.deep .0.value' 或 'data:appender.0.more.deep.1.value'