Могу ли я использовать GraphQL для mongoDB или mySQL? - PullRequest
0 голосов
/ 29 января 2019

Я начал изучать GraphQL и обнаружил, что GraphQL - отличный язык запросов.Однако мне интересно, могу ли я использовать GraphQL для существующих баз данных, таких как mongoDB или mySQL.Также, пожалуйста, объясните о призме.Prisma - это облачная база данных или что-то в этом роде?

Ответы [ 2 ]

0 голосов
/ 26 февраля 2019

Как уже упоминалось в предыдущем посте - да, вы можете.

Например, если вы бэкэнд-приложение написали в стеке .NET - вы можете использовать, предположим, две основные библиотеки, которые действительно протестировали, и ребята используют их в реальных проектах (Google GraphQL.Net и вторая библиотека должны быть написаны почтито же самое)

Но обе эти библиотеки дают вам только обработку запросов GraphQL и описывают схемы («account {id name}» означает, что вы должны определить resolver, который возвращает данные из БД или другого источника данных)

Большинство парней используют EF (EntityFramework) в качестве адаптера данных между GraphQL и db.Но, с моей точки зрения, это бесполезно, особенно, если мы говорим о получении данных из БД, а это могут быть тысячи запросов.Мы внедрили компонент, основанный на облегченной библиотеке БД (почти для всех популярных БД, таких как MSSQL, Postgresql, MySQL или Elasticsearch), которые позволяют очень легко настраивать схему GraphQL и предоставляют основные функции, такие как сортировка, разбиение на страницы и сложный фильтр.

0 голосов
/ 29 января 2019

Да, вы можете использовать его с существующей БД.

Prisma - это сборка слоя ORM с использованием сервера GraphQL, она абстрагирует базу данных и позволяет вам взаимодействовать с базой данных с помощью запроса GraphQL.В настоящее время он поддерживает MySQL, MongoDB, AWS RDS и PostgreSQL.Это не база данных, но вы можете разместить ее в облаке.

Как правило, вам нужен другой сервер GraphQL, который внутри распознавателей будет вызывать сервер GraphQL от Prisma.Этот сервер GraphQL вызывается клиентом.

...