Logic Apps를 사용하여 데이터베이스 워크플로 자동화

완료됨

Azure Logic Apps는 앱, 데이터, 서비스 및 시스템을 통합하는 자동화된 워크플로를 만들고 실행할 수 있는 클라우드 기반 플랫폼입니다. 이 플랫폼을 사용하면 엔터프라이즈 및 B2B(Business-to-Business) 시나리오를 위한 확장성이 뛰어난 통합 솔루션을 신속하게 개발할 수 있습니다. Azure Integration Services의 멤버인 Azure Logic Apps는 클라우드, 온-프레미스, 하이브리드 환경에서 레거시, 최신 및 최첨단 시스템을 연결하는 방법을 간소화합니다.

다음 목록에서는 Azure Logic Apps 서비스를 사용하여 자동화할 수 있는 작업, 비즈니스 프로세스 및 워크로드의 몇 가지 예를 설명합니다.

  • 특정 이벤트가 발생할 때(예: 새 파일이 업로드될 때) Office 365를 사용하여 이메일 알림을 예약하고 보내기.

  • 온-프레미스 시스템과 클라우드 서비스에서 고객 주문 라우팅 및 처리.

  • 업로드된 파일을 SFTP 또는 FTP 서버에서 Azure Storage로 이동.

  • 트윗을 모니터링하고, 감정을 분석하고, 검토가 필요한 항목에 대한 경고 또는 작업 만들기.

Azure Logic Apps를 사용하는 이유

Azure Logic Apps 통합 플랫폼은 미리 빌드된 Microsoft 관리 API 커넥터와 기본 제공 작업을 제공하므로 앱, 데이터, 서비스 및 시스템을 더 쉽고 빠르게 연결하고 통합할 수 있습니다. 이를 통해 리소스에 액세스하는 방법을 파악하는 것이 아니라 솔루션의 비즈니스 논리 및 기능을 설계하고 구현하는 데 집중할 수 있습니다.

일반적으로 코드를 작성할 필요가 없습니다. 그러나 코드를 작성해야 하는 경우 Azure Functions를 사용하여 코드 조각을 만들고 워크플로에서 해당 코드를 실행할 수 있습니다. 인라인 코드 작업을 사용하여 워크플로에서 실행되는 코드 조각을 만들 수도 있습니다. 워크플로가 Azure 서비스, 사용자 지정 앱 또는 다른 솔루션의 이벤트와 상호 작용해야 하는 경우 Azure Event Grid를 사용하여 이벤트를 모니터링, 라우팅, 게시할 수 있습니다.

Logic Apps는 Microsoft Azure를 통해 완벽하게 관리되므로 솔루션의 호스팅, 크기 조정, 관리, 모니터링, 유지 관리에 대해 걱정할 필요가 없습니다. 이러한 기능을 사용하여 "서버리스" 앱 및 솔루션을 만들 때 비즈니스 논리 및 기능에만 집중할 수 있습니다. 이러한 서비스는 요구 사항을 충족하고, 신속하게 통합되고, 코드를 거의 또는 전혀 사용하지 않고 강력한 클라우드 앱을 빌드할 수 있도록 자동으로 스케일링됩니다.

SQL Server 커넥터

SQL Server 커넥터를 사용하면 Azure Logic Apps에서 SQL Server 커넥터를 통해 SQL 데이터베이스에 액세스할 수 있습니다. 그런 다음 SQL 데이터베이스 또는 기타 시스템의 이벤트로 트리거되는 자동화된 워크플로를 만들고 SQL 데이터 및 리소스를 관리할 수 있습니다.

예를 들어 실행 중인 SQL 쿼리 및 저장 프로시저와 함께 데이터를 가져오고, 삽입하고, 삭제하는 작업을 사용할 수 있습니다. 비 SQL 데이터베이스에서 새 레코드를 확인하고, 일부 처리 작업을 수행하고, 결과를 사용하여 SQL 데이터베이스에 새 레코드를 만들고, SQL 데이터베이스의 새 레코드에 대한 이메일 경고를 보내는 워크플로를 만들 수 있습니다.

SQL Server 커넥터는 다음 SQL 버전을 지원합니다.

  • SQL Server
  • Azure SQL Database
  • Azure SQL Managed Instance

SQL Server 커넥터를 사용하려면 SQL 커넥터 작업이 호출되었을 때 결과를 반환할 수 있도록 테이블에 데이터가 있어야 합니다. 예를 들어 Azure SQL Database를 사용하는 경우 포함된 샘플 데이터베이스를 사용하여 SQL 커넥터 작업을 시도할 수 있습니다.

Azure의 SQL 데이터베이스의 경우 연결 문자열 형식은 다음과 같습니다.

Server=tcp:{server-name}.database.windows.net,1433;Initial Catalog={database-name};Persist Security Info=False;User ID={user-name};Password={password};MultipleActiveResultSets=False;Encrypt=True;TrustServerCertificate=False;Connection Timeout=30;

또는 Azure Portal에서 Azure SQL Database에 대한 연결 문자열을 확인할 수도 있습니다. 데이터베이스에 대한 개요 섹션에서 연결 문자열 속성에 데이터베이스 연결 문자열 표시를 선택합니다.

SQL Server 트리거 작업으로 워크플로를 시작하려면 빈 워크플로로 시작해야 합니다.

