[我有[Azure事件中心](https://docs.microsoft.com/en-us/azure/event-hubs/)提取的用户数据流。
我正在使用[Azure流分析](https://docs.microsoft.com/en-us/azure/stream-analytics/)通过给定productId的视图的COUNT(*)汇总该数据。
然后我在CosmosDB中更新productId的视图计数。
在原型中,我像这样在Stream Analytics作业中运行查询:
SELECT
productId, COUNT(*) AS views
INTO
cosmosDbOutput
FROM
eventHubInput
TIMESTAMP BY moment
GROUP BY productId, System.Timestamp()
此查询在所有时间中提供了产品的视图。
我在Cosmos中运行查询以检索最受欢迎的视图:
SELECT TOP 10 * FROM c
ORDER BY c.views DESC
我只想保留产品在过去30天]中看到的视图。
[我看到Stream Analytics作业具有[窗口功能](https://docs.microsoft.com/en-us/azure/stream-analytics/stream-analytics-window-functions),最长时间为7天。
鉴于窗口功能的限制,有没有办法编写汇总超过7天的查询?
如果没有,我应该考虑在工具或存储方面采用不同的方法吗?
我有[Azure事件中心](https://docs.microsoft.com/en-us/azure/event-hubs/)提取的用户数据流。我正在使用[Azure Stream Analytics](https:// docs ....
我假设您过去的数据不会改变,因此不需要使用Stream Analytics。一旦计算出计数,就可以将其持久化在SQL数据库或表服务(Cosmos /存储)上并创建实例化视图。