module DBA::LDJSON

Public Class Methods

dump(database, table_name, path) click to toggle source
# File lib/dba/ldjson.rb, line 5
def self.dump(database, table_name, path)
  File.open(path, 'w+') do |io|
    database[table_name].each do |row|
      io.puts ::JSON.generate(row.compact)
    end
  end
end
load(path, database, table_name) click to toggle source
# File lib/dba/ldjson.rb, line 13
def self.load(path, database, table_name)
  dataset = database[table_name]

  database.transaction do
    File.readlines(path).each do |line|
      dataset.insert(::JSON.parse(line))
    end
  end
end