AtomSpace on IPFS !

71 views
Skip to first unread message

Linas Vepstas

unread,
Oct 20, 2019, 12:19:15 AM10/20/19
to opencog, Jim Rutt
Pursuant to a recent question from Jim Rutt, I thought it might be interesting to see if its possible to layer the atomspace on top of IPFS.  Rather than speculate, I thought I'd try to do it.   It's here:


So far you can only store the AtomSpace to IPFS; you cannot yet load from IPFS.  I've published a demo, which you can find at
/ipfs/QmT9tZttJ4gVZQwVFHWTmJYqYGAAiKEcvW9k98T5syYeYU

Unfortunately, you need to find a data explorer to view it, and I haven't found any good public websites for this, yet.  You'd need the built-in http://localhost:5001/ browser to see it clearly.

Issues and challenges:
* Supporting Values will be difficult and confusing. I have no good ideas for this yet.
* Likewise, I don't yet know how to search the incoming set.
* I'm concerned that it's slow. I think we'll be lucky to pump a few hundred atoms/second through it. But I  don't really know.
* I'm using IPNS for mutability, and IPNS has ... well-known issues.

But .. what works does work. So that's encouraging. I invite everyone to work on it.  I don't particularly want to be a long-term maintainers on this.

-- Linas

--
cassette tapes - analog TV - film cameras - you

Linas Vepstas

unread,
Oct 20, 2019, 12:35:06 AM10/20/19
to opencog, Jim Rutt

Roland Coeurjoly

unread,
Oct 21, 2019, 4:55:11 AM10/21/19
to opencog
I get this error:

AbortController is not defined

Linas Vepstas

unread,
Oct 21, 2019, 6:15:55 AM10/21/19
to opencog
On Mon, Oct 21, 2019 at 3:55 AM Roland Coeurjoly <rolandc...@gmail.com> wrote:
I get this error:

AbortController is not defined

From where? Its not an error message that my code generates.
--
You received this message because you are subscribed to the Google Groups "opencog" group.
To unsubscribe from this group and stop receiving emails from it, send an email to opencog+u...@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/opencog/159b1662-6f29-4583-be45-26e8b62dc0cd%40googlegroups.com.

Roland Coeurjoly

unread,
Oct 21, 2019, 6:46:02 AM10/21/19
to opencog
When I click in the link you posted: 


On another browser I don't get that error but it stays forever loading, without nothing displaying.
To unsubscribe from this group and stop receiving emails from it, send an email to ope...@googlegroups.com.

Ivan V.

unread,
Oct 21, 2019, 8:52:58 AM10/21/19
to opencog
I'm just trying to be useful: the link works fine on Ubuntu 18.04.3 LTS / Firefox and Ubuntu 18.04.3 LTS / Chrommium. It shows a hierarchical atom structure I can navigate through.

To unsubscribe from this group and stop receiving emails from it, send an email to opencog+u...@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/opencog/b5869166-3712-4568-bac1-a54841e91191%40googlegroups.com.

Linas Vepstas

unread,
Oct 21, 2019, 11:39:50 AM10/21/19
to opencog
On Mon, Oct 21, 2019 at 5:46 AM Roland Coeurjoly <rolandc...@gmail.com> wrote:
When I click in the link you posted: 


On another browser I don't get that error but it stays forever loading, without nothing displaying.

It won't be "forever", but it might be a long time. The speed at which IPFS distributes requests seems to be problematic.  I don't understand why. There is a DHT, and clearly, various peers have to talk to one-another to figure out where some particular entry is. From experience, this seems to take minutes.

That is -- that particular entry is on my server, and accessing it locally, its instant. But for explore.ipld.io -- it needs to query the DHT to find my server (or some other server that has a cached copy) and again, that slow, I don't know why.

-- Linas

Linas Vepstas

unread,
Oct 29, 2019, 2:41:27 PM10/29/19
to opencog, Jim Rutt
For your entertainment: the AtomSpace on top of IPFS is now "code complete"!

The code is here:


It works.  (Six of seven unit tests pass; the seventh unit test is a multi-user unit test and it fails because the current design requires coordination between users.)

It's slow. Approximately very slow, as compared to the SQL backend.  But it works and its feature complete.

There are design issues. They're described in the README file. I don't see any particular way of "fixing" them, without asking for and getting new features in IPFS.  So if you are bored of opencog, and want to hack on IPFS internals instead, come talk to me.
Reply all
Reply to author
Forward
0 new messages