Class: Dataflow::Adapters::PsqlAdapter

Inherits:
SqlAdapter
  • Object
show all
Defined in:
lib/dataflow/adapters/psql_adapter.rb

Overview

Interface between a data node and mongodb. We use mongodb to perform all the store/retrieve operations.

Constant Summary

Constants inherited from SqlAdapter

SqlAdapter::SYSTEM_ID

Instance Attribute Summary

Attributes inherited from SqlAdapter

#client, #settings

Instance Method Summary collapse

Methods inherited from SqlAdapter

#all, client, #count, #create_indexes, #delete, disconnect_clients, #find, #initialize, #ordered_system_id_queries, #recreate_dataset, #save, try_create_db, #update_settings, #usage

Constructor Details

This class inherits a constructor from Dataflow::Adapters::SqlAdapter

Instance Method Details

#fetch_table_usage(dataset:) ⇒ Object



7
8
9
10
11
12
13
14
15
16
17
18
# File 'lib/dataflow/adapters/psql_adapter.rb', line 7

def fetch_table_usage(dataset:)
  size = client["SELECT pg_relation_size('#{dataset}') as size"].first[:size]
  {
    memory: size,
    storage: size
  }
rescue Sequel::DatabaseError
  {
    memory: 0,
    storage: 0
  }
end