generic enterprise simulation using an in memory column
play

Generic Enterprise Simulation using an In-Memory Column Store Lars - PowerPoint PPT Presentation

Generic Enterprise Simulation using an In-Memory Column Store Lars Butzmann, Stefan Klauck, Stephan Mller, Ma8hias Uflacker, Werner Sinzig, Hasso Pla8ner Hasso-Pla8ner-InsCtut,


  1. Generic Enterprise Simulation using an In-Memory Column Store Lars ¡Butzmann, ¡Stefan ¡Klauck, ¡Stephan ¡Müller, ¡Ma8hias ¡Uflacker, ¡Werner ¡Sinzig, ¡Hasso ¡Pla8ner ¡ ¡ Hasso-­‑Pla8ner-­‑InsCtut, ¡Universität ¡Potsdam ¡ ¡ BTW ¡ ¡05.03.2015 ¡

  2. Motivation □ CorporaCons ¡want ¡to ¡quickly ¡anCcipate ¡changes ¡ § “What ¡is ¡the ¡impact ¡on ¡my ¡profitability ¡if ¡the ¡commodity ¡price ¡of ¡ crude ¡oil ¡increases ¡by ¡7 ¡percent?” ¡ ¡ □ Usage ¡of ¡value ¡driver ¡trees ¡to ¡model ¡the ¡relaConship ¡of ¡cause ¡ and ¡effect, ¡BUT ¡limited ¡tool ¡support ¡ □ Challenges ¡ § Flexible ¡modeling ¡and ¡linking ¡to ¡mulCdimensional ¡data ¡sources ¡ § On-­‑the-­‑fly ¡aggregaCon ¡of ¡transacConal ¡data ¡during ¡what-­‑if ¡simulaCon ¡ 2 ¡

  3. Current Solutions / Related Work □ MS ¡Excel ¡spreadsheets ¡ § Easy ¡to ¡understand ¡UI ¡ § Data ¡inconsistencies ¡ § Complexity ¡and ¡error ¡handling ¡ □ Extending/connecCng ¡SQL ¡and ¡MS ¡Excel ¡ [Wi8kowski ¡VLDB ¡2005] ¡ § No ¡encapsulaCon ¡ § Limited ¡flexibility ¡ □ UML-­‑based ¡modeling ¡of ¡simulaCons ¡ [Golfarelli ¡DaWak ¡2008] ¡ § Formalizes ¡simulaCons, ¡but ¡no ¡link ¡to ¡applicaCons ¡

  4. Generic Enterprise Simulation □ EncapsulaCon ¡of ¡ § Model ¡definiCon ¡(value ¡driver ¡graph) ¡ § Data ¡binding ¡ § What-­‑if ¡simulaCon ¡ □ Prototypical ¡implementaCon ¡ § CreaCon ¡and ¡modificaCon ¡of ¡value ¡driver ¡graphs ¡ § SpecificaCon ¡of ¡data ¡binding ¡and ¡dependencies ¡ § InteracCve ¡what-­‑if ¡simulaCon ¡scenarios ¡on ¡transacConal ¡data ¡

  5. Value Driver Graphs □ Nodes ¡ § Name ¡and ¡type: ¡KPI ¡or ¡value ¡driver ¡ § Set ¡of ¡dimensions ¡ § MulCdimensional ¡measures ¡ Operating Profit Time(month) - □ Hyperedges ¡ Marginal Income Expenses Customer, Location, Product, Time(day) Cost center, Time(month) § OperaCons ¡ - Net Sales Variable Costs Customer, Location, Product, Time(day) Customer, Location, Product, Time(day) * * Price per Unit Sales Volume Cost per Unit Customer, Location, Product, Time(day) Customer, Location, Product, Time(day) Product, Time(day)

  6. Data Binding □ Connect ¡(leaf) ¡nodes ¡to ¡data ¡sources ¡ □ SpecificaCon ¡of ¡dimensions ¡ § by ¡data ¡source ¡ § by ¡connected ¡nodes ¡and ¡operaCon ¡ Operating Profit Time(month) - Marginal Income Expenses Customer, Location, Product, Time(day) Cost center, Time(month) - Net Sales Variable Costs Customer, Location, Product, Time(day) Customer, Location, Product, Time(day) * * Price per Unit Sales Volume Cost per Unit Customer, Location, Product, Time(day) Customer, Location, Product, Time(day) Product, Time(day)

  7. What-If Simulation □ SimulaCon ¡basis: ¡ § CalculaCon ¡through ¡data ¡sources ¡and ¡operaCons ¡ § The ¡model ¡specifies ¡how ¡changes ¡propagate ¡ § PropagaCon ¡paths ¡must ¡be ¡acyclic ¡ Operating Profit 14/10, $35 □ ParameterizaCons ¡ ¡ Time(month) - § On ¡each ¡node ¡for ¡ ¡ available ¡dimensions ¡ Expenses Marginal Income CC1, 14/10, $15 Paul, Berlin, P1, 14/10/9, $50 Customer, Location, Product, Time(day) § Absolute ¡or ¡linear ¡ ¡ Cost center, Time(month) - adjustments ¡ Net Sales Variable Costs Paul, Berlin, P1, 14/10/9, $150 Paul, Berlin, P1, 14/10/9, $100 Customer, Location, Product, Time(day) Customer, Location, Product, Time(day) * * Price per Unit Cost per Unit Sales Volume Paul, Berlin, P1, 14/10/9, $15 P1, 14/10/9, $10 Paul, Berlin, P1, 14/10/9, 10 Customer, Location, Product, Time(day) Product, Time(day) Customer, Location, Product, Time(day)

  8. Simulation Scenario Operating Profit 14/10, $35 Time(month) - Expenses Marginal Income CC1, 14/10, $15 Paul, Berlin, P1, 14/10/9, $50 Customer, Location, Product, Time(day) Cost center, Time(month) - Net Sales Variable Costs Paul, Berlin, P1, 14/10/9, $150 Paul, Berlin, P1, 14/10/9, $100 Customer, Location, Product, Time(day) Customer, Location, Product, Time(day) * * set ¡price ¡per ¡unit ¡to ¡$30 ¡ Price per Unit Sales Volume Cost per Unit Paul, Berlin, P1, 14/10/9, $15 Paul, Berlin, P1, 14/10/9, 10 P1, 14/10/9, $10 Operating Profit Customer, Location, Product, Time(day) Customer, Location, Product, Time(day) Product, Time(day) 14/10, $185 Time(month) - Marginal Income Expenses Paul, Berlin, P1, 14/10/9, $200 CC1, 14/10, $15 Customer, Location, Product, Time(day) Cost center, Time(month) - Net Sales Variable Costs Paul, Berlin, P1, 14/10/9, $300 Paul, Berlin, P1, 14/10/9, $100 Customer, Location, Product, Time(day) Customer, Location, Product, Time(day) * * Price per Unit Sales Volume Cost per Unit Paul, Berlin, P1, 14/10/9, $30 Paul, Berlin, P1, 14/10/9, 10 P1, 14/10/9, $10 Customer, Location, Product, Time(day) Customer, Location, Product, Time(day) Product, Time(day)

  9. Columnar In-Memory Databases □ Capable ¡to ¡combine ¡ analy%cal ¡and ¡ transac%onal ¡data ¡processing ¡ ¡ □ Highest ¡query ¡ flexibility ¡by ¡operaCng ¡on ¡the ¡lowest ¡level ¡of ¡data ¡ g ranularity ¡ □ ExisCng ¡implementaCons ¡(e.g., ¡SAP ¡HANA, ¡Hyrise…) ¡separate ¡tables ¡ into ¡ main ¡and ¡delta ¡par%%on ¡ □ Aggregates ¡caching : ¡reuse ¡parCal ¡query ¡result ¡on ¡the ¡main ¡parCCon ¡ and ¡combine ¡it ¡with ¡on-­‑the-­‑fly ¡delta ¡aggregaCon ¡ [Mueller ¡EDBT ¡2015] ¡ Aggregation Insert/Delete Delete (union) cached on-the-fly Merge Process Main Delta (asynchronously) ¡

  10. Performance Analysis Single Query Performance - 300M Main Storage, 5% Delta Storage Row Store 100 Column Store Aggregate Cache Query Execution Time in % 10 1 All Categories Category 1 Category 2 Query Type

  11. Prototype Application

  12. Conclusions and Future Work □ Approach ¡for ¡value ¡driver ¡modeling ¡and ¡what-­‑if ¡simulaCon ¡ § Flexible ¡model ¡creaCon ¡and ¡data ¡binding ¡ § Use ¡transacConal ¡data ¡for ¡highest ¡query ¡flexibility ¡ § Leveraging ¡column ¡in-­‑memory ¡database ¡with ¡aggregates ¡caching ¡for ¡ interacCve ¡response ¡Cmes ¡ □ Future ¡work ¡ § Formalize ¡calculaCon ¡model ¡and ¡data ¡binding ¡ § OpCmizaCon ¡database ¡queries ¡on ¡node ¡level ¡ § Evaluate ¡graph ¡data ¡bases ¡for ¡complex ¡models ¡

  13. ¡ ¡ ¡ Thanks ¡ ¡ ¡ ¡ ¡ Stephan ¡Müller ¡ stephan.mueller@hpi.de ¡ h8p://epic.hpi.de ¡ 13 ¡

Recommend


More recommend