Module: ChConnect

Defined in:
lib/ch_connect.rb,
lib/ch_connect/config.rb,
lib/ch_connect/version.rb,
lib/ch_connect/response.rb,
lib/ch_connect/connection.rb,
lib/ch_connect/body_reader.rb,
lib/ch_connect/http_transport.rb,
lib/ch_connect/transport_result.rb,
lib/ch_connect/null_instrumenter.rb,
lib/ch_connect/native_format_parser.rb

Overview

Ruby client for ClickHouse database with Native format support.

Examples:

Basic usage

ChConnect.configure do |config|
  config.host = "localhost"
  config.port = 8123
end

conn = ChConnect::Connection.new
response = conn.query("SELECT 1")

Using connection pool

pool = ChConnect::Pool.new
response = pool.query("SELECT * FROM users")

Defined Under Namespace

Classes: BodyReader, Config, Connection, Error, HttpTransport, NativeFormatParser, NullInstrumenter, QueryError, Response, TransportResult, UnsupportedTypeError

Constant Summary collapse

VERSION =
"0.2.2"

Instance Attribute Summary collapse

Class Method Summary collapse

Instance Attribute Details

#bodyHTTP::Response::Body (readonly)

Returns response body.

Returns:

  • (HTTP::Response::Body)

    response body



11
# File 'lib/ch_connect/transport_result.rb', line 11

TransportResult = Data.define(:body, :summary)

#summaryHash (readonly)

Returns ClickHouse query summary.

Returns:

  • (Hash)

    ClickHouse query summary



11
# File 'lib/ch_connect/transport_result.rb', line 11

TransportResult = Data.define(:body, :summary)

Class Method Details

.configConfig

Returns the global configuration instance.

Returns:

  • (Config)

    the configuration instance



40
41
42
# File 'lib/ch_connect.rb', line 40

def self.config
  @config ||= Config.new
end

.configure {|Config| ... } ⇒ void

This method returns an undefined value.

Yields the global configuration for modification.

Yields:

  • (Config)

    the configuration instance



48
49
50
# File 'lib/ch_connect.rb', line 48

def self.configure
  yield(config) if block_given?
end