nodejs cosmosdb 获取 table 中的总记录数
nodejs cosmosdb get count of total records in a table
我正在将 cosmosdb 与 azure table api 一起使用,但我从哪里看不到从 table 获取总记录数的方法。可以看到有一些方法可以用 sql api 获取记录数。使用 azure table apis 获取计数的最佳方法是什么?我正在使用 nodejs 连接到这个实例。
What is the best possible way to get count using azure table apis?
根据我的 researching and rest api,不幸的是,没有直接的方法使用 azure table api 来获取计数,这类似于 [=22] 中的 count
关键字=] api 查询.
一种方法是在 table 中列出所有实体并获取它们的数量。这是一种非常糟糕的方法,如果您必须遍历数十亿条记录,它的成本可能会有点高。你能做的最好的事情是做一个计划查询来枚举所有分区和行键并将它们相加,从而控制操作的成本和时间。
此外,您可以在 cosmos db feedback 中发送您想要的要求。
我找到了这个页面:https://microsoft.github.io/AzureTipsAndTricks/blog/tip152.html
我尝试在 nodejs 中做同样的事情,它对我有用:
await container.items.query('SELECT VALUE COUNT(1) FROM c', {maxItemCount: -1}).fetchAll();
我正在将 cosmosdb 与 azure table api 一起使用,但我从哪里看不到从 table 获取总记录数的方法。可以看到有一些方法可以用 sql api 获取记录数。使用 azure table apis 获取计数的最佳方法是什么?我正在使用 nodejs 连接到这个实例。
What is the best possible way to get count using azure table apis?
根据我的 researching and rest api,不幸的是,没有直接的方法使用 azure table api 来获取计数,这类似于 [=22] 中的 count
关键字=] api 查询.
一种方法是在 table 中列出所有实体并获取它们的数量。这是一种非常糟糕的方法,如果您必须遍历数十亿条记录,它的成本可能会有点高。你能做的最好的事情是做一个计划查询来枚举所有分区和行键并将它们相加,从而控制操作的成本和时间。
此外,您可以在 cosmos db feedback 中发送您想要的要求。
我找到了这个页面:https://microsoft.github.io/AzureTipsAndTricks/blog/tip152.html
我尝试在 nodejs 中做同样的事情,它对我有用:
await container.items.query('SELECT VALUE COUNT(1) FROM c', {maxItemCount: -1}).fetchAll();