HGraphStorage alternatives and similar packages
Based on the "Database" category.
Alternatively, view HGraphStorage alternatives based on common mentions on social networks and blogs.
-
erd
Translates a plain text description of a relational database schema to a graphical entity-relationship diagram. -
persistent-redis
Persistence interface for Haskell allowing multiple storage methods. -
squeal-postgresql
Squeal, a deep embedding of SQL in Haskell -
HDBC-session
This repository includes a joined query generator based on typefull relational algebra, and mapping tools between SQL values list and Haskell record type. -
acid-state
Add ACID guarantees to any serializable Haskell data structure -
postgresql-simple
Mid-level client library for accessing PostgreSQL from Haskell -
esqueleto
Bare bones, type-safe EDSL for SQL queries on persistent backends. -
groundhog
This library maps datatypes to a relational model, in a way similar to what ORM libraries do in OOP. See the tutorial https://www.schoolofhaskell.com/user/lykahb/groundhog for introduction -
hw-kafka-client
Kafka client for Haskell, including auto-rebalancing consumers -
mysql-simple
A mid-level client library for the MySQL database, intended to be fast and easy to use. -
postgresql-simple-migration
PostgreSQL Schema Migrations for Haskell -
vcache-trie
large, persistent, memcached values and structure sharing for Haskell -
vcache
large, persistent, memcached values and structure sharing for Haskell -
direct-sqlite
Low-level binding to SQLite3. Includes UTF8 and BLOB support. -
haskelldb
A library for building re-usable and composable SQL queries. -
dbmigrations
A library for the creation, management, and installation of schema updates for relational databases. -
postgresql-tx
[Moved to: https://github.com/Simspace/postgresql-tx] -
postgresql-orm
An Haskell ORM (Object Relational Mapping) and migrations DSL for PostgreSQL. -
postgresql-typed
Haskell PostgreSQL library with compile-time type inference -
ampersand
Build database applications faster than anyone else, and keep your data pollution free as a bonus. -
persistent-database-url
Parse DATABASE_URL into configuration types for Persistent
Static code analysis for 29 languages.
* Code Quality Rankings and insights are calculated and provided by Lumnify.
They vary from L1 to L5 with "L5" being the highest.
Do you think we are missing an alternative of HGraphStorage or a related project?
README
HGraphStorage
This project aims at implementing a simple graph database. Compared to other Haskell projects, it doesn't work in memory but at the moment purely on disk. The idea is to play around with storage techniques and hope that the OS disk cache will make performance acceptable.
Storage
As much as possible, we try to rely on fixed length records so that an ID can easily translate into a file offset for quick reading. The format of the files on disk is inspired by the Neo4J format as explained in various Neo4J presentations.
Indices
There is also an on-disk implementation of a tree that can be used to index for example string values
Transactions, concurrency
Nothing of the sort is implemented yet! Currently, the "database" consists of Handles to files, so no concurrent access is offered. Again, this is more a research project to play around things that are not often discussed (database layout of files, etc.).
Contributing
Feel free to contribute if you want! Currently there is a test suite and a benchmark alongside with the library code. Looking at the tests and the benchmark will give you an idea of the API. It's very low level at the moment!