MongoDB PHP Query Builder UI? - PullRequest
       2

MongoDB PHP Query Builder UI?

2 голосов
/ 27 декабря 2011

Я смотрю, есть ли у кого-нибудь информация о существующем коде / ссылках для пользовательского интерфейса MongoDB Query Builder.

Я безуспешно гуглил, нашел несколько разных примеров с MySQL, но MongoDBкажется немного более неуловимым.

Есть идеи?

1 Ответ

3 голосов
/ 28 декабря 2011

MongoDB все еще находится на ранней стадии разработки инструментов пользовательского интерфейса. На веб-сайте MongoDB перечислено несколько инструментов интерфейса администратора . В список включены phpMoAdmin и RockMongo , которые написаны на PHP. JMongoBrowser написан одним из сопровождающих java-драйверов 10gen, а также имеет несколько основных функций просмотра / администрирования.

Однако ни один из них на самом деле не имеет «Query Builder» UI. Вы должны знать, какие поля находятся в БД, и в основном вводить запросы, используя синтаксис javascript.

Это все еще большая дыра в мире MongoDB, однако она также отличается от существующего "Query Builders" . Если вы посмотрите на язык запросов MongoDB, вы быстро увидите несколько основных проблем:

  • MongoDB не имеет «фиксированных столбцов».
  • MongoDB не имеет синтаксиса соединения.
  • Структура документов MongoDB может варьироваться в пределах коллекции.

Итак, у вас много проблем:

  • Как узнать, какие поля могут быть запрошены? Я действительно собираюсь зациклить более 5 миллиардов документов, чтобы найти доступные поля?
  • Как мне запрашивать динамически именованные подобъекты? Вложенные подобъекты?
  • Как запросить массивы объектов?
  • А как насчет массивов объектов, которые содержат больше массивов объектов? ( обратите внимание, что MongoDB плох для этого, независимо от инструментов )
  • Как мне даже назвать все эти подполя?
  • Как отобразить эти данные? В настоящее время большинство инструментов предлагают как представление в виде столбца, так и представление в формате JSON, но здесь явно больше возможностей.

В конце концов, любой разумный «построитель запросов» должен знать что-то о вашей схеме заранее, что определенно вызывает много проблем. Если вы найдете что-то, что справится с этим, пожалуйста, дайте мне знать, хотелось бы увидеть такой инструмент.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...