Skip to main content

Cargar sus datos

Objetivos de aprendizaje

Después de completar esta unidad, podrá:

  • Describir las ventajas de la carga de datos eficiente en Salesforce.
  • Comprender las ventajas de API masiva sobre API de SOAP al cargar grandes cantidades de datos.
  • Acelerar el proceso de carga de grandes conjuntos de datos suspendiendo las operaciones de enriquecimiento y validación de datos.

Carga eficiente

Ya sea que hablemos de operaciones de sincronización de gran cantidad de datos en curso o migración de LDV, minimizar el impacto que tienen estas acciones en operaciones clave de negocio es la mejor práctica. Una estrategia inteligente para realizar esto es cargar de forma eficiente, incluyendo solo los datos y la configuración que necesita para llevar a cabo sus operaciones clave de negocio.

¿Qué implica la carga eficiente?

  • Identificación de las operaciones clave de negocio antes de mover los usuarios a Salesforce.
  • Identificación del conjunto de datos mínimo y la configuración requerida para implementar esas operaciones.
  • Definición de una estrategia de configuración y datos basándose en los requisitos que identificó.
  • Carga de los datos lo más rápido posible para reducir el ámbito de sincronización.

Al decidir acerca de su estrategia de configuración y carga de datos, considere estas opciones de configuración, que le permiten hacer referencia a procesos no clave y acelerar la carga de LDV.

Valores predeterminados de colaboración para toda la organización. Cuando carga datos con el modelo de colaboración privado, el sistema calcula la colaboración conforme se agregan los registros. Si carga con un modelo de colaboración Lectura/Escritura pública, puede hacer referencia a este procesamiento hasta después de la migración.

Relaciones de objetos complejas. Cuantas más búsquedas haya definido en un objeto, más comprobaciones tiene que realizar el sistema durante la carga de datos. Pero si puede establecer algunas de estas relaciones en una fase posterior, la carga se acelera.

Reglas de colaboración. Si tiene reglas de colaboración basadas en propiedad configuradas antes de cargar datos, cada registro que inserte requiere cálculos de colaboración si el propietario del registro pertenece a una función o un grupo que define los datos para su uso compartido. Si tiene reglas de colaboración basadas en criterios configuradas antes de cargar datos, cada registro con campos que coinciden con los criterios de selección de reglas también requiere cálculos de colaboración.

Reglas de flujo de trabajo,reglas de validación y desencadenadores. Éstas son herramientas potentes para asegurarse de que los datos ingresados durante operaciones diarias son limpios e incluyen relaciones apropiadas entre registros. Pero también pueden ralentizar el procesamiento si están activadas durante cargas de datos masivas.

Pero no demasiado eficientes

Mientras es inteligente eliminar barreras para acelerar la carga de datos, es también importante recordar que algunas partes de su configuración son esenciales (o al menos altamente deseadas) durante cualquier carga de datos y no se debe alterar:

  • Registros principales con secundarios principal-detalle. No podrá cargar registros secundarios si los principales no existen aún.
  • Propietarios de registro. En la mayoría de los casos, sus registros serán propiedad de usuarios individuales, y los propietarios deben existir en el sistema antes de que pueda cargar los datos.
  • Jerarquía de funciones. Es posible que piense que la carga sería más rápida si los propietarios de sus registros no son miembros de la jerarquía de funciones. Pero en la mayoría de los casos, el desempeño sería el mismo, y sería considerablemente más rápido si estuviera cargando cuentas de portal. Por lo que posponer este aspecto de configuración no supone ninguna ventaja.

Carga de datos de API masiva frente a API de SOAP

Cuando Está cargando LDV, la API que elige marca la diferencia. La API de SOAP de Force.com estándar se optimiza para aplicaciones cliente en tiempo real que actualizan unos cuantos registros a la vez. API de SOAP requiere que los desarrolladores y administradores implementen procesos complejos para cargar datos en fragmentos reducidos, monitorear resultados y reintentar registros con fallos. Este método es aceptable para pequeñas cargas de datos, pero se torno difícil de manejar y consume tiempo con grandes conjuntos de datos.

La API masiva, por el otro lado, se ha diseñado para simplificar el proceso de datos de unos pocos miles de registros a millones de ellos. La API masiva se basa en principios de REST y se desarrolló específicamente para simplificar y optimizar el proceso de carga de eliminación de grandes conjuntos de datos.

El uso de API masiva para LDV permite velocidades de procesamiento super rápidas, junto con lenguaje de programación del lado del cliente reducido, estado de trabajo fácil de monitorear, reintento automático de registros con fallos, compatibilidad para procesamiento paralelo, recorridos mínimos s Force.com, llamadas de API mínimas, pérdidas de conexión limitadas y tamaño de lote fácil de ajustar. De manera sencilla, es la forma más rápida de insertar, consultar y eliminar registros.

Cómo funciona la API masiva

Cuando carga registros utilizando API masiva, esos registros se transmiten a Force.com para crear un nuevo trabajo. Conforme llegan los datos para el trabajo, se almacenan en almacenamiento temporal y luego se dividen en lotes definidos por el usuario (máximo de 10.000 registros). Incluso cuando aún se están enviando sus datos al servidor, la plataforma Force.com envía los lotes para su procesamiento.

Los lotes se pueden procesar en paralelo o en serie dependiendo de sus necesidades. La API masiva mueve la función y funciona desde su aplicación de cliente al servidor. La API registra el estado de cada trabajo e intenta volver a procesar registros con fallos por usted automáticamente. Si un trabajo agota el tiempo de espera, la API masiva lo vuelve a colocar automáticamente en la cola y lo reintenta por usted.

