Streaming Data Asset in Ocean Marketplace | Streaming Data Pricing | Round 20

Project Name

Streaming Data Asset in Ocean Marketplace


Project Category

Build & Integrate


Proposal Earmark

2nd/3rd Grant


Proposal Description

Extend the StreamingDataAsset so it handles time-based subscriptions.


Grant Deliverables

1.An extension of Ocean Marketplace that supports a streaming data asset type with time-based subscription options. This entails adding functionality for multiple prices keyed to time lengths:

  • The asset publishing form will get a third tab in the pricing subform with a UI for the publisher to customize time lengths and prices.
  • In the backend the JSON storage of the Collected Form Values will be extended to store time/price values (it won’t change the DDO).
  • The UI of the public catalog pages will be modified so the payment panel offers time-based options from which a consumer can choose.

2.Tables will be constructed (in Tableland) for analytics and be updated as we discover more details.

3.Technical Documentation

4,User Guide

Round 19 Grant Deliverables so far


Project Description

This project will enhance the functionality and usage of the Marketplace so that it handles streaming data assets and ultimately (in a future iteration) streaming payments.

Grant Scope

Once we have basic procurement working, we intend to enhance the pricing options on the Marketplace. Subscriptions are usually offered with time-based pricing schemes. This will be configurable by the data provider when publishing a StreamingDataAsset.

The publisher will key the price to time limits. The limit selection will be defined as options, e.g. 1h, 4h, 8h, 1D, 1W, 1M, or Forever. The options and corresponding prices will need to be stored in the metadata of the product. This will require modification of the UI in the third subform of the asset publishing form as well as in the public procurement UI. The catalog must render the time limit options so a consumer can choose before proceeding to payment.

This approach makes the assumption that when a time limit is reached, the provider will stop the stream and the user may purchase a new subscription.

The pricing in the initial implementation will be a one-time payment, the same as the Marketplace supports now. In a future iteration we’d like to implement streaming payments, using Superfluid or LlamaPay, which will run continuously, in the background.

Project Scope

As live data from IoT and sensor sources becomes more common, we’d like to see the Ocean Marketplace support streaming data and payments. This will require a different product type, in addition to static assets with datasets/files and algorithms. Some examples of data streams include the public transport and weather data being provisioned by cities like Helsinki: https://www.hsl.fi/en/hsl/open-data

The below Process Flow Diagram shows how the Ocean Marketplace, which acts as the proxy-host between the source/provider and the consumer for static data, morphs into a facilitator between the two parties when it comes to streaming data. The market enables the dealmaking and channeling of the payment, while the fulfillment happens in a peer-to-peer fashion, between the data stream provider and the consumer.

This is similar to ecommerce sites which include streaming products in their catalog. For example, a customer finds a streaming product, such as an audio book or podcast, and pays for it. Instead of downloading a file from the ecommerce site, the customer directly connects to a stream provided by the publisher.

As shown in the below example, the podcast provider (the data source in our case) deals with the consumer directly for delivery/fulfillment.

In the center is the Ocean Marketplace App with two extensions extending to the right. The upper one, Streaming Data Extension, is the subject of this grant, specifically the subscription payment options. In a future iteration we would like to implement the Streaming Payment Extension.

As an additional benefit, we’re also enabling an integration with Tableland (a web3-SQL app), thereby SQL-izing the DDO and metadata. The idea is to let Marketplace users access the Tableland instance in order to perform analytics on dataset-level metadata and metrics such as prices.


Final Product

A Data Market that supports multiple types of data and payments. Static datasets, algorithms, and dynamically generated analytic data will be procured with a single transaction, while streaming data will be provisioned as a streaming transaction.


Value Add Criteria

1. This project will expand the functionality and product offering of the Marketplace so that it handles streaming data assets, time-based subscriptions, and (in a future iteration) streaming payments. 

2. Users will be able to work with live data from IoT and sensor sources. 

3. Users can also take advantage of the integration with Tableland (a web3-SQL app) that will enhance their analytics capabilities.


Core Team

Name: Kit Blake

Role: Product Manager

Credentials

+ Entrepreneur, cofounder of Infrae bv (content management), Gauss App (social local mobile), and ChaĂŽne Research (non-profit climate data initiative)

+ Active in various blockchain communities such as RChain, Superfluid, and PieDAO

+ Public speaker and blogger

+ Recently completed the Ocean 101 Ambassador course

GitHub: kitblake ¡ GitHub

