Интерпретация Guidewire CDA как Delta Table: Как технологическая компания, GuideWire предлагает отраслевую платформу для перевозчиков страхования недвижимости и жертв по всему миру. Благодаря различным продуктам и услугам в соответствии с их страховым набором, они предоставляют пользователям возможности операции, необходимые для получения, обработки и урегулирования претензий, поддержания политик, поддержки андеррайтинга и процессов корректировки. DataBricks, с другой стороны, предоставляет пользователям аналитические возможности (от базовой отчетности до сложных решений ML) через их Lakehouse для страхования. Объединяя обе платформы вместе, компании P & C, страховые компании теперь имеют возможность начать интеграцию расширенных возможностей аналитики (AI/ML) в свои основные бизнес -процессы, обогащая информацию о клиентах альтернативными данными (например, данные о погоде), но в равной степени согласовывание и сообщать о критической информации на Enterprise шкала.
GuideWire поддерживает доступ к данным к аналитической среде через их облачный доступ к данным (CDA). Хранение файлов в виде отдельных паркетных файлов под различными временными метками и эволюцией схемы, к сожалению, затрудняет обработку для конечных пользователей. Вместо того, чтобы обрабатывать файлы индивидуально, почему бы нам не генерировать файлы манифеста delta log
только для чтения информации, которая нам нужна, когда нам это нужно, без необходимости загрузки, обработки и согласования сложной информации? Это принцип этой инициативы. Сгенерированная дельта таблица не будет материализована (данные не будут физически двигаться), но будут действовать как мелкий клон для данных направляющих.
Более конкретно, мы будем обрабатывать все таблицы Guidewire независимо, параллельно (т.е. как задание Spark), где каждая задача будет состоять только в списке файлов и папок Parquet и соответствующим образом генерируя Delta Log. С точки зрения конечного пользователя, Guidewire будет выглядеть как таблица Delta и быть обработанной как таковой, сокращая время обработки с дней до секунд (поскольку нам не нужно загружать и обрабатывать каждый файл через многие задания Spark).
Поскольку данные в настоящее время находятся на озере Delta (физически материализовано или нет), можно извлечь выгоду из всех последующих возможностей Delta Lake, «подпискиваемого» на изменения с помощью возможностей автозагрузки, Delta Live Table (DLT) или даже дельта, ускорение, ускорение Время до понимания от дней до минут.
Поскольку эта модель следует подходу к мелковому клону, рекомендуется предоставить разрешение на чтение только конечному пользователю, поскольку операция VACCUM
на сгенерированной дельте, возможно, приведет к потере данных на ведре Guidewire S3. Мы настоятельно рекомендуем организацию, не разоблачая этот набор данных необработанного набора данных для конечных пользователей, а скорее создаем серебряную версию с материализованными данными для потребления. Обратите внимание, что команда OPTIMIZE
приведет к материализации последнего дельта -снимка с оптимизированными паркетными файлами. Только соответствующие файлы будут физически загружены из исходной таблицы S3 в пункт назначения.
import com . databricks . labs . guidewire . Guidewire
val manifestUri = " s3://bucket/key/manifest.json "
val databasePath = " /path/to/delta/database "
Guidewire .index(manifestUri, databasePath)
Эта команда будет выполняться по приращению данных по умолчанию, загружая наши предыдущие контрольные точки, хранящиеся в качестве таблицы Delta под ${databasePath}/_checkpoints
. Если вам нужно переоценить все данные Guidewire, предоставьте дополнительный параметр savemode
следующим образом
import org . apache . spark . sql . SaveMode
Guidewire .index(manifestUri, databasePath, saveMode = SaveMode . Overwrite )
Следуя шаблону «мелкого клона», файлы Guidewire не будут храниться, но ссылаются из дельта -места, которое можно определить как внешнюю таблицу.
CREATE DATABASE IF NOT EXISTS guidewire;
CREATE EXTERNAL TABLE IF NOT EXISTS guidewire . policy_holders LOCATION ' /path/to/delta/database/policy_holders ' ;
Наконец, мы можем запросить данные Guidewire и получить доступ ко всем его разным версиям на разных временных метках.
SELECT * FROM guidewire . policy_holders
VERSION AS OF 2
mvn clean package -Pshaded
Следуя стандарту Maven, добавьте профиль shaded
для создания автономного файла JAR со всеми включенными зависимостями. Эта банка может быть установлена в среде DataBricks соответственно.