Cada lote se procesa de forma independiente, y una vez que el lote finaliza (con éxito o no), el trabajo se actualiza con los resultados. Los trabajos se pueden monitorear y administrar desde la interfaz de usuario de administración de Salesforce.com por cualquiera con acceso apropiado.

Aumentar la velocidad suspendiendo eventos

Cuando necesita cargar un LDV rápidamente, es importante asegurarse de que cada inserción es lo más eficiente posible. Con la preparación y el procesamiento posterior correctos, puede desactivar operaciones de enriquecimiento y validación de datos durante la carga, sin comprometer la integridad de sus datos o las reglas de negocio.

La plataforma Force.com incluye herramientas potentes para asegurarse de que los datos ingresados por sus usuarios son limpios e incluyen relaciones apropiadas entre registros. Reglas de validacióngarantizan que los datos ingresados por los usuarios para registros nuevos y existentes cumplen las normas especificadas por su negocio. Las reglas de flujo de trabajo le permiten automatizar actualizaciones de campo, alertas de email, mensajes salientes y tareas asociadas con el flujo de trabajo, las aprobaciones y los hitos. Desencadenadores le permiten manipular datos y realizar otras acciones en inserciones de registros.

Mientras que estas herramientas le permiten preservar la integridad de los datos durante operaciones habituales, también pueden ralentizar inserciones en un deslazamiento si las activa durante cargas de datos masivas. Pero si desactiva la validación, el flujo de trabajo y los desencadenadores, ¿cómo puede asegurarse de que una vez finalice la carga, tendrá datos precisos y las relaciones correctas establecidas entre objetos? Existen tres fases clave en este esfuerzo; análisis y preparación de datos, desactivación de eventos para carga y procesamiento posterior.

Análisis y preparación de datos

Para cargar de forma segura sin ejecución de desencadenadores, reglas de validación y reglas de flujo de trabajo, examine los requisitos de negocio que podría usualmente cumplir con estas operaciones, luego responda a un par de preguntas.

Primero, ¿cuál de sus requisitos puede cumplir mediante la limpieza de datos antes de la carga de datos, o mediante la determinación de secuencias de operaciones de carga sonde existen dependencias clave entre objetos? Por ejemplo, si normalmente utiliza una regla de validación para garantizar que las entradas de usuario están entre intervalos válidos, puede consultar el conjunto de datos antes de la carga para buscar y arreglar registros que no se ajustan a las reglas.

Segundo, ¿cuál de sus requisitos puede cumplir mediante el postprocesamiento de registros tras la carga de datos? Un conjunto habitual de casos de uso aquí se relaciona con enriquecimiento de datos, lo que puede incluir agregar relaciones de búsqueda entre objetos, implementar campos de resumen en registros principales y otras relaciones de datos entre registros.

Desactivación de eventos para la carga

Una vez que haya analizado todos sus requisitos de enriquecimiento y validación de datos, y haya planificado acciones para gestionarlos antes o después de la carga de datos, puede desactivar sus reglas y desencadenadores temporalmente para acelerar la carga. Simplemente modifique cada regla y defina para ella un estado “inactiva”. Puede desactivar reglas de asignación de Validación, Prospecto y Caso, y reglas de asignación de Territorio del mismo modo.

La desactivación temporal de desencadenadores es un poco más compleja y requiere cierta preparación. Primero, cree una Configuración personalizada y un campo de casilla de verificación correspondiente para controlar cuándo se debe activar un desencadenador. A continuación incluya una declaración en su código de desencadenador como aquel resaltado en este ejemplo.

Miniprograma de códigos que muestra el código para un desencadenador denominado setDefaultValues en el objeto Cuenta. La declaración en el código resaltado muestra el estado de cuenta actualizado a un valor de etapa 1.

Una vez hecho ésto, la desactivación o activación de su desencadenador es tan sencilla como modificar el campo de casilla de verificación.

Postprocesamiento

Cuando haya finalizado la carga de sus datos, es el momento de completar tareas de enriquecimiento y configuración de datos que pospuso hasta este punto:

  • Agregue relaciones de búsqueda entre objetos, implemente campos de resumen en registros principales y otras relaciones de datos entre registros utilizando Apex por lotes o API masiva.
  • Mejore registros en Salesforce con claves externas u otros datos para facilitar la integración con sus otros sistemas utilizando Apex por lotes o API masiva.
  • Restablezca los campos en la configuración personalizada que creó para desencadenadores, por lo que se activarán de forma apropiada en actualizaciones y la creación de registros.
  • Vuelva a activar reglas de validación, flujo de trabajo y asignación de modo que desencadenarán las acciones apropiadas cuando los usuarios ingresen o modifiquen registros.

Allí lo tiene: Cargando de forma eficiente, utilizando API masiva y suspendiendo eventos, puede estar seguro de que sus cargas de datos son eficientes, lo más rápidas posible y mantienen su integridad. Ahora que repasamos la carga de datos, pase a la siguiente unidad donde trataremos su eliminación y extracción.

Recursos

Comparta sus comentarios de Trailhead en la Ayuda de Salesforce.

Nos encantaría saber más sobre su experiencia con Trailhead. Ahora puede acceder al nuevo formulario de comentarios en cualquier momento en el sitio de Ayuda de Salesforce.

Más información Continuar a Compartir comentarios