Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

How can i find out size of RethinkDB table?

Tags:

rethinkdb

I can't figure out how to get the data size of 'test.events' table.

r.db('rethinkdb').table('stats').whatGoesHere()
// Output size of 'events' table

Related: Get size of Rethinkdb database with Python

like image 347
AJcodez Avatar asked Oct 29 '15 17:10

AJcodez


1 Answers

This will list space allocated on HDD across all nodes in RethinkDB cluster:

r.db("rethinkdb")
  .table("stats")
  .filter({db:'test', table:'events'})
  .map(doc => doc('storage_engine')('disk')('space_usage')('data_bytes').default(0))
  .sum()

Alternatively, to list table sizes in MB:

r.db("rethinkdb").table("stats")
  .hasFields('db', 'table')
  .group('db', 'table')
  .map(doc => doc('storage_engine')('disk')('space_usage')('data_bytes').default(0))
  .sum()
  .ungroup()
  .map(doc => ({db: doc('group').nth(0), table: doc('group').nth(1), size: doc('reduction').div(1024).div(1024)}));
like image 81
analytik Avatar answered Sep 17 '22 00:09

analytik