Thursday 26 October 2017

Glidande Medelvärde In Tm1


TM1 Developer Jobs. TM1 Developer Salary Trend. Detta diagram ger 3 månaders glidande medelvärde för löner citerat i permanenta IT-jobb som citerar TM1 Developer. TM1 Developer Top 8 arbetsplatser. Tabellen nedan tittar på efterfrågan och ger en guide till medianen Löner citerad i IT-jobb citerar TM1 Developer i Storbritannien under de 3 månaderna till 14 mars 2017 Kolumnen Rank Change ger en indikation på förändring av efterfrågan inom varje plats baserat på samma 3 månadersperiod förra året. Rank Förändring Samma Period Senast Year. Matching Permanent IT Jobb Ads. Median Salary Senaste 3 Months. TM1 Developer Jobs. TM1 Developer Salary Trend. Detta diagram ger 3 månaders glidande medelvärde för löner citeras i permanenta IT-jobb som citerar TM1 Developer. TM1 Developer Top 8 arbetsplatser. Tabellen nedan tittar på efterfrågan och ger en guide till medianlönen citerad i IT-jobb som citerar TM1 Developer i Storbritannien under de tre månaderna till den 14 mars 2017 Kolumnen Rank Change ger en indikation på chan Ge efterfrågan inom varje plats baserat på samma 3 månadersperiod förra året. Rankförändring på samma period förra året. Matching Permanent IT-jobb Ads. Median Lön senaste 3 månader. IBM Cognos TM1 FEEDERS. I tittar på sammanfattande nivåer för beräknade fält någon Värdet icke-noll kommer att indikera en övermatning. Bild 11 visar en vy av IBM Cognos TM1-kuben Övermatningar där AB för P3 överfylls när det rullar upp till Q1-10 trots att det är noll i källkuben P3 för Jan - 10 har identifierats med 1, vilket indikerar att cellen har överskridits. Fig 11 visar övermatningen av P3 för jan-10. Förklaringen till övermatningen är uppbyggnaden av FEEDER. Systemet använder värdet av A för att bestämma om det ska mata AB Det ignorerar värdet på B Som ett resultat kommer systemet mata AB när A 0 OCH B 0, vilket resulterar i en noll A B. As kommer att visas senare i ett annat exempel, detta är Normalt sätt att mata en IBM Cognos TM1-kub genom att använda multiplikationsfaktorer Det kommer att leda till övermatning, bu T normalt inte i en sådan utsträckning, där det påverkar prestanda hårt Om inte överföringsmedel används, kan övermatning aldrig någonsin elimineras helt från en kub där multiplikation, uppdelning, exponentiering eller annan verksamhet äger rum, men det kan mildras genom att mata Variabel som sannolikt är noll. Den normala lösningen för övermatning är att använda Villkorliga FEEDERS Villkorliga FEEDERS-inställningsförhållanden på FEEDERS Detta exempel kan också användas för att illustrera en annan FEEDER-princip. Om du ändrar A till noll visas fortfarande A som övermatad i Övermatnings kuban Detta beror på att när en cell matas matas den alltid tills TM1-servern återvinns eller TM1 TurboIntegrator-funktionen CubeProcessFeeders exekveras. Metod 6 Använd Prestandemonitoren. Den här metoden visar inte specifikt vilka FEEDERS är övermatade, men det Kommer att ge en uppfattning om var du ska börja titta. Ofta presenteras TM1 Developers med en färdig eller delvis färdig modell som körs långsamt och är Använder mycket minne. Starta prestandaskärmen i TM1 Architect genom att högerklicka på TM1 Server-namnet och välj Start Performance Monitor från menyn som visas i Figur 12 Bekräfta att Display Control Objects som hittades under menyn Visa har blivit aktiverad. Konfiguration 12 Kontextmenyn visas efter att ha högerklickat på en TM1 Server-förekomst. Bekräfta att visningsstyrningsobjekt som hittades under menyn Visa har blivit aktiverade. Öppna StatsByCube-systemkuben i IBM Cognos TM1 Cube Viewer och märk att den innehåller Följande information om FEEDERS som visas i Figur 13 Feeders-raden visar antalet matade celler och minne som används av FEEDERS under kolumnerna med titeln Antal Fed-celler och minne som används för matare. Sök efter kuber med särskilt stora värden under dessa kolumner. Använd en övermatar kuben som beskrivits tidigare i metod 5 för att bestämma huruvida några beräkningar övermatas. Figur 13 FEEDER-information från TM1 Control Obje Ct StatsByCube. Method 7 Undersök. Som det var fallet i föregående metod, kommer denna metod inte direkt att lista vilka FEEDERS är ineffektiva men det kommer att ge ett bra ställe att börja titta. I filen loggar systemet lastningen av var och en av Kuberna inklusive utvärdering av FEEDERS för varje kub Filen är som standard i TM1 Data Directory för den specifika TM1 Server-förekomsten du arbetar med. Platserna för TM1 Data Kataloger är användardefinierade Använda provet PlanSamp TM1 Server som levereras med standard IBM Cognos TM1-installationspaket, skulle filen vara placerad som standard i följande C-program. Följande exempel visar valda linjer från filen för kubnamnet BW COST CALCULATION. Denna information kan användas för att bestämma den tid det tar att utvärdera FEEDERS för varje kub Om det tar lång tid att utvärdera FEEDERS för en viss kub så kan det vara en indikation på att FEEDERS som finns i kuben är ineffektiv Nt. Defining FEEDERS. Detta avsnitt beskriver de flesta olika typer av beräkningar och visar hur man konstruerar den medföljande FEEDER Som en allmän regel, när du väljer ett element för att mata en beräkning, välj elementet att när noll beräknas s resultat är också noll . Det är viktigt att notera att det sätt som en FEEDER definieras beror på beräkningstypen. I det här avsnittet beskrivs en FEEDER-strategi för var och en av följande beräkningstyper. Om beräkningen är en kombination av ovanstående är en kombination av de relevanta FEEDER-strategierna kommer att behövas för varje komponent i beräkningen. Som med regler finns det två sätt att definiera FEEDER 1 genom att bifoga medlemnamnet i kvadrat parentes och 2 med DB-funktionen. Det finns exempel på både i flera av de Följande underavsnitt. Multiplikation är den enklaste beräkningen att mata I det ovanstående exemplet använder vi A för att mata beräkningen Vi kunde också ha valt B Vi kunde ha valt en som e antingen en noll A eller en noll B kommer att tvinga beräkningen att vara noll. För att ytterligare optimera FEEDER bör man välja det element som sannolikt kommer att vara noll. För att ytterligare klargöra detta koncept ska vi använda en typisk inkomstberäkning. I det här exemplet skulle vi välja att mata in enheter eftersom enheter sannolikt kommer att vara noll. Till exempel kommer inte alla kunder att köpa alla produkter, så många kombinationer kommer att vara nollpris kommer sannolikt att vara noll och huvudsakligen fixat för Alla kombinationer av produkt och kund. Du kan också definiera FEEDER med DB-format. Det brukar inte vara nödvändigt att använda DB-formatet om du inte var. Definiera kub-till-kub-regler. Definiera en villkorlig FEEDER. Manipulating the FEEDERS så att FEEDER-elementen matchar målelement. DB-metoden ger dig större flexibilitet eftersom du kan bädda in villkorliga uttalanden och IBM Cognos TM1-regelfunktioner Vänligen se i efterföljande avsnitt för ytterligare detaljer och exempel. De samma principerna diskuterar D i Multiplikations sektionen gäller för Division Again, valet av A eller B spelar ingen roll om du väljer vilken artikel som ska matas. Om antingen objektet är noll så kommer beräkningsresultatet att vara noll eller odefinierat. Här måste vi mata både eftersom en noll A kommer inte nödvändigtvis att tvinga beräkningen till att vara noll. Som med addition måste vi mata både eftersom en noll A inte nödvändigtvis tvingar beräkningen att vara noll. Konditionsregler. För att illustrera detta har vi valt ett exempel som brukar användas I budgetering eller prognoser i exempel I exemplet nedan Figur 14 utför vi en beräkning för endast de månader som flaggas som prognos månader, dvs från maj-10 och framåt, de prognos månaderna har en grå bakgrund. Figur 14 Visar resultaten av att använda en Villkorlig FEEDER för prognosperioden från och med maj -10. För de månader som flaggas som faktiska i det här fallet jan-10 till apr-10, vill vi bara ladda upp eller ange resultatet av beräkningen, märka att själva Prognos månad rad EF För prognos månader och månader jan-10 till apr-10 har en vit bakgrund i sina celler vilket innebär att dessa celler kan acceptera manuellt inmatade värden och är inte resultatet av en beräkning. Orsaken är att för de aktuella, numret är statiskt och vi vill inte att systemet ska beräkna det annorlunda än det sätt som det lagras i systemet med posten. I det här exemplet använder vi ett attribut på tidsdimensionen för att ange aktuella eller prognosmånader. Figur 15 är en Vy av attributredigeraren där ett nytt attribut som heter Faktisk flagga har lagts till och några specifika månader jan-10 till april-10 har betecknats med ett A för att visa vilka månader som innehåller aktuella effekter. Figur 15 Tidsdimensionattributet benämnd Faktisk flagga Text med A i månaderna betecknas som faktiska data. Regeln definieras som följer. FEEDER är som följer. Cube-to-Cube Rules. A enkelt exempel används nedan för att illustrera kub-till-kub regel FEEDERS som det är mer Komplex och introducerar Es fler utmaningar Tänk på käll - och målbitar definierade för källkuben FeederSource FeederSource-kuben har två dimensioner FeederSource med ett enda objekt med namnet Källa och värde med ett enda objekt med namnet Value och ett enda datavärde på 10 som visas i Figur 16.Figur 16 Visar exemplet FEEDER-källkuben med namnet FeederSource. I Figur 17 nedan ser vi en bild av en IBM Cognos TM1-kub med namnet FeederTarget som visar värden som matas från källkuben med namnet FeederSource. FeederTarget-kuben har två dimensioner FeederTarget med ett enda objekt med namnet Mål och Tid med N nivå poster för varje månad och C nivå poster för kvartalsvisa konsolideringar Q1-10, Q2-10 etc och N nivå objekt har alla befolts med värdet från FeederSource kuben på 10.Figure 17 En vy av ett IBM Cognos TM1 målkub inklusive värden laddade med en FEEDER. Anledningen till att kub-till-kub FEEDERS är mer komplex är att du definierar regeln i målkuben och FEEDER i källkuben I N effekt källkuben sänder FEEDERS till målkuben och regeln i målkuben tar emot dem Situationen är komplicerad av det faktum att dimensionskonstruktionerna i käll - och målkubarna kan vara olika Följande exempel går igenom dig processen steg för steg. Steg 1 Definiera regeln i målkuben. En viktig punkt här, som inte är fullständigt markerad i exemplet, är att DB-funktionen kommer att ha en parametrarstruktur som gäller den dimensionella strukturen hos källkuben Den första parametern kommer att vara kubens namn, den andra den första dimensionen i källkuben, den tredje, den andra dimensionen i källkuben, etc. De värden du tillhandahåller i parametern ska dock vara i förhållande till målkuben eller Ett svårkodat värde. Eftersom det här är en så viktig punkt ska vi illustrera det med ett underexempel. Antag att du har två kuber, Cube S och Cube T. Båda har identiska kubstrukturer med identiska dimensioner, men dimensionerna i varje kub är en kopia av den andra. Dimensionerna i Cube S är Produkt S och Tid S Dimensionerna i Cube T är Product T och Time T De två produktdimensionerna är identiska och de två tidsdimensionerna är identiska. Regeln skulle vara. Notera att dimensionerna i målkuben är ersatta i parametrarna för DB-funktionen som representerar källkubens struktur. Detta är en viktig punkt, TM1-utvecklare har spenderat många en timme stirrar på en regel som försöker räkna ut varför det skulle inte spara. Steg 2 Definiera FEEDER i källkuben. 2010 Det är nödvändigt att hårdkoda ett värde här, eftersom det inte finns någon tidsdimension i källkuben. Genom att koda ett sammanfattningselement från tidsdimensionen tvingar det systemet att mata alla N-nivåposter 2010. Observera att om Källkuben innehöll tidsdimensionen, då FEEDER skulle konstrueras enligt följande. Mål Det är nödvändigt att hårdkoda åtgärden eftersom det finns ett annat måttelementnamn i källan och målet. Vi måste hårdkoda det till ett element i målmåttet. Här är FEEDER för vårt underexempel. FEEDER här definieras som omvända av regeln Observera att dimensionerna i källkuben ersätts med parametrarna för DB-funktionen som representerar målkubens struktur. Detta kan orsaka vissa problem och följande lista sammanställdes för att markera bästa praxis vid utformning av kub-till-kub FEEDERS. Om samma dimension är i både mål - och källkubarna, använd helt enkelt DimensionName i den parametern. Om du har olika dimensioner, det är kopior av varandra, måste du använda DimensionNameInSource för den parametern . Om du har en dimension i målet som inte existerar i källan måste du hårdkoda ett sammanfattande objekt i måldimensionen I det ovanstående exemplet är vi hårdkodade 2010 Det betyder att systern Em kommer automatiskt att mata alla barn i 2010 Denna funktion ska användas med försiktighet, eftersom det kan leda till övermatningsscenarier och långa serverstartstider. Om du har en dimension i källan som inte existerar i målet, kommer du att Behöver hårdkoda ett objekt i källdimensionen. Om du vill rikta in ett visst element, är det bara svårt att koda det i parametern. Exempelvis kommer intäkterna att inrikta sig på inkomståtgärden. Du kan minimera behovet av att göra detta genom att använda Samma måttnamn i källan och målet På så sätt kan du bara använda TargetMeasureDimName. FORDRAR som du skickar från källkuben måste matcha elementen i målkuben. Detta gäller alla dimensioner För att illustrera denna punkt, överväga följande exempel Vid matning En veckokub till en månads kub, veckorna fanns inte i den månatliga kuben, så ingenting blev matat. Du kan komma runt detta genom att byta FEEDER så att föräldrarna i veckan passerar i FEEDER Eftersom föräldrarna till veckor är mo nths och månader är närvarande i målkuben kommer viljan FEEDERS att fungera som förväntat. Cube-to-Cube FEEDER-undvikande. Det finns tillfällen där du kan undvika att definiera cube-to-cube FEEDER om målmåttet används i en efterföljande Beräkning I Figur 18 är Target resultatet av en kub-till-kubberäkning, men används också vidare i beräkningen Mål C Värdet för C och Jan-10 är 20 Det beräknade värdet för Mål C för jan-10 är 200 Target har ett värde av 10 och C har ett värde av 20 IBM Cognos TM1-kuben laddar värden baserat på följande FEEDER-formel. Du kan ta bort behovet av kub-till-kub FEEDER genom att helt enkelt mata C enligt följande. Figur 18 Visar målkub omforma behovet av en källkub FEEDER-definition genom att helt enkelt använda källkubens värden i en beräkning och mata den beräkningen inom målkuben. Konditionsmatare. Du kan använda villkorade matare för att minska eller eliminera övermatning. Vanligtvis skulle du använda en villkorlig FEEDER att följa med Någon villkorlig regel För att illustrera punkten, överväga det övermatningsexempel som vi diskuterade tidigare. Som vi diskuterade förutse systemet värdet på B när det bygger FEEDER Du kan konstruera villkorliga FEEDERS enligt följande för att lösa problemet . Notera att du måste använda en DB-funktion för att kunna kondensera, i det här fallet ställer du ett IF-uttalande i parametern för DB-funktionen som representerar kubnamnet. Returnera kubnamnet för celler som du vill mata och null För de som du inte t. När vi tittar på kuben ser vi nu att vi inte överskrider denna beräkning. Figur 19 är en vy av OverFeeds-kuben som visar resultaten från jan-10 och Q1-10 med övermatningen Korrigeras som illustreras av värdena för Q1-10 utan att några värden är lika med 2.Figure 19 Visar inga värden lika med 2 i Q1-10-konsolideringsfältet, vilket innebär att det inte finns någon övermatning av IBM Cognos TM1-kuben. Hur ofta gör FEEDERS Brand. Enligt de fem viktiga hänsynen Rationer specifika för FEEDERS, FEEDERS från numeriska celler bränder endast en gång och FEEDERS från strängceller eldar när deras värde förändras Detta är viktigt när en parameter används för att bestämma placeringen av det beräknade resultatet För att illustrera denna punkt visar Figur 20 en IBM Cognos TM1-kub Med värdet 100 beräknat vid skärningspunkten Resultat och Feb-10 highlighted. Figure 20 En IBM Cognos TM1-kub markerar värdet 100 vid korsningen av Resultat och Feb-10. Regeln definieras som. Som du kan se, vi använder värdet för att mata resultatet i en regel där parametern Månad används för att fylla den rätta månaden i tidsdimensionen. Om vi ​​ändrar månadsparametern genom att ändra fältet vid månadens jan-10 korsning från 10 februari till mars - 10, då är cellen inte längre matad Detta illustreras i Figur 21 där Q1-10 är noll istället för 100 Detta beror på att FEEDERS för numeriska celler bara brinner en gång. Cellresultatet för feb-10 matades inledningsvis, så feb-10 är den enda cellen Som kan matas Lösningen på detta är att ändra FEEDER till följande. Figur 21 Visar att matning av kuben med ett numeriskt värde kan medföra att ändringar inte reflekteras korrekt. Notera att vi nu använder Månad istället för Värde för att mata in Beräkning och eftersom Månad är en sträng kommer det att leda till att FEEDER brinner varje gång den ändras. Följande bild av en IBM Cognos TM1-kub visar de korrekta resultaten för Q1-10 av 100. Figur 22 visar att matar kuben med en sträng värde kommer att visa uppdaterade resultat så snart ett datafält är ändrat. Persistenta FEEDERS. Persistent FEEDERS introducerades i IBM Cognos TM1 i version 9 5 1 Standardvärdet för denna parameter är av men du kan aktivera det genom att använda PersistingOfFEEDERS-parametern i fil För att aktivera långlivade FEEDERs och förbättra reload-tiden för kuber med FEEDERS vid start av TM1 Server, ställ parametern PersistingOfFEEDERS till ett värde av T true för att lagra de beräknade FEEDERS till en FEEDERS-fil. När persistent FEEDERs är aktiverade och TM1 Server möter en bestående FEEDER-fil. Den laddar upp de sparade FEEDERS som minskar den tid som normalt tas för att räkna om dem FEEDERS FEEDERS sparas när data sparas eller regler redigeras. Du sparar inte FEEDERS. For installationer explicit. med många komplexa FEEDER-beräkningar, fortsatte FEEDERS och sedan ladda om dem vid serverstart, förbättras prestanda. För enkla FEEDERS kan tiden för att läsa FEEDERS från disken överstiga tiden för att beräkna FEEDERS igen men de flesta installationer kommer att gynna. Det är viktigt att vara medveten om att användandet av persistenta FEEDERS kommer att öka din systemstorlek endast på disken. Minnestorleken påverkas inte av användningen av persistenta FEEDERS. Du måste vara försiktig när du utvecklar applikationer med hjälp av beständiga FEEDERS Som tidigare nämnts, är den vanliga metoden för att utvärdera FEEDERS Är att starta om TM1-servern Om du har kvarhållna FEEDERS aktiverade måste du först köra TM1 TurboIntegrator-processen innehållande följande funktion i prologen. Detta kommer att tvinga FEEDER-utvärdering vid start av TM1 Server istället för att bara läsa av de ihållande FEEDER-cacheplex FEEDER-exemplen. Komplex FEEDER-sektionen beskriver några mer komplexa exempel för verkliga världssituationer. Linjeposter Detalj till sammandrag Cube. Ett vanligt modelleringsproblem, särskilt med budgetering och planeringsapplikationer, är att länka en detaljelementkub till en sammanfattande kub där dimensioner plockar en specifik lista över objekt som produkter i källkuben och verkliga dimensioner i målet kub Tänk på följande ingångskub som heter LineItemSource, som innehåller Linjepost, Beskrivning, Tid, Produkt och Mängd som visas i Figur 23.Figuration 23 Visar ingångskuben LineItemSource. Figur 24 är en vy av sammanfattningskuben LineItemTarget som konsoliderar Värden där plocklistorna blir dimensioner, dvs tiden är nu kolumner och produkten är nu rader Den här kuben visar detaljerna och de sammanfattande värdena på Totalproduktnivå och Time Quarterly-nivå. Bild 24 LineItemTarget-kubvyn med dimensioner som skapats från plocklistorna i LineItemSource-kuban. Eftersom det inte går att modellera denna typ av kubstruktur för direkt överföring av data från LineItemSource till LineItemTarget , är det nödvändigt att gå igenom en mellanliggande kub som heter LineItemCalc Följande vy är mellanskuben som innehåller alla dimensionerna för båda kuberna Artikel, Produkt och Tid. Figur 25 Mellansuben LineItemCalc som innehåller alla dimensioner från både LineItemSource och LineItemTarget . De nästan korrekta reglerna och matarna skulle vara enligt följande. Nu ska vi gå igenom reglerna och FEEDERS en efter en och förklara. Först, låt oss börja med regeln som omvandlar plocklistorna till dimensionerna i LineItemCalc-kuben. Komponenterna Av regeln är. Kolla för att se om elementets namn på produktdimensionen i LineItemCalc-kuben matchar produkten som är inmatad i LineItemS ource-kub Observera användningen av eftersom de är båda strängarna. Italiserad kontroll för att se om elementets namn för tidsdimensionen i LineItemCalc-kuben matchar den månad som anges i LineItemSource-kuben Notera användningen av eftersom de båda strängarna. Bold Kursiviserad Retur värdet av beloppet från LineItemSource Cube om TRUE. Do ingenting om FALSE. Now, låt oss titta på den associerade FEEDER i LineItemSource-kuben. När man tittar på en initial designimplementering definierades FEEDER enligt följande. När man hämtar ett tidigare tips i Cube-to-Cube Rules-sektionen, om det finns en dimension i målkuben som inte finns i källan, i det här exemplet Produkt och tid, kan du hårdkoda ett sammanfattande objekt i lämplig parameter, som visas i fetstil ovan. Även om detta kommer att fungera kanske det inte är optimalt för alla situationer eftersom datamängden kan påverka TM1 Server-starttiderna negativt. Det beror på att denna typ av FEEDER resulterar i allvarlig övermatning, eftersom systemet måste mata varje enskild produkt och varje sjunga le månad för varje enskild rad. Överväg att byta FEEDER så att den bara matar den produkt som valts för en viss rad. Till exempel, ersätt Totalprodukt med DB LineItemSource LineItem, Product och 2010 med DB LineItemSource LineItem, Time När du gör dessa ändringar, Systemstarten kommer att förbättras. Ett ytterligare problem med FEEDER i LineItemSource-kuben är att den matas endast en gång så att den inte fortsätter att fungera om vi ändrar antingen produkt - eller månadsdata. Lösningen är att mata strängarna, som visas i följande exempel. I detta exempel upprepas FEEDER för varje dimension för både produkt och tid. Detta säkerställer att siffrorna rinner korrekt när både produkt och tid ändras. Så de korrekta reglerna och FEEDERS är nedladdningsbara resurser.

No comments:

Post a Comment