Списки SharePoint против производительности таблиц базы данных

  1. Мы хотим хранить данные о транзакциях в списках SharePoint. Списки легко вырастут до 100 000+ пунктов.
  2. Как можно сравнить производительность запросов с запросами в таблице базы данных с этими столбцами?

Запросы: Выбрать по идентификатору Выберите, где ColumnValue = X Группировать по OrderId Группировать по дате

Список SP будет состоять из 6 столбцов: Id, Date, OrderId (Lookup), Quanity, ItemName, Title.

Стоит ли изучать PHP в 2026-2027 годах?
Стоит ли изучать PHP в 2026-2027 годах?
Привет всем, сегодня я хочу высказать свои соображения по поводу вопроса, который я уже много раз получал в своем сообществе: "Стоит ли изучать PHP в...
Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
В JavaScript одним из самых запутанных понятий является поведение ключевого слова "this" в стрелочной и обычной функциях.
Приемы CSS-макетирования - floats и Flexbox
Приемы CSS-макетирования - floats и Flexbox
Здравствуйте, друзья-студенты! Готовы совершенствовать свои навыки веб-дизайна? Сегодня в нашем путешествии мы рассмотрим приемы CSS-верстки - в...
Тестирование функциональных ngrx-эффектов в Angular 16 с помощью Jest
В системе управления состояниями ngrx, совместимой с Angular 16, появились функциональные эффекты. Это здорово и делает код определенно легче для...
Концепция локализации и ее применение в приложениях React ⚡️
Концепция локализации и ее применение в приложениях React ⚡️
Локализация - это процесс адаптации приложения к различным языкам и культурным требованиям. Это позволяет пользователям получить опыт, соответствующий...
Пользовательский скаляр GraphQL
Пользовательский скаляр GraphQL
Листовые узлы системы типов GraphQL называются скалярами. Достигнув скалярного типа, невозможно спуститься дальше по иерархии типов. Скалярный тип...
6
0
13 087
8
Перейти к ответу Данный вопрос помечен как решенный

Ответы 8

Списки SharePoint будут медленнее.

Больше накладных расходов = худшая производительность.

Ответ принят как подходящий

Не делай этого. SharePoint плохо справляется с обработкой транзакционных данных и будет плохо работать.

Любые возможности, которые могут вам понадобиться для повышения производительности на уровне базы данных (например, добавление индексов), могут отрицательно повлиять на установку SharePoint (хотя столбцы в списках можно «проиндексировать» через SharePoint.

По сути, SharePoint разработан для определенной цели (контент / документы), и попытки заставить его делать что-то необычное означает, что вам придется бороться с приложением зубами и ногтями.

К счастью, в SharePoint есть несколько способов интеграции в него транзакционных данных.

Во-первых (если у вас более дорогая корпоративная лицензия) у вас есть каталог бизнес-данных, который позволяет вам импортировать значения базы данных, которые будут выглядеть аналогично элементам списка.

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

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

+1 Нет

Основная функция SharePoint - совместная работа. В вашем случае вы просто укажете данные как доступные только для чтения. В вашей ситуации я бы рекомендовал хранить данные в базе данных SQL, если вам нужно отобразить их на портале SharePoint, вы можете использовать BDC или что-то вроде веб-части Bamboo Data View. http://store.bamboosolutions.com/p-71-data-viewer-web-part.aspx

Я согласен со всеми приведенными выше комментариями. У меня был большой опыт работы с клиентами, которые хотели использовать списки SharePoint там, где они не подходили. Если вас вообще беспокоит производительность, списки SharePoint вам не подходят. Если это просто для архивных целей, и вы выполняете нечастый поиск по данным и вам достаточно функций поиска SharePoint, я мог бы рассмотреть это и не отказываться от этого сразу (если вы используете MOSS).

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

И снова, если производительность вообще является требованием, не делайте этого.

Дополнительные сведения о передовых методах масштабирования и производительности SharePoint см. В следующих разделах: http://technet.microsoft.com/en-us/library/cc287790.aspx

Практическое правило - ограничить списки SharePoint до 2000 элементов из соображений производительности.

На 100k производительность будет идти «от отстойника до упора».

Единственный способ, которым это могло бы сработать, - это если бы вы могли сегментировать набор данных на несколько списков с менее чем 2000 в каждом.

Это практическое правило относится к спискам с файлами (библиотеки документов и страниц).

Nat 24.10.2008 00:54

Предел 2K относится к отображению списка. Это не применяется, например, когда вы выполняете SPQuery в этом списке. Что касается данных по сегментам, то это тоже неверно. В конце концов, все элементы списка в базе данных контента хранятся в SQL в таблице AllUserData, поэтому такая сегментация не помогает. Единственный случай, когда это может помочь, хотя я не видел доказательств этого, - это если вам удастся создать SPQuery, который может использовать индекс SQL для Parent ID в AllUserData.

Ariel 27.06.2009 11:30

Я также согласен с парнями выше Однако многие проблемы производительности, обсуждаемые в блогах, связаны с неправильным использованием объектной модели SharePoint.

Вы можете ознакомиться с серией моих блогов о производительности списков SharePoint в блоге dynaTrace. В этой серии статей рассматривается объектная модель SharePoint, чтобы выделить, что на самом деле происходит между серверами SharePoint и базой данных контента.

Конечно, предлагаемый подход не рекомендуется.

Но, будучи в теме, здесь - хороший документ для перфорации больших списков в WSS.

Сделав это сам, я бы посоветовал по возможности избегать этого! Это минное поле, особенно после примерно 100 000 рядов.

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

Другие вопросы по теме