LinkedIn: https://linkedin.com/in/kitblake

Background/Experience: Product development, project management, team formation, marketing, communications, finance, HTML/CSS, writing.

–

Name: Abhi

Role: Data Engineer

Credentials

+ Intelligent Systems Grad

+ Co-founded a Climate Action Data Shop - https://chaineresearch.org

+ Ocean Ambassador

GitHub: sarvagyaa (Abhi Sarvagyam) ¡ GitHub

LinkedIn: https://linkedin.com/in/abhi-sarvagyam/

Background/Experience: Data Architecture & Engineering, Product Management, Business Analysis, and Writing, mainly in Finance and Customer Engagement.

–

Name: Ekpenyong Okpo

Role: Blockchain Engineer

Credentials

+ Sofware Engineer/Reservoir Engineer, Laser Engineering (2014 -2020)

+ Cofounder, Exzing Technologies (https://www.exzing.com)

+ Mobile Engineer, DataUnion.app (2020 - 2022)

+ Ocean Ambassador

GitHub: okpoEkpenyong (Ekpenyong) ¡ GitHub

LinkedIn: https://linkedin.com/in/okpo-ekpenyong

Background/Experience: Software Engineering, Petroleum Engineering, Research Publication, Web3 Product Development, Ocean Protocol, Smart Contracts.

Ocean Community Engagement

Our three team members have assorted interaction with the community. Abhi (@databeetle on Discord) and Okpo (@okpo.e) are both Ocean Ambassadors. Okpo is known within the community for his work with DataUnion.app. @kitblake has completed the Ambassador course and has been following the Ocean project since inception, was an investor in the ICO in March 2019, and is an Ocean liquidity provider on Uniswap.


Funding Requested
7500


Minimum Funding Requested
7500


Wallet Address
0x47ac438004D39518792eb96F743A4b952e8462Fe


2 Likes

Hi,

Thank you for your submission to R20!

Can you provide some more detail around how your deliverables this round differ from your previous proposal’s deliverables?

Best,
Christian

1 Like

Hi! In retrospect it does sound rather vague. Here is more detail:

In this iteration we’re building out the MVP implementation of the first round. In Round 19 we’ve created a new asset type for streaming data but it’s KISS: a consumer can procure a StreamingDataAsset and receive the URL of the datastream. Plus technical docs describing what we’ve built and a guide for the public UI.

As subscriptions are typically time-based we plan to add functionality for multiple prices keyed to time lengths. A publisher will be able define the pricing options and a consumer will be able to choose from the options.

The frontend of the publishing form will require a third pricing tab in the ‘Pricing’ subform. Currently a publisher chooses between Fixed or Free. We will add Time-based and build the User Interface to customize time lengths and prices.

On a technical level this will require extending the JSON storage of the Collected Form Values to store time/price values (but not the DDO).

For the catalog pages we’ll modify the UI of the payment panel so a consumer can select from the time-based options.

2 Likes

Project submitted deliverables:

Dear OceanDAO members, our team is pleased to present our submission for the “Streaming Data Asset” project of Grant Round #20. Brought to you by @okpo, @databeetle, and @kitblake

We’ve created a fork of the Ocean Marketplace that has a Streaming Data Asset type. It handles live data sources and provides time-based subscriptions with pricing options.

• Demo site: https://oceanmarket-datastreams.netlify.app/

• Code repo: GitHub - chaineresearch/datastreams at v0.2

• User Story: Data Streams Like Rain - by Kit Blake - kitblake

• User Guide: UserGuide · chaineresearch/datastreams Wiki · GitHub

• Technical Notes: TechnicalNotes · chaineresearch/datastreams Wiki · GitHub

• Design mockups of changes in the Marketplace:

• Round 20 UI Mockup Notes: https://www.notion.so/streamingdataasset/Round-20-UI-Mockup-Notes-e24c131f49e14dd9ac4943355ad78925

• This is an example datastream that’s already published on the Polygon Mumbai testnet:

https://oceanmarket-datastreams.netlify.app/asset/did:op:cc07ca7990f8dcac0757f544779a2c442c69c15785557be87efa3d3f452f269b

[This may display as Not Found if your network settings are different. If so, make sure the Mumbai testnet is active, go to the top right of the page, and search for the “Streaming Data Asset demo” datastream.]

Known issues are in the Github Issue Tracker. You’re welcome to open an issue.

If you have questions or feedback feel free to DM anyone on the team!

2 Likes