SQL Server 커넥터는 다중 테넌트 Azure Logic Apps, ISE(통합 서비스 환경) 및 단일 테넌트 Azure Logic Apps의 논리 앱 워크플로에 사용할 수 있습니다.

  • 다중 테넌트 Azure Logic Apps의 소비 워크플로 - 이 커넥터는 관리형 커넥터로만 사용할 수 있습니다. 자세한 내용은 관리되는 SQL Server 커넥터 작업을 검토하세요.

  • 통합 서비스 환경의 소비 워크플로 – 이 커넥터는 관리형 커넥터로 또는 ISE에서 실행되도록 설계된 ISE 커넥터로 사용할 수 있습니다. 자세한 내용은 관리되는 SQL Server 커넥터 작업을 검토하세요.

  • 단일 테넌트 Azure Logic Apps의 표준 워크플로 – 이 커넥터는 관리형 커넥터로 또는 단일 테넌트 Azure Logic Apps 런타임과 동일한 프로세스에서 실행되도록 설계된 기본 제공 커넥터로 사용할 수 있습니다. 그러나 기본 제공 버전은 다음과 같은 차이점이 있습니다.

    • 기본 제공 SQL Server 커넥터에는 트리거가 없습니다.
    • 기본 제공 SQL Server 커넥터에는 쿼리 실행이라는 하나의 작업만 있습니다.

논리 앱 워크플로 만들기

다음 단계에서는 Azure Portal을 사용하여 논리 앱 워크플로를 만듭니다.

SQL Server 트리거 추가

다음 단계에서는 Azure Portal을 사용합니다. 그러나 적절한 Azure Logic Apps 확장을 사용하면 Visual Studio Code를 사용하여 논리 앱 워크플로를 만들 수도 있습니다.

  1. Azure Portal에서 빈 논리 앱 워크플로를 디자이너에서 엽니다.

  2. 사용하려는 관리형 SQL Server 커넥터 트리거를 찾아 선택합니다. 디자이너 검색 상자에서 모두를 선택합니다.

  3. 디자이너 검색 상자에 sql server를 입력합니다.

  4. 트리거 목록에서 원하는 SQL 트리거를 선택합니다. 이 예제에서는 항목이 만들어진 경우라는 트리거를 사용합니다.

    Screenshot showing the Azure portal, workflow designer for Consumption logic app.

  5. 처음으로 SQL 데이터베이스에 연결하는 경우 지금 SQL 데이터베이스에 연결을 만들라는 메시지가 표시됩니다. 이 연결을 만든 후에는 다음 단계를 계속 진행할 수 있습니다.

  6. 트리거 속성에서 트리거가 테이블을 검사하는 빈도에 대한 간격 및 빈도를 지정합니다.

  7. 이 트리거에 사용할 수 있는 다른 속성을 추가하려면 새 매개 변수 추가 목록을 열고 속성을 선택합니다.

    참고

    이 트리거에서는 선택한 테이블에서 한 행만 반환하며, 그 외에는 아무것도 반환하지 않습니다. 다른 작업을 수행하려면 논리 앱 워크플로에서 원하는 다음 작업을 수행하는 >다른 작업 또는 SQL Server 커넥터 작업을 추가하여 계속합니다.

    예를 들어 이 행의 데이터를 보려면 반환된 행의 필드를 포함하는 파일을 만드는 다른 작업을 추가하고 메일 알림을 보낼 수 있습니다. 이 커넥터에 대해 사용할 수 있는 다른 작업에 대해 알아보려면 커넥터의 참조 페이지를 참조하세요.

  8. 디자이너 도구 모음에서 저장을 선택합니다. 이 단계에서는 Azure에서 사용할 수 있는 논리 앱을 자동으로 활성화하고 게시합니다.

SQL Server 작업 추가

다음 단계는 Azure Portal을 사용합니다. 이 예제에서는 논리 앱 워크플로가 되풀이 트리거를 통해 시작하고 SQL 데이터베이스에서 행을 가져오는 작업을 호출합니다.

  1. Azure Portal의 디자이너에서 논리 앱 워크플로를 엽니다.

  2. 사용하려는 관리형 SQL Server 커넥터 작업을 찾아 선택합니다. 이 예제에서는 행 가져오기라는 작업을 사용합니다.

  3. SQL 작업을 추가하려는 트리거 또는 작업에서 새 단계를 선택합니다.

  4. 디자이너 검색 상자 아래의 작업 선택 상자에서 모두를 선택합니다.

  5. 디자이너 검색 상자에 sql server를 입력합니다.

  6. 작업 목록에서 원하는 SQL Server 작업을 선택합니다. 이 예에서는 단일 레코드를 가져오는 행 가져오기 작업을 사용합니다.

    Screenshot showing the Azure portal, workflow designer for Consumption logic app, the search box with sql server, and Get row selected in the Actions list.

  7. SQL 서버 이름 및 데이터베이스 이름을 아직 제공하지 않은 경우 해당 값을 입력합니다. 그렇지 않으면 테이블 이름 목록에서 사용하려는 테이블을 선택합니다. 행 ID 속성에 원하는 레코드의 ID를 입력합니다. 이 예제에서 테이블 이름은 SalesLT.Product입니다.

    Screenshot showing Consumption workflow designer and the Get row action with the example Table name property value and empty row ID.

    참고 항목

    이 작업은 선택한 테이블에서 한 행만 반환하고 그 외에는 아무것도 반환하지 않습니다.

  8. 완료되면 디자이너 도구 모음에서 저장을 선택합니다.

Azure SQL Database에 연결

워크플로 디자이너에서 처음으로 트리거 또는 작업을 추가할 때 연결을 만들어야 합니다. 이 정보는 연결에 따라 달라집니다. 예:

  • 새 연결에 사용할 이름

  • 시스템 또는 서버의 이름

  • 사용자 또는 계정 자격 증명

  • 사용할 인증 유형