Browse Source

Improve performance of latest market data

pull/8059/head
Thomas Kaul 1 week ago
parent
commit
cee01bce71
  1. 2
      apps/api/src/services/market-data/market-data.service.ts
  2. 2
      apps/api/src/services/queues/data-gathering/data-gathering.service.ts
  3. 8
      prisma/migrations/20261005000000_updated_indexes_of_market_data/migration.sql
  4. 3
      prisma/schema.prisma

2
apps/api/src/services/market-data/market-data.service.ts

@ -248,7 +248,7 @@ export class MarketDataService {
state: state as MarketDataState state: state as MarketDataState
}, },
where: { where: {
dataSource_date_symbol: { dataSource_symbol_date: {
dataSource: dataSource as DataSource, dataSource: dataSource as DataSource,
date: date as Date, date: date as Date,
symbol: symbol as string symbol: symbol as string

2
apps/api/src/services/queues/data-gathering/data-gathering.service.ts

@ -348,7 +348,7 @@ export class DataGatheringService {
}, },
update: { marketPrice, isCarriedForward: false }, update: { marketPrice, isCarriedForward: false },
where: { where: {
dataSource_date_symbol: { dataSource_symbol_date: {
dataSource, dataSource,
symbol, symbol,
date: startOfUtcDate date: startOfUtcDate

8
prisma/migrations/20261005000000_updated_indexes_of_market_data/migration.sql

@ -0,0 +1,8 @@
-- DropIndex
DROP INDEX "MarketData_dataSource_symbol_idx";
-- DropIndex
DROP INDEX "MarketData_dataSource_date_symbol_key";
-- CreateIndex
CREATE UNIQUE INDEX "MarketData_dataSource_symbol_date_key" ON "MarketData"("dataSource", "symbol", "date");

3
prisma/schema.prisma

@ -173,9 +173,8 @@ model MarketData {
state MarketDataState @default(CLOSE) state MarketDataState @default(CLOSE)
symbol String symbol String
@@unique([dataSource, date, symbol]) @@unique([dataSource, symbol, date])
@@index([dataSource]) @@index([dataSource])
@@index([dataSource, symbol])
@@index([date]) @@index([date])
@@index([state]) @@index([state])
@@index([symbol]) @@index([symbol])

Loading…
Cancel
Save