wiki:QueryOptimization

Version 10 (modified by 231026, 8 days ago) ( diff )

--

Query Optimization

View1: Baggage Details

  1. Примарното филтрирање на погледот BaggageDetails ќе биде според id на картата (ticketId).
  2. Примарен случај на употреба ќе биде пребарување на статусот (локацијата) на одреден багаж (кој припаѓа на одреден патник или е на одреден лет).
  3. Иницијалното време за извршување на погледот е 1s 524ms.

Ова не е прифатливо време за апликацијата, па затоа пристапуваме кон индексирање.

  1. Најбавните операции се full scan на табелите baggage и baggageStatus.
  2. Времето изминато во извршување на операциите insert и update изнесувa

Креирање на индекс во табелата baggage на ticketId

  1. Времето изминато во извршување на query-то со индекси изнесува 705ms, и тоа е прифатливо време.

  1. Времето изминато во извршување на операциите insert и update по индексирање изнесува:

View2: Airplane Availability

  1. Примарното филтрирање на погледот AirplaneAvailability ќе биде според местото на последната дестинација на авионот (LastFlightDestination).
  2. Примарен случај на употреба ќе биде пребарување на авион којшто се наоѓа на потребната локација.
  3. Иницијалното време на извршување на погледот е 1min 20s 558ms

Ова не е прифатливо време за апликацијата, па затоа пристапуваме кон индексирање.

  1. Најбавните операции се full scan на табелата flight
  2. Времето изминато во извршување на операциите insert и update пред индексирање изнесува:

Креирање на композитен индекс на табелата flight на аirplaneId и departure

  1. Времето изминато во извршување на query-то со индекси изнесува 477ms, и тоа е прифатливо време.

  1. Времето изминато во извршување на операциите insert и update по индексирање изнесува:

View3: Cargo Details

  1. Примарното филтрирање на погледот CargoDetails ќе биде според id на летот (flightId).
  2. Примарен случај на употреба ќе биде приказ на тоа кој багаж припаѓа на патниците, а кој е дополнителен багаж на летот.
  3. Иницијалното време на извршување на погледот е 2s 518ms.

Ова не е прифатливо време за апликацијата, па затоа пристапуваме кон индексирање.

  1. Најбавните операции се full scan на табелите baggage, ticket и additionalCargo.
  1. Времето изминато во извршување на операциите insert и update во табелите additionalCargo и baggage изнесувa:

Креираме индекс на табелата ticket на flightId

  1. Времето изминато во извршување на query-то со индекси изнесува 1s 862ms, и тоа може да се каже дека е прифатливо време (бидејќи табелите содржат 10 милиони записи).

  1. Времето изминато во извршување на операциите insert и update по индексирање изнесува:

Attachments (105)

Note: See TracWiki for help on using the wiki.