Sha256: 1d3f3d1ec855df96f8a999f2a84acfbffed08191eba96e69fed94db8ce6946a6
Contents?: true
Size: 1016 Bytes
Versions: 9
Compression:
Stored size: 1016 Bytes
Contents
module Blazer module Adapters class HiveAdapter < BaseAdapter def run_statement(statement, comment) columns = [] rows = [] error = nil begin result = client.execute("#{statement} /*#{comment}*/") columns = result.any? ? result.first.keys : [] rows = result.map(&:values) rescue => e error = e.message end [columns, rows, error] end def tables client.execute("SHOW TABLES").map { |r| r["tab_name"] } end def preview_statement "SELECT * FROM {table} LIMIT 10" end protected def client @client ||= begin uri = URI.parse(settings["url"]) Hexspace::Client.new( host: uri.host, port: uri.port, username: uri.user, password: uri.password, database: uri.path.sub(/\A\//, ""), mode: uri.scheme.to_sym ) end end end end end
Version data entries
9 entries across 9 versions & 1 rubygems