• Share
  • Email
  • Embed
  • Like
  • Save
  • Private Content
FluidDB in a Nutshell
 

FluidDB in a Nutshell

on

  • 5,672 views

A short (revised) version of FluidDB in a Nutshell with some notes attached.

A short (revised) version of FluidDB in a Nutshell with some notes attached.

Statistics

Views

Total Views
5,672
Views on SlideShare
2,778
Embed Views
2,894

Actions

Likes
4
Downloads
24
Comments
0

15 Embeds 2,894

http://www.readwriteweb.com 1447
http://blogs.fluidinfo.com 1223
http://readwrite.com 91
http://www.askmaclean.com 62
http://www.oracledatabase12g.com 44
https://www.readwriteweb.com 13
http://www.seofacts.biz 3
http://coderwall.com 2
http://www.netvibes.com 2
http://abjaleelkk.posterous.com 2
http://www.hanrss.com 1
http://feeds.feedburner.com 1
http://static.slidesharecdn.com 1
http://readwriteweb.com 1
http://www.linkedin.com 1
More...

Accessibility

Categories

Upload Details

Uploaded via as Adobe PDF

Usage Rights

© All Rights Reserved

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Processing…
Post Comment
Edit your comment

    FluidDB in a Nutshell FluidDB in a Nutshell Presentation Transcript

    • FluidDB in a Nutshellhttp://www.flickr.com/photos/max78/104677840/
    • FluidDB is an openly writable hosted service for storing, sharing, searching and annotating data.While this is accurate, it’s not the whole story...
    • Key Concepts• Objects - represent things*• Tags - define objects’ attributes• Namespaces - organise tags• Permissions - control access * Not in the object oriented sense of “object”.
    • http://ntoll.org/images/93.jpgObjects are simply tagged with information
    • Namespaces/tags ntoll/rating terrycojones/books/review amazon.com/book/title amazon.com/book/author amazon.com/book/isbn esteve/books/cover timoreilly/has_readTags must be defined before being attached to objects. Every user, application or client startswith a namespace named after their username. Users whose username is a domain namemust own the domain in question (so only Amazon could use the namespace amazon.com).Every namespace and tag is itself represented by an object (facilitating meta-tagging).
    • Objects (in FluidDB) represent things Every object has a unique ID about = An id = “book: Dune” object “e127475b-eb93-48e1-a24f-dde6825b9ed8” The unique “about” tag is optional and used to identify what the object representsA conceptual view of an object. Remember the “about” tag is special, optional and unique.
    • r= ove /c ks oo ntoll/ b ve/ te es rating am azo n.c “87 om/b - 41 o = 8-7 oks/i 517 sbn 5 - 6” = about = An id = “book:Dune” object “e127475b-eb93-48e1-a24f- = am az v iew on /re s” r= timoreill s .c om ok rm er tho /bo wo “D /bo nes and un ok 1973/08 erb s/au ojo ve s e” s/t t” it ryc I lo y/has_re k H ok le ter “ = ran /bo /19 “F om n.c ad = azo amDifferent users tag data to the object. Their data is given a context by being attached to thesame object.
    • r= ove /c ks oo ntoll/ Numbers ve/ b te es rating am azo n.c om 874 /bo = 187 oks 517 /isbn 5 6 = Images about = An id = “book:Dune” object “e127475b-eb93-48e1-a24f- = am az v iew on /re s” r= timoreill s .c om ok rm er tho /bo wo “D /bo nes and un ok 1973/08 erb s/au ojo ve s e” s/t t” it ryc I lo y/has_re k H ok le ter “ = ran /bo /19 “F om n.c ad = azo Text Date/Time amThe values can be of a primitive (searchable) type: numbers, text, booleans etc... OR anopaque type: images, audio, video or any other sort of data.
    • r= ove /c ks oo ntoll/ b ve/ te es rating am azo n.c “87 om/b - 41 o = 8-7 oks/i 517 sbn 5 - 6” = about = An id = “book:Dune” object “e127475b-eb93-48e1-a24f- = am az v iew on /re s” r= timoreill s .c om ok rm er tho /bo wo “D /bo nes and un ok 1973/08 erb s/au ojo ve s e” s/t t” it ryc I lo y/has_re k H ok le ter “ = ran /bo /19 “F om n.c ad = azo amWhat about data control/privacy..? Permissions are usually applied to the “thing” of interest.But Fluidinfo wants to make FluidDB openly writeable. So we do something different...
    • r= ove /c ks oo ntoll/ b ve/ te es rating am azo n.c “87 om/b - 41 o = 8-7 oks/i 517 sbn 5 - 6” = about = An id = “book:Dune” object “e127475b-eb93-48e1-a24f- = am az v iew on /re s” r= timoreill s .c om ok rm er tho /bo wo “D /bo nes and un ok 1973/08 erb s/au ojo ve s e” s/t t” it ryc I lo y/has_re k H ok le ter “ = ran /bo /19 “F om n.c ad = azo am...we move the location of the permissions...
    • Permissions apply to namespaces, tags and values. Users retain control of their data. FluidDB stays writable.Anyone can tag any sort of data to any object. However, users define who can read, createand change their namespaces, tags and data.
    • FluidDB is the database with the heart of a wiki Nivi http://venturehacks.com/Sort of... :-) A wiki is openly writable just like FluidDB. But a wiki doesn’t have permissions tofacilitate privacy and ownership, a query language like a database, nor does it have a simpleAPI for application developers.
    • SELECT self-catering-cottage FROM WHERE location NEAR pubs SERVING AND pub HAS rating > 7 INIt’s currently NOT possible to create queries like this on the web. Data is stored in walledgardens behind websites. FluidDB is different because data is stored in context (i.e. it’stagged to a shared object).
    • FluidDB’s Query Language • Equality & Inequality: To find objects based on the numeric values or exact textual values, e.g., tim/rating > 5, or geo/name = "Llandefalle". • Textual: To find objects based on text matching their tag values, for example, sally/opinion matches “fantastic”. • Presence: Use has to request objects that have a given tag. For example, has sally/opinion. • Set contents: The contains operator can be used to select objects with a matching value in a set of strings. The query mary/product-reviews/keywords contains "kids" would match the object with a tag called /mary/product- reviews/keywords and value ["cool", "kids", "adventure" ]. • Exclusion: Exclude objects with the except keyword. For example has nytimes.com/appeared except has james/seen. The except operator performs a set difference. • Logic: Query components can be combined with and and or. For example, has sara/rating and tim/rating > 5. • Grouping: Parentheses can be used to group query components. For example, has sara/rating and (tim/rating > 5 or mike/rating > 7).FluidDB has a simple yet powerful query language (so simple, it fits on this slide). Becauseeveryone’s data is stored in the context of shared objects it means it’s possible to createinteresting queries using data (for which you have permission to read) from lots of differentsources.
    • Tags attached to the “about:esteve” object. {“tagPaths”: [ " “twitter.com/username”, " “twitter.com/fullname”, " “tunkrank.com/score”, " “ntoll/met”, " “terrycojones/met”, " “python.org/member”, " “ub.edu/alumni”, " “ub.edu/bsc”, " “uoc.edu/msc”, " ... etc ... ]}It’s also possible to find information by interrogating an interesting object for all the tagsthat are attached to it (that you are allowed to read).
    • A RESTful API https://fluiddb.fluidinfo.com/objects/OBJECT_ID/NAMESPACE(s)/TAG HTTP ‘GET’ returns the value, HTTP ‘PUT’ adds/updates it etc... Full API: http://api.fluidinfo.com/FluidDB has an elegant and flexible API for application developers. End users create anaccount on FluidDB but use applications to access, update, search and annotate FluidDB.
    • Lots of FOSS client libraries: http://fluidinfo.com/developers/libs
    • Data becomes social!Openly writable objects are tagged with data from lots of different sources.
    • northac kton/m ember terryco jones/m nto et ll/m et ff ntoll northackton per /sta nfo scoble lo i uid eve fl d ntoll/met fom/ fom/ d user taf f esteve gge s widget fo/ blo in l e/ fluid co b er s b em flui ceronman din n/m fo/s taff kto nt widget/owns oll fluid c /m tha terr et info/stnor peacelily fluidinfo fom yco fom /de velo aff FOM jon /us per e r es/m te rr et y co FOM jon ff nfo/sta fluidi es aliafshar /m e /me t t ntoll terrycojones r terrycojones/met ve sto timoreilly estor fo/in fluidi nfo/inv idin flu gfcampbell edyson Some user objects...
    • i flu sc o flui ceronman din Where Google explores the fo/s taff nt digital world as it is, Fluidinfo is oll flu /m idinfo/ more of a distributed intellectual terr et peacelily fluidinfo fom construction tool. Basically, its a new yco /de staffm/ velo jon use per kind of database for open, typed data r es/m without the overhead of the "ontology" et te rr companies, along with a new kind of ff y o/sta co jon es fluidi nf search engine. Its along the lines of aliafsharmet Metaweb but more flexible, with a very /m et terrycojones different model of data ownership, and with more focus on regular rojones/met iso timoreilly v people as end users. estor /ad nfo/inv nfo di fluidi flui edyson terry cojon es/m et edyson Esther Dyson nivi http://edventure.com/ http://www.flickr.com/photos/stewtopia/1413191259/ A really good summary.
    • http://fluidinfo.com/