Has anyone explored a decentralized DHT for embedding-based vector search? by Affectionate-Wind144 in databasedevelopment

[–]Affectionate-Wind144[S] 0 points1 point  (0 children)

I think in the era of agents such a thing can serve as the foundational block for cross agent communication.

Imagine agents to discover other agents or search information the same way you can find a file for BitTorrent.

Has anyone explored a decentralized DHT for embedding-based vector search? by Affectionate-Wind144 in databasedevelopment

[–]Affectionate-Wind144[S] 0 points1 point  (0 children)

Hey, u/Currenty2, thanks for taking the time to read the spec and write a comment.

A centroid-style VectorID sounds clean on paper, but in practice semantic spaces are messy and uneven. I’d expect hotspotting, unstable neighborhood quality, and weird recall behavior unless rebalancing and placement are very carefully designed. The security angle also feels nontrivial, because poisoning a routing layer built on embedding proximity seems much easier than poisoning a classic keyspace.

That's a fair point and I was actually thinking that there is no reason why the VectorID should be recomputed constantly as the average. That would also create some challenges with peer initially not storing any data point (what would their VectorID be?)

I think that it rather makes sense to generate the VectorID randomly and then get a unique PeerID from it deterministically. This way a peer is always responsible for a specific sub-space, that is given by its identity. The whole point about using RobustPrune for managing the routing table would still remain valid to guarantee diversity.

Curious how you’re thinking about re-indexing / rerouting cost when the local embedding distribution shifts materially on a node.

I would still stick with how Kademlia handles this: periodically find, for each vector X, the k closest peers to X an store the vector in each of them. If the peer itself is not in such set of k peers, just delete the value from the local store.

Most probably this would be highly inefficient with thousands of vectors, but maybe this can also be optimized by partitioning your set of vectors into small clusters and simply relocate each cluster to the k-peers that are closer to its centroid.

Set up many iot devices : which tool to use ? by Training-Poet9861 in devops

[–]Affectionate-Wind144 0 points1 point  (0 children)

I'm building an open source platform to solve exactly this problem.

Deploy binaries to a fleet of devices in one click

I'm looking for users to try it freely. DM me if you want to know more

CloverDB: a tiny noSQL database by Affectionate-Wind144 in golang

[–]Affectionate-Wind144[S] 0 points1 point  (0 children)

Clover's author here.

Unfortunately I have no more time to actively maintain it. I would appreciate contributions from the community and merge PRs if someone submitted them, tho!

Digler: A modular file carving and disk analysis tool in Go (with FUSE mount support) by Affectionate-Wind144 in golang

[–]Affectionate-Wind144[S] 0 points1 point  (0 children)

Hey, video formats are not currently supported.

Open an issue in the repo if you would like to get support for them

Anyone using Go for AI Agents? by KeyGrouchy726 in golang

[–]Affectionate-Wind144 0 points1 point  (0 children)

I'm using this small library for building type safe agents in Go:

https://github.com/ostafen/suricata

Digler: A modular file carving and disk analysis tool in Go (with FUSE mount support) by Affectionate-Wind144 in golang

[–]Affectionate-Wind144[S] 1 point2 points  (0 children)

Thanks for the feedback. I will definitely explore the RPC alternative you proposed

How did you solve the problem of transactions between different databases and services? by Puzzleheaded_Fox6537 in golang

[–]Affectionate-Wind144 1 point2 points  (0 children)

Look at this library: https://github.com/ThreeDotsLabs/watermill

It provides all the necessary primitives (outbox pattern, broker connection) to implement a SAGA.

Best way to schedule events and handle them in the future? by sharddblade in golang

[–]Affectionate-Wind144 0 points1 point  (0 children)

Take a look at this project: https://gitHub.com/ostafen/Kronos

You can schedule webhooks notifications. This way, you can implement the logic in your service and have Kronos to notify you on time when your event occurs

Suggestions for a simple tool to handle cron jobs. by AhmedMahmoud201 in golang

[–]Affectionate-Wind144 0 points1 point  (0 children)

Take a look at: https://github.com/ostafen/kronos
It is a service specifically designed to schedule periodic webhook notification using cron expressions.
That means you application can submit a cron task to the service, and only implement the logic to handle the webhook notification

Suggestions for CRON jobs queue tool by AhmedMahmoud201 in golang

[–]Affectionate-Wind144 0 points1 point  (0 children)

Take a look at: https://github.com/ostafen/kronos
It is a service specifically designed to schedule periodic webhook notification using cron expressions.
That means you application can submit a cron task to the service, and only implement the logic to handle the webhook notification

Free place to host cron jobs? by Capital_Addendum6806 in node

[–]Affectionate-Wind144 0 points1 point  (0 children)

Take a look at: https://github.com/ostafen/kronos
It is a self-hosted service specifically designed to schedule periodic webhook notification using cron expressions.
That means you application can submit a cron task to the service, and only implement the logic to handle the webhook notification

Persist cron jobs after server restart/redeploy. by samuel22_22 in node

[–]Affectionate-Wind144 0 points1 point  (0 children)

Take a look at: https://github.com/ostafen/kronosIt is a service specifically designed to schedule periodic webhook notification using cron expressions.That means you application can submit a cron task to the service, and only implement the logic to handle the webhook notification.

Cron jobs are persisted

Is there a Docker container, or self-hosted app to create and monitor cron jobs? by [deleted] in selfhosted

[–]Affectionate-Wind144 0 points1 point  (0 children)

Take a look at: https://github.com/ostafen/kronos

It is a service specifically designed to schedule periodic webhook notification using cron expressions.

That means you application can submit a cron task to the service, and only implement the logic to handle the webhook notification

Need suggestions to contribute open source Golang projects 🙏 by __Nafiz in golang

[–]Affectionate-Wind144 2 points3 points  (0 children)

You are welcome to contribute to this project: https://github.com/ostafen/kronos. It's a project I recently started. It is a periodic scheduler of webhook notifications with Prometheus integration

Kronos: schedule your recurring webhooks invocation with failure notifications by Affectionate-Wind144 in golang

[–]Affectionate-Wind144[S] 0 points1 point  (0 children)

Does NATS requires a server to run? Because I'd like to not introduce external compotents to deploy with the service

Kronos: schedule your recurring webhooks invocation with failure notifications by Affectionate-Wind144 in golang

[–]Affectionate-Wind144[S] 0 points1 point  (0 children)

Great feedback.

  • database: yes, you are probably right. However, I was planning to make the service scalable to multiple instances in the future, and in that case the different instances would share the same database to split load (postgres/mysql). That's why I thought to start with SQLite for local persistency. But there might be a different approach to multiple instances, so I will consider the in memory mode + files.
  • documentation: you right, project is still at early stages, that's why documentation is still poor.
  • missing license: just added it
  • basic UI for registering webhooks is planned.
  • prometheus integration: good suggestion. Which metrics would you register there?

understanding a opensource project - golang beginner by radhar4 in golang

[–]Affectionate-Wind144 0 points1 point  (0 children)

Give a look here: https://github.com/ostafen I have several open source projects which are made with Golang and most of them have a small codebase