Бележка
Достъпът до тази страница изисква удостоверяване. Можете да опитате да влезете или да промените директориите.
Достъпът до тази страница изисква удостоверяване. Можете да опитате да промените директориите.
SQL Server е широко използвано решение за съхранение на корпоративни данни. Тази статия предлага най-добри практики, които да ви помогнат да създадете и публикувате приложение за платно от корпоративен клас с SQL Server.
Съвет
Тази статия предоставя примерен сценарий и визуално представяне на това как да използвате SQL Server с приложение за платно. Това решение е обобщена примерна архитектура, която може да се използва за много различни сценарии и индустрии. SQL Server и Power Apps поддържа много наследени подходи за удостоверяване. Тази статия е ограничена до най-добрите практики.
Диаграма на архитектурата
Workflow
Докато много предишни реализации на Power Apps SQL Server използваха шлюз, тази примерна архитектура подчертава архитектурата на виртуалната частна мрежа (VNET) с SQL Server. Екземплярът на SQL Server може да бъде Azure SQL или локална SQL база данни, изложена на облака чрез Azure Arc. И в двата случая комуникацията е лична и сигурна.
- Contoso VNET е виртуална частна мрежа, която създавате във вашия клиент.
- Ресурси на Azure/Contoso ресурси са ресурси, които предоставяте във виртуалната мрежа от вашия клиент. Тези ресурси включват услуги като база данни на SQL Azure или локална база данни на SQL Server, предоставена чрез Azure Arc.
- Делегираната подмрежа се намира във вашата виртуална мрежа и предоставя контейнер, за Power Platform да позволи на услуги като SQL конектор или Dataverse добавка да работят с вашите ресурси.
Компоненти
Този раздел описва компонентите, които поддържат интегрирането на SQL Server с приложения за платно в тази архитектура.
Приложение за платно и SQL таблици
Таблиците и изгледите на SQL Server се показват като Power Apps таблични източници на данни. Можете да свържете табличен източник на данни към свойството на таблицата или галерията Items с помощта на Power Fx израз. За таблични източници Power Fx на данни изразите се превеждат в OData изрази, които след това се преобразуват в SQL изрази. Въпреки това, Power Fx и OData не представят напълно всички възможности на SQL израз.
Съвет
Използвайте Power Fx за основни, ясни заявки и използвайте съхранени процедури за по-сложни SQL изрази.
Приложение за платно и съхранени процедури на SQL
Съхранените процедури на SQL Server се показват като Power Apps източници на данни за действия. Обикновено източниците на данни за действие не могат да бъдат обвързани с таблица или галерия поради потенциалните им странични ефекти. Можете обаче да маркирате като select stored procedureSafe for Tables and Galleries и да го използвате с таблица или галерия. Този подход извлича всички данни, които съхраняваната процедура връща, но бъдете внимателни, тъй като извличането на твърде много данни може да претовари паметта на клиента. За да контролирате количеството извлечени данни, използвайте аргументите за виртуализиране на параметъра, които обикновено присъстват в тези типове съхранени процедури.
Освен това задайте резултатите на Power Fx променлива и използвайте тази променлива в свойството Items , за да попълните таблицата или галерията. Не забравяйте да обновите променливата Power Fx на операциите за създаване, актуализиране и изтриване (CUD). По-сложните съхранени процедури, като например тези, използващи временни таблици, могат да върнат a dynamic schema. Можете да използвате резултатите от тези съхранени процедури, като зададете очакваните резултати на a Power Fx User defined type.
Конектор за SQL Server
Power Apps приложенията използват конектора на SQL Server за достъп до данни в SQL Server. Въпреки че има много налични типове SQL удостоверяване, Microsoft Entra ID и споделяемият SPN (име на принципал на услугата) са два от по-добрите избори.
Ако искате да използвате Microsoft Entra ИД, първо конфигурирайте базата данни на SQL Server за осигуряване на защита чрез Microsoft Entra ИД. SPN за споделяне е метод за достъп с разрешен администратор и трябва да се предоставя внимателно, тъй като всички потребители имат еднакви права за достъп до база данни. Той е защитен със защитени неявни връзки, които ограничават достъпа до таблиците и действията, използвани в приложението (т.е. Получаване, публикуване, поставяне и изтриване).
VNET (виртуална частна мрежа)
Има няколко начина за насочване на повиквания към SQL Server. Виртуалната мрежа е облачно решение на Azure, което прави всички крайни точки частни. За да внедрите, осигурете виртуална мрежа във вашия клиент, настройте корпоративните правила и конфигурирайте средата Power Platform си да я поддържа. Тази настройка гарантира, че SQL трафикът не се излага публично по кабела.
ALM (управление на жизнения цикъл на приложението)
Power Platform поддържа плавния преход на Power Apps приложение през SQL между среди за разработка, тестване и производство. Препратките към връзки поддържат промяна на низове за връзка между среди, което е важно за основното Променливите на средата поддържат сценария за Microsoft Entra ИД чрез промяна на сървъра и базата данни между средите.
Случаи на употреба
Power Apps предоставя на организациите гъвкав, интуитивен начин за изграждане на персонализирани потребителски изживявания.
- Ако създавате ново приложение и хранилище, помислете за използване Dataverse. Неговите функции са предназначени да улеснят изграждането на приложения от корпоративен клас.
- Ако имате данни в SQL Server, които не могат да бъдат преместени, или вашата организация изисква SQL Server, помислете за използване Power Apps на SQL Server.
- Ако данните не могат да бъдат преместени, използвайте Power Apps през SQL Server. Съществуващите приложения все още зависят от тези данни, така че трябва да преместите тези приложения в облака, за да ги модернизирате.
Съображения
Тези съображения прилагат стълбовете на Power Platform Well-Architected, набор от ръководни принципи, които подобряват качеството на работното натоварване. Научете повече в Microsoft Power Platform Well-Architected.
Надеждност
Проектирайте работното си натоварване, за да избегнете ненужна сложност: Power Apps работи добре с ясни заявки, които можете да делегирате на сървъра. Делегирайте сложни задачи на изгледи и съхранени процедури. След това използвайте тези съхранени процедури директно за синхронни действия. Използвайте Power Automate за всякакви асинхронни действия, включително извиквания на дългосрочни съхранени процедури.
Защита
Използване на защитени неявни връзки: Използвайте защитени неявни връзки за всички споделени връзки. Конвертирайте всички по-стари приложения, за да използвате защитени неявни връзки, ако е необходимо. При сигурни неявни връзки конекторът остава вътре в Power Apps облачната услуга и не се намира на клиента. Приложението се свързва само с прокси конектора, който също е в облачната Power Apps услуга. Приложението и прокси конекторът знаят един за друг; приложението обаче не знае за конектора. Прокси конекторът има правила, които ограничават типовете заявки до заявки в приложението.
Създайте умишлено сегментиране и периметри: Използвайте отделни Power Platform среди за етапите на жизнения цикъл на приложението и се уверете, че само правилните потребители имат достъп до всеки етап, за да поддържат правилата за сегментиране.
Високи постижения
Приемете практики за безопасно внедряване: Стандартизирайте внедряването на всички промени в Power Apps приложението, като използвате автоматизирани процеси за внедряване, като например тръбопроводи. Популяризирайте приложението в производство само след тестване на тези промени.
Ефективност на производителността
Проектирайте така, че да отговаря на изискванията за производителност: Оценете производителността на вашето решение и изискванията за обем данни, за да се уверите, че дизайнът на вашата таблица, изглед и съхранена процедура на SQL Server са подходящи. В оценката си включете как се осъществява достъп до данните и как Power Apps делегира операции на SQL Server. Имайте предвид ограниченията при търсене и филтриране на данни поради поддръжката на делегиране, предлагана от SQL Server. Прегледайте ограниченията, документирани за приложения за платно в Разбиране на делегирането, особено когато избирате правилния източник на данни или бекенд за вашето приложение.
Оптимизиране на логиката: Приложенията за платно се използват Power Fx за изпълнение на работа. Всяка Power Fx операция е независима и не се обработва като атомарна транзакция. Например, ако дадено приложение създаде ред с подробности за поръчка за продажба, но не създаде запис на заглавка на поръчка за продажба, редът с подробности за поръчката за продажба остава. Не оставяйте тези задължителни процедурни стъпки. Power Fx Използвайте съхранени процедури на SQL Server с поддръжка на транзакции.
Оптимизиране на функционалността
Проектиране за ефективност: Приложения, които позволяват на потребителите да имат достъп до други източници на данни заедно с таблици на SQL Server от едно Power Apps приложение, без да изискват взаимодействие с множество отделни приложения, подобряват ефективността и осигуряват по-добро персонализирано визуално изживяване. Избягвайте да създавате приложение за изграждане на приложение – приложението трябва да осигури известна ефективност на потребителя или друго предимство на архитектурата пред използването на изживяване, управлявано Power Apps от модел.
Свързани ресурси
Power Apps:
- Общ преглед на свързването с SQL Server
- Използвайте Microsoft SQL Server сигурно
- Разбиране на делегирането
- Power Apps функции и операции, които могат да бъдат делегирани в SQL Server
Съединители:
- Microsoft SQL Server Документация на конектора
- Преглед на поддръжката на виртуална мрежа
- Настройване на поддръжка на виртуална мрежа
Управление на жизнения цикъл на приложението (ALM):