2016-08-24 7 views
0

Я создал хранимую процедуру для вставки 90 000 записей и вызвал ее в mule anypointstudio. Но для выполнения тех записей, где один и тот же код выполняется в perl, требуется более 8 часов, и он был вставлен через 15 минут.Как улучшить выполнение вставки хранимых процедур mulesoft намного быстрее?

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

Можете ли вы помочь, если я ошибаюсь в реализации?

Вот код мул я использовал:

<batch:job name="Import_users_data" max-failed-records="-1"> 
    <batch:threading-profile maxThreadsActive="1000" poolExhaustedAction="RUN"/> 
    <batch:input> 
     <db:stored-procedure config-ref="MyLearn_SQLSERVER_DB_Configuration" doc:name="Database"> 
      <db:parameterized-query><![CDATA[{call spFetch_users_data}]]></db:parameterized-query> 

     </db:stored-procedure> 
     <set-payload value="#[payload.get('resultSet1')]" doc:name="Set Payload"/> 
    </batch:input> 
    <batch:process-records> 
     <batch:step name="users_batch_step"> 
      <db:stored-procedure config-ref="SQLSERVER_DB_Configuration" doc:name="Database" streaming="true"> 
       <db:parameterized-query><![CDATA[{call spIns_data_in_users_table(:in_users_id, :in_first_name, :in_last_name)}]]></db:parameterized-query> 

       <db:in-param name="in_users_id" type="INTEGER" value="#[payload.USERS_ID]"/> 
       <db:in-param name="in_first_name" type="VARCHAR" value="#[payload.FIRST_NAME]"/> 
       <db:in-param name="in_last_name" type="VARCHAR" value="#[payload.LAST_NAME]"/> 


      </db:stored-procedure> 
     </batch:step> 
    </batch:process-records> 
    <batch:on-complete> 
     <logger message="Successfully imported users data.......#['Successfull Records: '+payload.successfulRecords+'Failed Records: '+payload.failedRecords]" level="INFO" doc:name="Logger"/> 
     <flow-ref name="Export_data" doc:name="Export_data"/> 
    </batch:on-complete> 
</batch:job> 

ответ

0

@shabrinath, попробуйте увеличить значение Batch Block Size к более высоким, чем значение по умолчанию 100 для Batch Scope.

+0

i'm используя любую точку studio 5.4.0, где размер блока блокировки недоступен. Обновление Cant, так как у меня нет разрешений. Есть ли альтернативный способ для Anypointstudio 5.4.0? – shabarinath

+0

К сожалению, он доступен от Mule 3.8 и Anypoint Studio 6 и далее. Вы можете обновить Anypoint Studio до 6, чтобы воспользоваться этой опцией. –

 Смежные вопросы

  • Нет связанных вопросов^_^