주요 컨텐츠로 이동
산업

Databricks에서 제공하는 실시간 에너지 거래 및 분석

하나의 플랫폼과 하나의 거버넌스 모델을 통해 Databricks가 실시간 에너지 거래, 리스크 모니터링, 머신 러닝, 과거 데이터 분석을 어떻게 결합하는지 확인해 보세요.

작성자: Victoria Sicking , Jack Yallop

  • 에너지 트레이딩 팀은 라이브 트레이딩과 분석을 위해 별도의 시스템을 운영하는 경우가 많으며, 이로 인해 리스크 데이터가 최신 상태로 유지되지 않고, 거버넌스가 중복되며, 동기화 오버헤드가 발생합니다.
  • Databricks는 이를 하나의 플랫폼에서 처리합니다. Spark Structured Streaming 실시간 모드는 시장 데이터를 앱과 에이전트를 위한 Serverless Postgres인 Lakebase로 스트리밍합니다. 이 데이터는 라이브 트레이딩 앱, 머신 러닝 모델, 대시보드, 그리고 자연어 쿼리 도구인 Genie One에 공급됩니다.
  • Databricks의 거버넌스 레이어인 Unity Catalog는 모든 것을 한곳에서 제어합니다. 권한, 리니지, 감사는 시스템별로 설정할 필요 없이 한 번만 설정하면 됩니다.

실시간 에너지 트레이딩에 더 빠른 데이터 이상의 것이 필요한 이유는 무엇인가요?

에너지 트레이딩 데스크는 시장 상황이 급변하고 의사결정이 밀리초 단위로 이루어지는 시장에서 운영됩니다. 이러한 상황을 더욱 어렵게 만드는 두 가지 요인은 더 높은 가격 변동성과 EU의 하루 전(day-ahead) 전력 시장 거래 간격이 기존 1시간에서 15분으로 단축된 점입니다. 15분 시장 시간 단위는 EU 국가 간의 하루 전 전력 시장을 연결하는 시스템인 단기 시장 커플링(SDAC)의 일부입니다. 이로 인해 시간당 시장 주기가 4배로 늘어나며 레코드, 주문, 위험 재계산의 볼륨이 증가합니다. 이러한 계산의 정확성을 유지하려면 데이터가 얼마나 빠르게 도착하는가뿐만 아니라 데이터가 어떻게 저장되고 거버넌스가 적용되는지와 직접적으로 연관된 최신 상태의 데이터가 필요합니다.

오래된 데이터는 트레이딩 데스크에 단순한 불편함 그 이상을 의미합니다. 위험 통제가 이전 시장 상태를 반영하게 만들고, 장중 가격 변동 대응을 놓치게 하며, 데스크 한도를 현재 포지션과 일치하지 않게 만들 수 있습니다.

많은 조직이 두 개의 스택으로 대응합니다. 운영 시스템은 라이브 데스크와 밀리초 단위의 트랜잭션을 지원합니다. 별도의 분석 시스템은 전략 백테스팅, machine learning, 규제 보고를 지원합니다. 이 분할은 서로 다른 두 가지 워크로드에 부합하지만, 다음과 같은 4가지 반복적인 문제를 야기합니다.

  • 두 개의 진실 공급원(versions of the truth)
  • 위험 통제의 신선도 격차(freshness gap)
  • 중복된 거버넌스 및 리니지
  • 서로 다른 시스템 간의 여러 동기화 파이프라인

Machine learning은 또 다른 의존성을 추가합니다. 모델은 학습을 위해 과거 데이터가 필요하지만, 그 출력은 라이브 트레이딩 워크플로에서 사용할 수 있어야 합니다. 별도의 시스템 간에 모델과 데이터를 이동하는 것은 이미 시간이 촉박한 프로세스에 복잡성을 더합니다. 대안은 데이터, 분석, AI를 위한 통합 플랫폼으로, Real-Time Mode 스트림이 밀리초 지연 시간으로 유입되고 Lakebase Postgres가 대기 상태로 유지하여 라이브 데스크와 모델 파이프라인 모두 추가 전송 단계 없이 동일 소스에서 데이터를 가져오도록 하는 것입니다.

Databricks에서 운영 및 분석 워크로드를 함께 실행하려면 어떻게 해야 하나요?

