Avalados por :

Como otimizar a leitura de CIT qualificados em projetos de Faturamento Convergente

  • Creado 01/03/2024
  • Modificado 01/03/2024
  • 2 Vistas
0
Cargando...
Em projetos de Faturamento Convergente, anteriormente vi código personalizado que utiliza o Módulo de Função FKK_BIX_CIT_SELECT em vez das visualizações CDS geradas para uma classe CIT. Acredito que isso pode ser mais eficiente em processos em massa. No entanto, dependendo do uso desse Módulo de Função, observei uma degradação de desempenho à medida que um sistema envelhece sem arquivamento suficiente. Incluo um exemplo e algumas diretrizes para evitar esse possível problema de desempenho.

Configuração e cenário:

Suponha que a classe CIT TEST tenha pelo menos 20 tabelas para CIT qualificados, e cada tabela tenha centenas de milhões de CIT. A configuração de armazenamento da classe CIT foi definida para passar para a próxima tabela a cada seis meses, então em qualquer mês dado, no máximo 2 tabelas seriam usadas para armazenamento.

Dentro de um processo em massa, um desenvolvedor deseja ler um CIT TEST qualificado correspondente usando um atributo personalizado. Eles chamam o FKK_BIX_CIT_SELECT com os seguintes parâmetros de exportação:
CALL FUNCTION 'FKK_BIX_CIT_SELECT'
  EXPORTING
    irt_citcat     =
    irt_citstatus  =
    it_further_sel =


  • IRT_CITCAT

    • Contém a classe CIT 'TEST'



  • IRT_CITSTATUS

    • Contém '4' para qualificado



  • IT_FURTHER_SEL

    • Contém o atributo personalizado e seu valor




Preocupação:

Isso fará com que a lógica leia as 20 tabelas muito grandes para os CIT qualificados na classe CIT TEST. Leituras adicionais de tabelas podem causar um problema de desempenho, dependendo de quantas chamadas por hora são feitas.

Evitando o problema de desempenho:

Aqui estão alguns parâmetros a serem considerados para ajudar a limitar quais das 20 tabelas são lidas neste exemplo.

  • IRT_CITDATAPACKID

    • Estes são atribuídos a CITCRDATE (ver abaixo)



  • IRT_CONSUMDATE / IRT_CITDATE / IRT_CITCRDATE / IRT_RATINGDATE

    • Todos esses levam a uma tabela CIT específica para cada mês/ano das datas escolhidas

    • Observação: IRT_CONSUMDATE não é usado para identificar as tabelas CIT se IRT_CITDATE também for usada




Em vários casos que vi, o CIT TEST é um sucessor de outra classe CIT. Portanto, pude usar a classe CITCRDATE do predecessor CIT para restringir a leitura da classe CIT TEST usando IRT_CITCRDATE. Foi adicionada uma margem de 5 dias no caso de haver um atraso extremo na criação do CIT TEST.
DATA(citcrdates) = VALUE fkk_rt_citcrdate( (
                     sign   = 'I'
                     option = 'BT'
                     low    = <predecessor_cit>-citcrdate
                     high   = <predecessor_cit>-citcrdate + 5 ) ).

Planejar os volumes de dados futuros otimizando como os CIT qualificados são lidos, especialmente quando o arquivamento é minimizado, pode ajudar a prevenir problemas de desempenho futuros.

Pedro Pascal
Se unió el 07/03/2018
Pinterest
Telegram
Linkedin
Whatsapp

Sin respuestas

No hay respuestas para mostrar No hay respuestas para mostrar Se el primero en responder

contacto@primeinstitute.com

(+51) 1641 9379
(+57) 1489 6964

© 2024 Copyright. Todos los derechos reservados.

Desarrollado por Prime Institute

¡Hola! Soy Diana, asesora académica de Prime Institute, indícame en que curso estas interesado, saludos!
Hola ¿Puedo ayudarte?