Druid、特に RDruid を使い始めたばかりで、データセットが非常に大きいため、DB からランダム化された小さなサンプルを取得したいと考えています。
RDruid を使用すると、次のようなクエリがあります。
res2 = druid.query.groupBy(
url = druid.url("hostname", port=8080),
dataSource = "playback",
intervals = interval(
fromISO("2013-09-20T00:00:00"),
now()
),
dimensions = list(dimension("platformInfo_deviceType"), dimension("isp")),
granularity="hour",
aggregations = list(
sum(metric("streamStartCount"))
)
)
基礎となるデータのランダムな部分に基づいて、時間ごと/分ごとのロールアップを構築したいと考えています。
これは可能ですか?おそらく、基になるデータ レコードにランダムな 4 桁の数字/文字列を割り当てて、一致するルールを持つレコードのみをロールアップするフィルターを適用するようなことを試すことができます。
たとえば、ランダム文字列が > 8888 の場合、8889 から 9999 までのすべてのレコードが選択されます。
何か案は?