plv8
Marten
plv8 | Marten | |
---|---|---|
14 | 24 | |
1,940 | 2,912 | |
0.6% | 1.4% | |
2.5 | 9.8 | |
13 days ago | 6 days ago | |
C++ | C# | |
GNU General Public License v3.0 or later | 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.
plv8
- Plv8: V8 Engine JavaScript Procedural Language Add-On for PostgreSQL
- Supabase Storage: now supports the S3 protocol
-
PLJS – JavaScript Language Plugin for PostreSQL
a bit more than an experiment at this point. pljs, even in its early state, has some very good results: https://github.com/plv8/plv8/issues/531#issuecomment-1627883...
passing through v8's javascript/c++ membrane has always been painful, and appears to be getting worse.
-
Sending Email From Postgres
From here you'll write a send_email function in Postgres that calls the API. I initially wrote the entire function in PLpgSQL and spent an entire day to get it debugged and working. And even then I wasn't happy with it. In my opinion that language is unintuitive and difficult to learn and debug. I switched over to PLV8, an extension for Postgres that supports writing functions in Javascript. It takes one click in the Supabase UI to enable this extension, and it will save hours and hours of time.
-
I wrote a database engine in Typescript
You jest, but the evil geniuses at plv8 have already done it for Postgresql.
-
Surrealdb – FOSS document-graph database, for the realtime web in Rust
To be honest I haven't used it, but I've extensively used pl/pgsql and a little pl/ruby, and know that https://plv8.github.io/ exists - it might be what you're looking for and it's on my list of things to play with
- PLV8 is a trusted Javascript language extension for PostgreSQL. It can be used for stored procedures, triggers, etc.
- PLV8 JavaScript Procedural Language Add-On for PostgreSQL
-
Show HN: Postgres.js – Fastest Full-Featured PostgreSQL Client for Node and Deno
but, let's take your straw man a little further. let's suppose that all of the actual parsing is done for you already, and all you're doing is iterating through the data structure, creating objects through the c++ api, and calling it good. that should be faster than calling the c++ JSON.parse(), shouldn't it? since we don't have to actually parse anything, right? no, it's actually much slower. you can see this in action at https://github.com/plv8/plv8/blob/r3.1/plv8_type.cc#L173-L60...
again, we're not talking about whether javascript in an interpreter is faster than c++, we're talking about whether v8's api causes enough slowdown that some workloads that require a lot of data between c++ and javascript are slower than the same workload that requires very little data between c++ and javascript ... because passing through v8's c++/javascript membrane is slow.
- Is there an efficient and easy way to duplicate a row an all relations?
Marten
-
Mongo but on Postgres and with strong consistency benefits
You can check Marten, that I was co-maintaining: https://martendb.io/. It doesn't have MongoDB-compliant API, but it's mature, stable and efficient.
- Marten – .NET Transactional Document DB and Event Store on PostgreSQL
-
Dapper vs. Entity Framework With Postgres
Id recommend trying out MartenDb. It's not really a PostgreSQL ORM, it actually uses Postgres more as a document database via jsonb. But it's excruciatingly easy to use and schema updates are a breeze (and largely automatic)
-
Show HN: Light implementation of Event Sourcing using PostgreSQL as event store
Check out Marten for a fully fleshed out implementation https://github.com/JasperFx/marten
-
Is anyone using Dapr
We are using ExtCore here to make our app modular: https://extcore.net/, and MartenDB for event store (which is surprisingly VERY simple) : https://martendb.io/
-
Yet another embedded DB (kind of)
I always loved Marten, it is so simple to use and yet powerful. If you are unfamiliar with it, it is a data access library (like an ORM) that is using JSON serialization and LINQ to store and query data from/to Postgres. It basically turns Postgres into document DB. Comparing it to EF, Marten doesn't require migrations since it stores documents.
-
This article is covering the potential problems you will face when using MongoDB for typical relational tasks.
You're better off using Postgres (has JSON columns.) If you want a more "document" oriented experience, use Marten: https://martendb.io/
-
Self-Paced Kit: Introduction to Event Sourcing with Node.js and TypeScript
For that part, the samples use EventStoreDB (https://www.eventstore.com/), which is the only mature event store I know in Node.js land. Event Sourcing allows using any database as backing storage. I'm co-maintainer of the Marten (https://martendb.io/), which is a .NET library that allows using Postgres as event store and document db.
-
CQRS is simpler than you think with C#11 and .NET 7!
Then you should check out Marten (https://martendb.io/). Our intention is to remove the boilerplate, we're using Postgres e having the built-in projections.
- Event-driven projections in Marten explained
What are some alternatives?
pg_auto_failover - Postgres extension and service for automated failover and high-availability
MongoDB - The MongoDB Database
pgaudit - PostgreSQL Audit Extension
Event Store - EventStoreDB, the event-native database. Designed for Event Sourcing, Event-Driven, and Microservices architectures
postgres-benchmarks - A set of benchmarks focusing on the performance of Postgres client libraries for Node.js
RavenDB - ACID Document Database
npmgraph - A tool for exploring NPM modules and dependencies
Yessql - A .NET document database working on any RDBMS
flutter_surrealdb_client_example - Example usage of SurrealDB in Flutter app
LiteDB - LiteDB - A .NET NoSQL Document Store in a single data file
orioledb - OrioleDB – building a modern cloud-native storage engine (... and solving some PostgreSQL wicked problems) 🇺🇦
Streamstone - Event store for Azure Table Storage