운영 및 분석 워크로드는 하나의 데이터 기반을 공유하여 함께 실행됩니다. Databricks의 Solutions Architect인 Victoria Sicking이 아래의 'Databricks에서 실시간 에너지 트레이딩, 위험 및 분석 실행하기'에서 제시한 솔루션은 Databricks Data + AI Platform의 6가지 컴포넌트를 결합하며, 핵심 설계 선택은 어떤 컴포넌트도 자체적인 별도의 데이터 복사본을 유지하지 않는다는 점입니다. 모든 컴포넌트는 Spark Structured Streaming Real-Time Mode가 Lakebase와 lakehouse에 기록한 내용을 바탕으로 작동합니다.

  • Spark Structured Streaming Real-Time Mode(밀리초 지연 시간으로 연속 이벤트 처리)
  • Lakebase(앱 및 에이전트를 위한 서버리스 Postgres, 운영 데이터베이스용)
  • Databricks Apps(라이브 트레이딩 인터페이스용)
  • Machine learning 모델(실시간 가격 예측 및 트레이드 신호용)
  • Genie One(과거 분석용)
  • Unity Catalog(워크플로 전체의 거버넌스용)

Spark Structured Streaming Real-Time Mode는 시장 데이터를 수신하여 Lakebase로 스트리밍합니다. Lakebase는 여기서 밀리초 단위 읽기, 트랜잭션, upsert를 위한 운영(OLTP) 데이터베이스로 사용됩니다. 동일한 데이터는 lakehouse를 기반으로 구축된 분석 워크로드를 지원할 수 있습니다.

팀은 더 이상 라이브 데스크용과 백테스팅 및 보고용으로 병렬 파이프라인을 각각 조정할 필요가 없습니다. 시장 및 포지션 데이터를 데이터 에스테이트로 유입하는 단일 경로를 생성함으로써 이전에 조정과 대사에 낭비되던 시간을 절약할 수 있습니다. 권한, 리니지, 감사를 위한 Databricks 거버넌스 레이어인 Unity Catalog는 앱, 비즈니스 인텔리전스, machine learning 워크로드 전반에 해당 거버넌스를 적용하므로 여러 시스템에서 개별적으로 구성할 필요가 없습니다.

Databricks Apps에서 라이브 에너지 트레이딩 데스크는 어떤 모습인가요?

가격, 포지션, 손익(P&L), 위험을 보여주는 단일 애플리케이션의 모습이며, 시장 움직임에 따라 모든 것이 실시간으로 업데이트됩니다. 라이브 경험은 플랫폼에서 라이브 트레이딩 인터페이스와 같은 데이터 애플리케이션을 빌드하고 호스팅하는 방법인 Databricks Apps를 기반으로 구축됩니다. 이를 통해 데스크가 시장을 모니터링하고 변화하는 조건에 대응하는 데 필요한 기능이 Lakebase에서 직접 제공되므로, 데스크는 분석 워크로드를 공급하는 것과 동일한 거버넌스가 적용된 데이터에서 항상 읽어오게 되며 별도의 운영 복사본이 필요하지 않습니다.

데스크톱 데모에는 브렌트유(Brent crude), 독일 및 프랑스 전력 스팟, EUR-to-USD 환율, EU 탄소 배출권(EUAs), TTF 가스에 대한 인스트루먼트 가격이 표시됩니다.

위험은 동일한 워크로드 내에서 데스크의 한도에 대해 모니터링됩니다. 측정치가 한도에 가까워지면 앱이 위험 경고를 발생시켜 데스크가 변경 사항을 확인하고 즉시 대응할 수 있도록 합니다. 이는 이전 데이터 스냅샷에서 위험을 계산하는 야간 배치 프로세스를 대체합니다.

이 애플리케이션은 데이터 플랫폼과 단절된 보고 화면이 아닙니다. Lakebase가 앱 뒤의 운영 레이어를 제공하고 스트리밍 파이프라인이 정보를 최신 상태로 유지합니다.

동일한 데이터에서 트레이드 신호를 생성하려면 어떻게 해야 하나요?

라이브 데스크를 지원하는 동일한 거버넌스 적용 데이터로 machine learning 모델을 학습하고, MLflow를 통해 개발 및 리니지를 추적하며, Databricks Model Serving을 통해 승인된 버전을 배포합니다. 그런 다음 모델의 출력이 앱에 직접 나타날 수 있습니다.

에너지 트레이딩 팀에는 위험을 예측하고 잠재적인 트레이드 신호를 식별할 수 있는 모델이 필요하며, 거버넌스가 적용된 단일 통합 데이터 복사본에서 모든 것을 실행하면 학습 시스템과 라이브 시스템 간의 핸드오프가 제거됩니다. 즉, 모델은 데스크가 보는 것을 정확하게 봅니다.

