hash-db
pg-mem
hash-db | pg-mem | |
---|---|---|
5 | 14 | |
50 | 1,807 | |
- | - | |
0.0 | 6.6 | |
over 1 year ago | 12 days ago | |
Python | TypeScript | |
- | MIT License |
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
hash-db
-
CRDT-richtext: Rust implementation of Peritext and Fugue
https://github.com/samsquire/hash-db
I need to combine the ideas in each of these projects into a cohesive solution.
I did some work on trying to implement the YATA algorithm, poorly.
-
Ask HN: How do you test SQL?
From an SQL database implementation perspective, in my toy Python barebones SQL database that barely supports inner joins (https://github.com/samsquire/hash-db) I tested by testing on postgresql and seeing if my query with two joins produces the same results.
I ought to produce unit tests that prove that tuples from each join operation produces the correct dataset.
For a user perspective, I guess you could write some tooling that loads example data into a database and does an incremental join with each part of the join statement added.
-
Bullshit Graph Database Performance Benchmarks
I wrote a toy dynamodb, SQL, Cypher graph and document storage database engine in Python for the learning.
https://github.com/samsquire/hash-db
- Experimental distributed keyvalue database (it uses python dictionaries) imitating dynamodb querying with join only SQL support, distributed joins and simple Cypher graph support
-
How necessary are the programming fundamentals?
I am interested in database internals. Btrees come up with regard to designing database systems that are efficient to query on disk. Postgres uses them for its indexes. Radix trees are memory efficient tries which are useful for answering prefix queries. They're also called prefix trees. I use them to get a list of prefixes of a string. Useful for simple intellisense style forms or dynamodb style querying. I've also been studying LSM trees which are used in Leveldb and RocksDB.
I experiment with database technology in my experimental project hash-db https://github.com/samsquire/hash-db The code should be readable.
I need to change my search tree to be self balancing currently it grows to the left or right without balancing. I think I need to use tree rotation depending on which branch has the highest height.
pg-mem
- Setting up PostgreSQL for running integration tests
-
Show HN: I open-sourced the in-memory PostgreSQL I built at work for E2E tests
I've used pgmem https://github.com/oguimbal/pg-mem for the last couple of years for the same thing.
-
Ask HN: How do you test SQL?
I was wondering the other day how to classify tests that use a test double like pg-mem, which isn't a mock but isn't the Dockerized test DB either :
https://github.com/oguimbal/pg-mem
-
How to test nestjs modules?
In my case, I use TypeORM with PostgreSQL, and there's pg-mem to run an instance in memory, it supports most of the common functionality of PostgreSQL but you will need to do some adjustment to your code to be within the limits.
-
Working with offline data
Postgres in the browser is possible through pg-mem: "pg-mem is an experimental in-memory emulation of a postgres database" but it also suffers from no persistence. If you can persist to a file somewhere then read it in on startup (and if your local data isn't huge) this might work.
- Pg-mem: An in-memory re-implementation of PostgreSQL in JavaScript
-
Haskell as a first timer - Am I missing something ? Or is something broken ?
Dont get me wrong: I am trying to contribute to opensource as well, so I get that supporting small projects can be demanding. There's nothing wrong in not spending your weekends on OS. But not asking for help, nor specifying that a project is unmaintained, nor even answering issues & pull requests for years feels just wrong.
-
Ask HN: What Are You Working On?
A pure Javascript in memory emulation of Posgres, to help writing better node tests https://github.com/oguimbal/pg-mem
-
pg-mem, an in memory postgres DB instance for your unit tests, is now bound to multiple libraries (Knex, Typeorm, Slonik, pg, pg-promise) ... suggestions for the next one ?
Okay, I had a bit of spare time,I've implemented that, and it is now available with [email protected]
-
Zero delay development & unit testing iterations
To get a glimpse of what I'm talking about, you can clone this repo and follow "Development" instructions (by the way this is a small OS lib I maintain, I wrote about it here)
What are some alternatives?
electric - Local-first sync layer for web and mobile apps. Build reactive, realtime, local-first apps directly on Postgres.
NeDB - The JavaScript Database, for Node.js, nw.js, electron and the browser
kuzu - Embeddable property graph database management system built for query speed and scalability. Implements Cypher.
Prisma - Next-generation ORM for Node.js & TypeScript | PostgreSQL, MySQL, MariaDB, SQL Server, SQLite, MongoDB and CockroachDB
dbt-unit-testing - This dbt package contains macros to support unit testing that can be (re)used across dbt projects.
Lowdb - Simple and fast JSON database
ustore - Multi-Modal Database replacing MongoDB, Neo4J, and Elastic with 1 faster ACID solution, with NetworkX and Pandas interfaces, and bindings for C 99, C++ 17, Python 3, Java, GoLang 🗄️
typescript-clean-architecture - It is my attempt to create Clean Architecture based application in TypeScript.
pg_crdt - POC CRDT support in Postgres
maplibre-gl-js - MapLibre GL JS - Interactive vector tile maps in WebGL2
data-diff - Compare tables within or across databases
database-js - Common Database Interface for Node