Какой ist УСПОКОИТЕЛЬНЫЙ ресурс в контексте больших наборов данных, т.е. данные о погоде?

Можно использовать ИЗБРАННОЕ присвоение для присвоения нескольких переменных. Этот код генерирует единственную строку констант и присваивает каждого переменной.

SELECT
  @var1 = 1,
  @var2 = 'Zeus'

Вы можете даже таблицы запроса и делать присвоение тот путь:

SELECT
  @var1 = c.Column1,
  @var2 = c.Column2,
FROM
  Customers c
WHERE c.CustomerID = @CustomerID

Остерегайтесь: Этот код работает как некоторое время цикл.

  • , Если существует несколько строк, каждая строка будет присвоена переменным, и последняя строка будет той, оставленной там. Если Вы не определили упорядочивание, Вы бросили управление, по которому строка будет последней строкой.
  • , Если нет никаких строк, переменным не присвоят вообще. Переменные не будут установлены в NULL - они останутся неизменными. Это - ключевая проблема, если присвоение сделано в цикле (обычно получающийся в бесконечном цикле, поскольку переменные никогда не изменяются).

Предпочитают использовать присвоение НАБОРА по ИЗБРАННОМУ присвоению. Только используйте ИЗБРАННОЕ присвоение при рассмотрении обоих сценариев выше.

5
задан pnuts 17 November 2015 в 18:12
поделиться

5 ответов

Итак, я работаю над веб-сервисом для доступа к нашим данным прогноза погоды (10000 местоположений, 40 параметров каждое, почасовые значения на следующие 14 дней = около 130 миллионов значений). ... Но что такое ресурс в моем случае?

Это зависит от деталей вашей проблемной области. Просто наличие большого количества данных - не повод избегать REST. Есть умные и глупые способы моделирования и раскрытия этих данных.

Как вы правильно видите, вашей главной целью на данном этапе должно быть понимание того, что именно представляет собой ресурс. Зная только о прогнозах погоды, чтобы следить за Weather Channel, я здесь особо не помогу. Этот звонок должны делать такие эксперты в предметной области, как вы.

Если бы вы объяснили более подробно основные концепции предметной области, с которыми вы работаете, это может упростить предоставление конкретных советов.

Например, одним ресурсом может быть прогноз. Когда метеорологи говорят о прогнозах, какие слова встречаются постоянно? Когда вы думаете о разбиении прогноза на более мелкие элементы, какие слова вы используете для их описания?

Проделайте этот процесс рекурсивно, и вы, вероятно, сможете составить список важных терминов. Не забывайте, что эти термины могут описывать вещи или действия. Подумайте, что на самом деле означают эти термины, какие данные вы можете использовать для их моделирования, как их можно агрегировать.

На этом этапе у вас будет что-то, вокруг чего вы можете начать строить систему RESTful, но не раньше.

Не забывайте, что система RESTful - это не дамп данных, обернутый в HTTP, это система, управляемая гипертекстом .

Также не надо ' Не забывайте, что медиа-типы являются точкой контакта между вашим сервером и его клиентами. Тип носителя ограничен только вашим воображением и может моделировать наборы данных любого размера, если вы в этом разбираетесь. Он может содержать XML, JSON, YAML, двоичные элементы, такие как фильтр Блума, или все, что подходит для данной проблемы.

3
ответ дан 15 December 2019 в 01:06
поделиться

Maybe you can use forecast as the ressource and go deeper to fine grained services with xlink.

0
ответ дан 15 December 2019 в 01:06
поделиться

Во-первых, не существует однозначного правильный ответ .

Каждый действительный URL-адрес - это то, что имеет смысл запрашивать, думайте о них как об эквиваленте предоставления форм запроса людям, ищущим ваши данные - это может помочь вам сузить сценарии.

Это вопрос личного вкуса и, возможно, набора инструментов, который вы используете, относительно того, что входит в базовый путь URL и какие параметры кодируются. Эта дискуссия немного похожа на дискуссию об XML по поводу помещения значений в элементы и атрибуты. Это не всегда рациональный или логически решаемый вопрос, и все не будут любезны в своих комментариях по поводу ваших решений.

Если вы используете бэкэнд, такой как Rails, это подразумевает определенные соглашения . Даже если вы не используете Rails, имеет смысл работать таким же образом, если у вас нет веских причин для изменений. Таким образом, люди, пишущие клиентов для общения со службами на основе Rails, найдут ваши более понятными и сэкономят ваше время на документацию; -)

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

Если вы используете бэкэнд, такой как Rails, это подразумевает определенные соглашения . Даже если вы не используете Rails, имеет смысл работать таким же образом, если у вас нет веских причин для изменений. Таким образом, люди, пишущие клиентов для общения со службами на основе Rails, найдут ваши более понятными и сэкономят ваше время на документацию; -)

относительно того, что входит в основной путь URL-адреса и какие параметры кодируются. Дебаты немного похожи на дебаты о XML по поводу помещения значений в элементы и атрибуты. Это не всегда рациональный или логически решаемый вопрос, и все не будут любезны в своих комментариях по поводу ваших решений.

Если вы используете бэкэнд, такой как Rails, это подразумевает определенные соглашения . Даже если вы не используете Rails, имеет смысл работать таким же образом, если у вас нет веских причин для изменений. Таким образом, люди, пишущие клиентов для общения со службами на основе Rails, найдут ваши более понятными и сэкономят ваше время на документацию; -)

Если вы используете такой сервер, как Rails, это подразумевает определенные соглашения . Даже если вы не используете Rails, имеет смысл работать таким же образом, если у вас нет веских причин для изменений. Таким образом, люди, пишущие клиентов для общения со службами на основе Rails, найдут ваши более понятными и сэкономят ваше время на документацию; -)

Если вы используете такой сервер, как Rails, это подразумевает определенные соглашения . Даже если вы не используете Rails, имеет смысл работать таким же образом, если у вас нет веских причин для изменений. Таким образом, люди, пишущие клиентов для общения со службами на основе Rails, найдут ваши более понятными и сэкономят ваше время на документацию; -)

1
ответ дан 15 December 2019 в 01:06
поделиться

Можно ли сделать что-то подобное? Поскольку у вас так много параметров, я подумал, можете ли вы каким-то образом связать это сочетание идентификатора и параметра, чтобы уменьшить размер URL

/ WeatherForeCastService // день / час

0
ответ дан 15 December 2019 в 01:06
поделиться
www.weatherornot.com/today/days/x       // (where x is number of days)
www.weatherornot.com/today/9am/hours/h  // (where h is number of hours)
0
ответ дан 15 December 2019 в 01:06
поделиться
Другие вопросы по тегам:

Похожие вопросы: