From 094566966ca2ef6bf4e8b42c4770120e766166b8 Mon Sep 17 00:00:00 2001 From: Brad Fitzpatrick Date: Fri, 6 May 2011 19:18:53 -0700 Subject: [PATCH] more slides --- .../index.html | 138 ++++++++++++------ 1 file changed, 96 insertions(+), 42 deletions(-) diff --git a/talks/2011-05-07-Camlistore-Sao-Paolo/index.html b/talks/2011-05-07-Camlistore-Sao-Paolo/index.html index 56f464fb2..e53c907e2 100755 --- a/talks/2011-05-07-Camlistore-Sao-Paolo/index.html +++ b/talks/2011-05-07-Camlistore-Sao-Paolo/index.html @@ -1,17 +1,6 @@ @@ -540,6 +529,16 @@ sha1-ea799271abfbf85d8e22e4577f15f704c8349026

+
+

Aside: Garbage Collection

+ +
+

Modeling non-filesystem objects @@ -598,11 +597,24 @@ sha1-ea799271abfbf85d8e22e4577f15f704c8349026
  • indexing is real-time, no polling
  • MySQL index speaks the blob server protocol
  • -
  • just replicated to MySQL (etc) just like Amazon S3 (etc)
  • +
  • just replicate to the index (MySQL, etc) just like other blob servers (Amazon S3, etc)

+
+

+ Replication Implementation +

+ +
+

Search @@ -636,53 +648,95 @@ sha1-ea799271abfbf85d8e22e4577f15f704c8349026

Sharing & Share Blobs

+

the act of sharing involves creating a new share claim, just another blob, signed.

+

here is: sha1-071fda36c1bd9e4595ed16ab5e2a46d44491f708:

+
{"camliVersion": 1,
+  "authType": "haveref",
+  "camliSigner": "sha1-f019d17dd308eebbd49fd94536eb67214c2f0587",
+  "camliType": "share",
+  "target": "sha1-0e5e60f367cc8156ae48198c496b2b2ebdf5313d",
+  "transitive": true
+,"camliSig":"iQEcBAABAgAGBQJNQJGuAAoJEIUeCLJL7Fq1EuAIAL/nGoX8caGaANnam0bcIQT7C61wXMRW4qCCaFW+w67ys5z4ztfnTPKwL9ErzMF8Hd32Xe/bVcF6ZL38x/axqI7ehxN8lneKGQNoEdZDA9i752aAr0fkAba6eDehoOj9F4XxOzk3iVrq445jEXtu/+twamHV3UfRozWK1ZQb57dM+cRff47M/Y6VIBRSgW2BrABjuBs8G6PiKxycgh1mb+RL8f9KG+HB/yFuK37YJqZ0zU2OTRp6ELiOgTxbeg99koV9Duy4f4mQgxQgli46077Sv/ujzIeVbmdFL3OenGEzQnyKG0fhf8fa5WkED0XfH7zibAHLiSq3O7x11Q0406U==ANug"}
+ Target w/ ?via= parameter: sha1-0e5e60f?via=sha1-071fda & next hop +
+ +
+

+ Sharing Details & Implementation +

-
+ - -
+

- Image filling the slide (with optional header) + What can be shared

-

- -

-
- Cat -
+
    +
  • Share a single blob, +
  • Share a subtree, +
  • Share a search query and its results' reachable blobs
  • +
  • ... give out [world, girlfriend] access to all pictures you take on your phone, in real-time
  • +
+
+ +
+

+ Project Status +

- -
+

- A slide with an embed + title + Project Status

- - -
+
    +
  • Blobstore, Go (any OS), can store on disk, s3, mysqlindex +
  • Blobstore, Python (App Engine only) can store on Google +
  • Perl tests for two blob stores +
  • Android uploader (Java) +
  • Bunch of Go libraries / command-line tools: sync, put, get +
  • FUSE filesystem (read-only, currently) +
  • Search: basics working. more queries looks easy now. +
  • Simple, self-contained everything binary (blob storage, sharing, search, index, frontend) for early adopters: ~95% +
  • Web UI / JavaScript APIs: in progress +
+
-
- -
- -
+

- Full-slide embed with (optional) slide title on top + In Review

- -
- +
    +
  • You own all your blobs; everything is private by default.
  • +
  • Mutable objects are made of mutation claim blobs.
  • +
  • Sync is trivial: either you have it or you don't
  • +
  • Some blobs are signed
  • +
  • Indexing & search to find your blobs / roots
  • +
  • To share you must create a declaration of sharing ...
  • +
  • ... and the system will only allow access if such claims exist.
  • +
  • Decentralized, but hostable. You can run your own server (with no central + company or point of control), but you can also let somebody else do it for + you, like email.
  • +
+
+

Thank you!

-
    -
  • Brad Fitzpatrick, brad@danga.com
  • -
  • camlistore.org
  • -
+

Brad Fitzpatrick, brad@danga.com; Want to help? More info: camlistore.org

+