sarat1669

sarat1669

I wanted to know which NoSQL databases offer official clients for elixir/erlang?
We currently have mongo as our database and the application is written in JAVA. We are considering porting it to elixir, but since mongo driver for elixir isn’t mature enough, we are looking for an alternative.
Which database are you using and what would you recommend?

Showing Posts 1 to 10

AstonJ

AstonJ

What are your requirements? And… any reason why you wouldn’t want to use Postgres?

_Also did you see the MongoDB adapters here: Packages | Hex

sarat1669

sarat1669 OP

We were having systems running on MySQL previously and chose mongo due to scalability issues. And postgres doesn’t natively provide sharding. I think postgres is more suited for read-heavy workloads. Our workloads are more write-heavy, so we chose Mongo.

I checked the adapters for mongo and most of them aren’t maintained anymore.

Also from the author of the package:

Ankhers

Ankhers

What features are you looking for from a mongo driver? There has been some improvement on it since I wrote that.

dimitarvp

dimitarvp

Have you checked the Basho products one of which is Riak, and it’s written in Erlang?

I am not affiliated but heard people praising them. Never had the chance to try any of their products so far though.

sarat1669

sarat1669 OP

Sorry, but I haven’t used the driver, so not aware of the current limitations (if any) I was going through the discussion on the previously mentioned thread and thought it wasn’t actively maintained.

sarat1669

sarat1669 OP

I think Riak is more of a Key-Value store than a NoSQL database. Also it is eventually consistent and doesn’t support atomic updates.

Ankhers

Ankhers

I’ll admit there hasn’t been much work done on the driver lately, the last commit was about a month ago, but it is still maintained. If you give it a look and there are some features that are not currently in there, just post an issue and we can probably get it sorted out.

outlog

outlog

what is the nature of the data? using postgres with GitHub - timescale/timescaledb: A time-series database for high-performance real-time analytics packaged as a Postgres extension · GitHub or GitHub - citusdata/citus: Distributed PostgreSQL as an extension · GitHub comes to mind.. admittingly I would think “normal” postgres is also up for the job..

that being said I would cautiously warn against changing both the DB and the App layer(to elixir I assume) at the same time.. but all depends on complexity etc. etc.

I would try and get something going using the old DB and Elixir (perhaps reverse proxy the Java app and then build out slowly.. Migrating from Rails to Elixir, bit by bit - #3 by outlog)

OvermindDL1

OvermindDL1

Yep, even raw-bog-standard PostgreSQL has fantastic nosql style storage with far more features than something like mongodb. Although I personally always question why someone thinks they need a nosql style storage, having a properly typed system is always far safer and often much faster. :slight_smile:

sarat1669

sarat1669 OP

The data has multiple objects which can be owned by multiple owners (sub-systems). A subsystem can replace the current object with a new object and assign its properties to different subsystems. The number of levels of the number of object is non-deterministic. It depends on the runtime inputs. And we also do a lot of scheduling based on priority, cost optimisation, etc on top of these subsystems. We have borrowed some concepts from FBP as well. I think modelling such kind of data in a traditional database isn’t a good idea.

Where Next? Top

Trending in Questions Top

stjefim
Hello! Suppose you are building workflow (order / task / payment) processing system with the following requirements: Each workflow con...
New
water
I’m aware of 2 such projects, are there others? git: GitHub - team-alembic/realworld: A fullstack Phoenix LiveView application with back...
New
itzmidinesh
Hi all, I’m working on a Phoenix project where I need to make external HTTP requests and I’m trying to choose between Req and HTTPoison....
New
peck
Hi everyone. My team and I have been working on a fairly modest app based around video streaming and chat, but we’ve landed a customer t...
New
leoschweizer
Hi, we run different LLM models across a cluster, with each node loading a configurable subset. Model-specific queues let nodes consume ...
New
csmr
Hi all, I’m new here and would like to hear peoples views on my Elixir/Phoenix based game-engine! :smiley: Mutonex gamedesign was finish...
New
Stef-Verniers
Hello I’ve been coding in Elixir for almost two years now because of my current job where we implemented Elixir in our application. But ...
New

Other Trending Topics Top

dominicletz
Hey there, I haven’t seen a list of useful Elixir specific skills for the popular AI tools yet so I’m starting one here with my first. ...
New
mudasobwa
I fully migrated to my own harness from Anthropic/Gemini and I think it’s time to share it. Welcome DSH, the DeepSeek Harness, fully writ...
New
KristerV
Hey. Is there anyone here who creates agents in their apps? Not talking about using agents, but creating them. I’m finding it pretty diff...
New
jimsynz
Beam Bots (or just BB for short) is a framework for building fault-tolerant robotics applications in Elixir using familiar OTP patterns. ...
New
webofbits
With AI doing more of the implementation work, I’ve been wondering how much coding I should deliberately keep doing myself. My main conc...
#ai
New
OndrejValenta
(I just needed to vent somewhere and LinkedIn is full of hope, or hype, I’m not sure which exactly) AI dream has many faces, but general...
New

We're in Beta

About us Mission Statement

Options

Thread Display Mode




Thread Preview

Skip Thread Previews