You are viewing a plain text version of this content. The canonical link for it is here.
Posted to notifications@libcloud.apache.org by "joseavegaa (via GitHub)" <gi...@apache.org> on 2023/02/28 02:00:54 UTC

[GitHub] [libcloud] joseavegaa opened a new issue, #1865: Support for Cloudflare's D1 and/or R2

joseavegaa opened a new issue, #1865:
URL: https://github.com/apache/libcloud/issues/1865

   ## Feature Description
   
   Cloudflare has been developing an alternative to traditional storage providers, with the benefit that it has no egress fees for the data. 
   
   - [**D1**](https://developers.cloudflare.com/d1) is a relational database build on SQLite, which currently is on Alpha. It can be access and manipulated through the online GUI on [Cloudflare's Dashboard](https://dash.cloudflare.com/) or through the CLI using a npm package called [wrangler](https://github.com/cloudflare/workers-sdk/tree/main/packages/wrangler).
   - [**R2**](https://developers.cloudflare.com/r2) is the Cloudflare's implementation of an object storage service. It can be used through the GUI on [Cloudflare's Dashboard](https://dash.cloudflare.com/), through the CLI with [wrangler](https://github.com/cloudflare/workers-sdk/tree/main/packages/wrangler), or using the [Amazon's S3 API](https://aws.amazon.com/s3/).
   <br>
   
   ## Proposal
   
   1. First the easiest, R2. To begin with, test if Apache Libcloud [`libcloud.storage.drivers.s3`](https://libcloud.readthedocs.io/en/stable/apidocs/libcloud.storage.drivers.html#module-libcloud.storage.drivers.s3) works correctly with an R2 bucket, and if so, update the documentation to reflect that said module can be used with R2. It would be a good idea to document what functions are NOT available, according to Cloudflare's R2 [documentation](https://developers.cloudflare.com/r2/data-access/s3-api/api/).
   2. If `libcloud.storage.drivers.s3` doesn't work with R2, another module can be created (`libcloud.storage.drivers.r2`, for example), which is based on the S3's module but with a few adjustments, and removing functions that are unavailable on R2. I do think this is a cleaner solution, to keep S3 separated from R2. 
   3. Finally, as Apache Libcloud does not (yet) manage Cloud Databases, a fine addition to the library would be to start a new module (maybe `libcloud.sql.drivers.NAME`?) and implement certain popular SQL Databases, such as [Amazon's RDS](https://aws.amazon.com/rds/), [Azure's SQL Database](https://azure.microsoft.com/en-us/products/azure-sql/database/), and of course Cloudflare's D1. 


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: notifications-unsubscribe@libcloud.apache.org.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org