1
0
mirror of https://github.com/oceanprotocol/docs.git synced 2024-11-02 08:20:22 +01:00
docs/content/concepts/components.md
2020-10-16 12:56:27 +02:00

2.4 KiB

title description
Software Components Components, from top-level (GUI) downwards

Ocean Market

A live community-oriented data marketplace. Here's a blog post with more information.

It uses React Hooks, which in turn uses the JavaScript driver.

React Hooks

Building blocks to help building GUI-based frontends.

JavaScript & Python Drivers

Client libraries used by applications (such as Pleuston or Jupyter notebooks) to interact with Ocean components, including Keepers, Aquarius nodes, Brizo nodes, etc.

How Squid is Used

Metadata Cache - Aquarius

Ocean stores metadata of data assets on-chain.

To improve GUI responsiveness, Ocean Market runs Aquarius to retrieve the metadata from the chain and cache it locally (using MongoDB).

Provider

Publishers run Provider to serve up a data asset when requested. Provider interacts with the publisher's cloud and/or on-premise infrastructure.

Events Handler

Brizo communicates with the Events Handler to deal with Keeper Contracts events.

The Events Handler monitors Service Execution Agreement (SEA) events and acts as a provider agent to grant access and release rewards for the publisher/provider. This is a critical part in the process of consuming data sets in the Ocean Protocol network.

Every provider in the network must run some sort of an events handler to be able to fulfill the access condition of an Access service in a Service Execution Agreement.

Osmosis Drivers

Brizo supports several options for file storage, including Azure Storage, Amazon S3 and on-premise storage. One can add support for another file storage option by creating a new driver similar to one of the existing Osmosis drivers.

You can create your own Osmosis drivers by extending on the osmosis-driver-interface.