데모에서는 트레이드 신호에 기여할 수 있는 실시간 가격 예측을 보여줍니다. 모델 학습에 사용되는 데이터와 그 출력을 소비하는 워크로드 사이의 경로는 더 짧아집니다. Machine learning은 라이브 스택과 분석 스택 사이에 위치한 별도의 시스템이 아니라 엔드투엔드 트레이딩 워크로드의 일부가 됩니다.

동일한 거버넌스 데이터는 위험 분석 및 모델 개발도 지원할 수 있습니다. 운영 및 분석 워크로드가 연결된 상태로 유지되므로 팀은 사후에 별도의 데이터 버전을 대사할 필요가 없습니다.

분석가는 또 다른 데이터 복사본 없이 과거 데이터를 어떻게 조회할 수 있나요?

분석가는 라이브 앱과 동일한 데이터 기반 위에 구축된 임베디드 대시보드와 Genie One을 사용합니다. 임베디드 대시보드는 총 거래량, 거래된 볼륨, 트레이더 간 비교를 포함한 과거 트레이딩 데이터를 제공합니다.

더 심층적인 분석을 위해 분석가는 SQL, Python, Spark를 사용할 수 있습니다. 또한 쿼리를 직접 작성하지 않고도 거버넌스가 적용된 데이터에 질문할 수 있는 Databricks 자연어 인터페이스인 Genie One을 사용할 수 있습니다. 데모에서 분석가는 Genie One에 거래 건수 기준으로 상위 5개 카운터파티를 식별하고 각각의 총 매수 볼륨과 매도 볼륨을 비교하도록 요청합니다.

Genie One은 Databricks 워크스페이스 내에서 작동하며 사용 가능한 데이터 컨텍스트와 정의된 의미 구조를 사용하여 답변합니다. 분석가는 동일한 거버넌스 환경을 유지하면서 고정된 인사이트를 산출하는 대시보드 뷰에서 맞춤형 데이터 분석으로 전환할 수 있습니다. 통합된 데이터 복사본은 라이브 데스크와 분석 백오피스 간의 결과가 일치함을 의미합니다.

시장 피드부터 거버넌스가 적용된 인사이트까지의 아키텍처는 어떻게 구성되나요?

데이터는 시장 피드에서 스트리밍과 Lakebase를 거쳐 앱, 분석, machine learning으로 흐르며, 이 모든 과정은 Unity Catalog 거버넌스 아래에 있습니다. Unity Catalog가 모든 컴포넌트에 걸쳐 있으므로 라이브 데스크에 적용되는 권한, 리니지, 감사는 대시보드, Genie One, machine learning에도 적용되며 각 시스템에서 개별적으로 재현되지 않고 한 번만 구성됩니다. 단계는 다음과 같습니다.

  1. ICE, APEX 또는 Kafka 스트림과 같은 시장 피드가 소스 이벤트를 제공합니다.
  2. Spark Structured Streaming Real-Time Mode가 수신 데이터를 지속적으로 처리합니다.
  3. Lakebase가 관리형 Postgres 싱크 및 라이브 데스크용 운영 데이터베이스 역할을 합니다.
  4. 분석 레이어를 구축하고 과거 데이터 분석이나 백테스팅을 실행하려는 팀은 이제 Lakehouse의 데이터를 기반으로 작업을 진행할 수 있습니다.
  5. Databricks Apps는 운영 데이터를 활용해 실시간 가격, 포지션, P&L, 위험 지표, 알림 및 모델 출력 결과를 보여줍니다.
  6. 임베디드 대시보드와 Genie는 과거 분석 및 거래 활동과 관련된 질문에 대한 답변을 지원합니다.
  7. 머신러닝 모델은 동일한 데이터를 사용하여 가격 예측과 거래 신호를 생성합니다.
  8. Unity Catalog는 앱, 분석 및 머신러닝 워크플로 전반에 걸쳐 거버넌스를 적용합니다.

실시간 데스크, 분석, 머신러닝 워크로드는 반복적인 데이터 이동이 필요한 별개의 대상이 아닙니다. 이들은 동일한 거버넌스가 적용된 데이터를 활용하는 서로 다른 방식일 뿐입니다.

이 아키텍처를 검토할 때 팀이 고려해야 할 사항은 무엇인가요?

핵심 질문은 운영 및 분석 요구사항을 각각 별도의 복사본, 거버넌스 모델, 동기화 로직을 가진 단절된 시스템으로 처리해야 하는지 여부입니다. 요구사항은 서로 다르지만, 하나의 플랫폼이 두 가지 모두를 처리할 수 있으며 거버넌스가 적용된 단일 데이터 복사본으로 통합하면 데스크, 위험 모델, 리포팅 레이어가 서로 동기화되지 않는 문제를 방지할 수 있습니다.

