Question: Support JSON data sources?

Aperta
#539 1 commento 0 reazioni 0 assegnatari Vedi su GitHub

Nessuno ha ancora preso questa issue.

Valutazione

Difficoltà
5/5
Tempo stimato
Più di una settimana
Idoneità per principianti
20/100
Tipo di issue
Funzionalità
Chiarezza
Da chiarire
Stato di attività
Ferma
Stack tecnologico
fsharp, json, sql
Ambito
databases

Direzione di ricerca

Inizia esaminando le interfacce pubbliche ISqlProvider proposte, la gestione degli schemi di FSharp.Data e JsonValue.Parse, quindi leggi la issue correlata sul JSON di Postgres, #523. Un risultato utile dovrebbe definire l'ambito del provider, un piano di integrazione con la sintassi delle query e i test, ma questa issue non specifica questi limiti di implementazione.

Scritto dal modello di indicizzazione a partire dal testo della issue.

Descrizione

enhancement

Should we made some of the internal classes/interfaces (like 'ISqlProvider') public so that there could be another project, to reference/combine both FSharp.Data and SQLProvider, to allow query { ... }-syntax to be used with queryable data-sources that return JSON. For example:

  • MongoDB
  • Elasticsearch
  • Redis
  • CosmosDB
  • Google Cloud Storage
  • Amazon RDS/Aurora

FSharp.Data can parse JSON sample data. So each provider could use SQLProvider structure and call FSharp.Data to get the schemas, users could then write strongly typed query { ... } and SQLProvider would translate the query to provider specific query-language (if plain SQL is not supported, which often is). The response is basically SqlEntity of column/s that is actually untyped JSON data. FSharp.Data is having JsonValue.Parse that could be used to parse the responses to some more usable format.

Currently these data-sources do have some specific apis/libraries for F#, but don't support the standard
query { ... }-syntax. On the other hand I don't know would we get enough users that it would be worth of work.

This is kind of related to Postgres JSON features, #523

Lingua principale
F#
Stelle
627
Fork
147
Merge medio
2h 2m
PR unite (30g)
1

Guida per i contributori

Nessuna guida per i contributori indicizzata per questo repository

Come iniziare

  1. Leggi tutta la issue e poi la guida ai contributi del progetto.
  2. Commenta sulla issue per dire che te ne occupi tu — evita che due persone facciano lo stesso lavoro.
  3. Fai un fork del repository e lavora su un branch.
  4. Apri una pull request che faccia riferimento al numero della issue.

Altre issue di fsprojects/SQLProvider

Tutte le issue di fsprojects/SQLProvider

Issue simili

Altre issue su Databases

Ricevi le nuove issue nella tua casella

Un breve riepilogo di issue GitHub adatte ai principianti.