A native Haskell driver for PostgreSQL
Go to file
2017-02-23 17:11:10 +03:00
.images Updated README.md 2017-02-21 02:41:39 +03:00
bench Benchmarking latency 2017-02-20 21:41:59 +03:00
cbits Deleted asm file 2017-02-14 20:28:57 +03:00
src/Database/PostgreSQL Primitive decoders 2017-02-23 17:11:10 +03:00
tests Throwing Incorrect Usage Exceptions 2017-02-16 20:53:22 +03:00
tests_connection Refactored raw connection creating 2017-02-01 05:42:35 +03:00
.gitignore Initial commit 2017-01-02 00:56:56 +03:00
.travis.yml Connection mode 2017-01-28 23:58:12 +03:00
LICENSE Initial commit 2017-01-02 00:56:56 +03:00
postgres-wire.cabal Benchmarking latency 2017-02-20 21:41:59 +03:00
README.md Updated README.md 2017-02-21 02:41:39 +03:00
Setup.hs backbone for project 2017-01-02 03:48:20 +03:00
stack.yaml Replaced unagi-chan with TQueue 2017-02-14 15:27:56 +03:00

License MIT Linux build

Postgres-wire

A native Haskell driver for PostgreSQL.

Postgres-wire is an efficient implementation of the PostgreSQL binary protocol designed specifically for the high performance and low latency.

Performance

Requests

Each test consisted of running queries that select 300 rows of 100 bytes each in a loop with 8 concurrent connections to the database server for 10 seconds. The benchmark results were obtained from Intel(R) Core(TM) i7-6700K CPU @ 4.00GHz, 32 GB DDR4, PostgreSQL 9.5.5.

Features

  • No dependencies on C libraries such as libpq-dev.
  • Concise Haskell API.
  • First-class notifications support.
  • Sending multiple queries in a single batch.
  • Built-in prepared statement cache.
  • Fast serialization/deserialization.
  • In progress. Built-in TLS.
  • In progress. Encoders/decoders for built-in PostgreSQL types and advanced types: arrays, ranges, composites.

Documentation and examples

Will be available on Hackage.