이러한 워크로드가 별도의 시스템에서 실행되면 위험 제어는 배치 데이터에 의존하게 되고, 모델은 실시간 시스템과 일치하지 않는 정보로 학습될 수 있으며, 거버넌스, 계보(lineage), 동기화 파이프라인을 중복으로 관리해야 합니다.

Databricks Energy Trading 솔루션은 이러한 기능을 거버넌스가 적용된 하나의 데이터 기반 위에 통합합니다. 이 구성을 통해 팀은 P&L, 익스포저, 백테스팅, 머신러닝, 대시보드, 자연어 분석을 위해 동일한 거버넌스 데이터를 사용하는 동시에 시장 변화에 맞춰 리스크를 평가할 수 있습니다.

시작하는 방법에 대해 자세히 알아보려면 다음 링크를 방문하세요.

자주 묻는 질문

별도의 시스템을 사용할 때 에너지 거래에서 발생할 수 있는 문제는 무엇인가요?

별도의 시스템을 사용하면 두 개의 서로 다른 진실의 버전이 생기고, 위험 제어의 신선도 격차가 발생하며, 거버넌스와 계보가 중복되고, 추가적인 유지관리 작업과 시스템 간 동기화 파이프라인이 늘어납니다. 또한 머신러닝의 경우 한 시스템에서 모델을 학습시키고 다른 시스템에서 실행해야 하므로 관리하기가 더 어려워집니다. 거버넌스가 적용된 단일화된 데이터 복사본을 단일 제어 세트와 함께 유지 관리하면 이러한 비용의 대부분을 줄일 수 있습니다.

에너지 거래를 위해 운영 및 분석 워크로드를 단일 플랫폼으로 통합해야 하는 이유는 무엇인가요?

에너지 거래 팀은 Databricks 내의 거버넌스가 적용된 단일 데이터 복사본을 기반으로 실시간 데스크, 위험 관리, 머신러닝, 과거 분석을 실행할 수 있습니다. Spark Structured Streaming 실시간 모드, Lakebase, Databricks Apps, Unity Catalog가 두 번째 시스템과 중복된 제어 기능을 대체합니다.

에너지 거래에서 Lakebase는 어떤 역할을 하나요?

Lakebase는 Databricks Data + AI Platform의 네이티브 완전 관리형 Postgres 데이터베이스로, 여기서는 밀리초 단위의 읽기, 트랜잭션, 업서트 작업을 위한 운영(OLTP) 데이터베이스로 사용됩니다. 레이크하우스와 동일한 플랫폼 내에 위치하므로, 플랫폼 외부에 별도의 데이터베이스를 두지 않고도 거버넌스가 적용된 단일 데이터 복사본을 통해 운영 데이터와 분석 워크로드를 연결합니다.

트레이더는 시장 상황이 바뀔 때 어떻게 리스크를 모니터링할 수 있나요?

Databricks Apps를 기반으로 구축된 실시간 거래 애플리케이션(플랫폼에서 실시간 거래 인터페이스와 같은 데이터 애플리케이션을 빌드하고 호스팅하는 방법)을 사용하면 가격, 포지션, P&L, 리스크가 업데이트되는 대로 표시할 수 있습니다. 측정치가 데스크 한계에 접근하면 리스크 알림이 트리거되므로, 트레이더는 배치 계산에만 의존하지 않고 현재 시장 상황에 즉시 대응할 수 있습니다.

Unity Catalog를 통해 데이터 거버넌스는 어떻게 관리되나요?

Unity Catalog는 권한, 계보, 감사를 위한 Databricks 거버넌스 레이어로, 운영 애플리케이션, 분석, 머신러닝 워크플로 전반에 걸쳐 단일 거버넌스 레이어를 제공합니다. 엔드투엔드로 중앙화된 권한, 계보, 감사를 유지하므로 각 시스템마다 별도의 거버넌스를 구현할 필요 없이 단일 데이터 복사본에 대한 제어 설정을 한 번만 구성하면 됩니다.

(이 글은 AI의 도움을 받아 번역되었습니다. 원문이 궁금하시다면 여기를 클릭해 주세요)

관련 태그:

에너지, Lakebase, Genie, Unity Catalog , Databricks Apps

최신 게시물을 이메일로 받아보세요

블로그를 구독하고 최신 게시물을 이메일로 받아보세요.