이전 버전과의 호환성(StreamInsight)

 

StreamInsight 2.1

StreamInsight2.1을 설치하려면 SQL Server 2012 라이선스와 .NET Framework 4.0이 필요합니다. StreamInsight1.2 또는 2.0 어셈블리를 사용하여 개발된 응용 프로그램 또는 어댑터는 StreamInsight 2.1 인스턴스를 사용하기 위해 다시 컴파일하지 않아도 됩니다. 다음 섹션에서는 StreamInsight 2.1 인스턴스와 함께 작동하도록 기존 StreamInsight 응용 프로그램 및 StreamInsight Host 서비스를 구성하고 마이그레이션하는 방법에 대해 설명합니다.

참고


이 릴리스의 새로운 기능에 대한 자세한 내용은 새로운 기능(StreamInsight)을 참조하십시오.

StreamInsight 1.2 또는 2.0 응용 프로그램 마이그레이션

다음 절차에서는 포함된 StreamInsight 2.1 서버를 사용하는 기존 응용 프로그램에서 StreamInsight 1.2 또는 2.0 서버를 사용하도록 마이그레이션하는 방법에 대해 설명합니다.

  1. 1.2 또는 2.0 StreamInsight 인스턴스를 제거합니다.

  2. 동일한 이름의 새로운 2.1 인스턴스를 설치합니다.

    System_CAPS_ICON_warning.jpg 경고


    다른 이름을 가진 2.1 인스턴스를 설치하고 응용 프로그램에서 사용되는 인스턴스 이름을 구성할 수 없는 경우 새 인스턴스 이름을 사용하여 다시 컴파일하도록 응용 프로그램을 수정해야 합니다.

  3. 어셈블리 바인딩 리디렉션의 단계를 수행하여 StreamInsight 리디렉션 구성을 app.config에 추가합니다.

  4. .NET Framework 4.0 리디렉션을 app.config에 추가합니다.

    <configuration>  
        <startup>  
            <supportedRuntime version="v4.0"/>  
        </startup>  
    </configuration>  
    

StreamInsight Windows 서비스 마이그레이션

다음 절차에서는 1.2 또는 2.0 StreamInsight 인스턴스를 사용하는 기존 StreamInsight Windows 서비스에서 2.1 인스턴스를 사용하도록 마이그레이션하는 방법에 대해 설명합니다.

  1. 1.2 또는 2.0 StreamInsight 인스턴스를 제거합니다.

  2. 동일한 이름의 새로운 2.1 인스턴스를 설치합니다.

  3. 사용자 정의 연산자 및 어댑터의 이진 파일, SDF 파일 및 app.config 파일과 같은 호스트별 파일을 1.2 또는 2.0 설치 폴더(예: C:\Program Files\Microsoft StreamInsight 1.2\Host)에서 2.1 설치 폴더(C:\Program Files\Microsoft StreamInsight 2.1\Host)로 복사합니다.

  4. 어셈블리 바인딩 리디렉션의 단계를 수행하여 StreamInsight 리디렉션 구성을 app.config에 추가합니다.

어셈블리 바인딩 리디렉션

원래 StreamInsight 1.2 또는 2.0 어셈블리에 바인딩된 응용 프로그램이 있는 경우 바인딩을 리디렉션하도록 app.config를 구성하여 응용 프로그램을 2.1 어셈블리에 다시 바인딩 수 있습니다. 다음 예에서는 버전 1.2 어셈블리를 다시 바인딩하는 방법을 보여 줍니다. 버전 2.0 어셈블리를 다시 바인딩하는 경우 oldVersion의 값으로 "20.0.0.0"을 사용하십시오.

  
<configuration>  
    <runtime>  
        <assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1">  
            <dependentAssembly>  
                <assemblyIdentity name="Microsoft.ComplexEventProcessing" publicKeyToken="89845dcd8080cc91"/>  
                <bindingRedirect oldVersion="12.0.0.0" newVersion="21.0.0.0"/>  
            </dependentAssembly>  
        </assemblyBinding>  
        <assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1">  
            <dependentAssembly>  
                <assemblyIdentity name="Microsoft.ComplexEventProcessing.Adapters" publicKeyToken="89845dcd8080cc91"/>  
                <bindingRedirect oldVersion="12.0.0.0" newVersion="21.0.0.0"/>  
            </dependentAssembly>  
        </assemblyBinding>  
        <assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1">  
            <dependentAssembly>  
                <assemblyIdentity name="Microsoft.ComplexEventProcessing.ManagementService" publicKeyToken="89845dcd8080cc91"/>  
                <bindingRedirect oldVersion="12.0.0.0" newVersion="21.0.0.0"/>  
            </dependentAssembly>  
        </assemblyBinding>  
        <assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1">  
            <dependentAssembly>  
                <assemblyIdentity name="Microsoft.ComplexEventProcessing.Observable" publicKeyToken="89845dcd8080cc91"/>  
                <bindingRedirect oldVersion="12.0.0.0" newVersion="21.0.0.0"/>  
            </dependentAssembly>  
        </assemblyBinding>  
    </runtime>  
</configuration>  
  
System_CAPS_ICON_warning.jpg 경고


app.config에서 바인딩 리디렉션에 실패하면 문제가 있음을 직접적으로 나타내지 않는 오류가 발생할 수 있습니다. 예를 들면 2.1 StreamInsight 인스턴스를 사용하는 컴퓨터에서 1.2 어셈블리는 참조하는 어댑터를 시작하면 다음과 같은 오류가 표시될 수 있습니다.

Microsoft.ComplexEventProcessing.ConnectionException: There was an error in the runtime: The query 'EqualDownticksUpticksQuery' (query template 'EqualDownticksU pticksQuery_Template') could not be started.-->
'StreamInsight.Samples.Adapters.SimpleTextFileReader.TextFileReaderFactory, StreamInsight.Samples.Adapters.SimpleTextFileReader, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null' does not implement an input adapter factory interface.

사용자 정의 연산자를 배포하면 다음과 같은 오류가 표시될 수 있습니다.

Microsoft.ComplexEventProcessing.ConnectionException: The management service encountered an error: The user-defined type 'AfaOperator2' is not derived from any recognized abstract class for user-defined operators`