SlideShare uma empresa Scribd logo
1 de 50
Пользовательские вычисления в кубах Analysis Services  Алексей Шуленин Microsoft
Введение ,[object Object],[object Object]
Стандартные меры ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Важное замечание ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Мера  DISTINCT COUNT ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Пример ,[object Object],[object Object],[object Object],http://msdn.microsoft.com/library/ 207046250121 0x30784346 Александр Гладченко 30.09.2002 19:30 0x30784333 0x30783430 0x30784346 0x30784345 0x30783346 0x30784346 0x30784333 0x30783432 0x30784431 0x30784333 0x30784333 IP_Binary URL IP_BigInt User_ID Time http://www.sql.ru 195209060199 Александр Гладченко 01.10.2002 22:00 http://www.hotsex.com 64239005092 Алексей Шуленин 01.10.2002 19:00 http://www.microsoft.com/sql 207046249027 Александр Гладченко 01.10.2002 17:00 http://www.hardcore.com 206126000001 Алексей Шуленин 01.10.2002 15:00 http://www.sqlmag.com 63088172065 Александр Гладченко 01.10.2002 11:00 http://www.microsoft.com/sql 207046249027 Александр Гладченко 01.10.2002 10:00 http://www.sql.ru 195209060199 Александр Гладченко 01.10.2002  0 9:00 http://www.xxx.com 66028153014 Алексей Шуленин 30.09.2002 19:45 http://www.sex.com 209081007023 Алексей Шуленин 30.09.2002 19:20 http://www.sql.ru 195209060199 Александр Гладченко 30.09.2002 19:10 http://www.sql.ru 195209060199 Александр Гладченко 30.09.2002 19:00
Пример ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],4 8   2002 Total 3 5 4-й квартал   2 3 3-й квартал 2002 IP_Distinct IP_Count Квартал Год   Data     Александр Гладченко Чел
Как посмотреть коллекцию агрегатов ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Точнее – это множества агрегатов ,[object Object],[object Object],[object Object],[object Object],[object Object]
Структура таблицы агрегатов Имя раздела Имя куба Мера, агрегированная в соотв. с ее ф-цией GROUP BY  по членам выбр. уровня
Вопрос на понимание ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Ответ ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Последовательность расчета ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],1112 1113 1114 1115 1121 1122 1123 1124 1125 1131 1132 1133 1134 1141 1142 1151 1211 1212 1213 1214 1221 1222 1231 1241 2111 2112 2113 2114 2121 2122
Задание принудительной агрегации в измерении ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Задание принудительной агрегации в уровне ,[object Object],[object Object],[object Object],[object Object],[object Object]
Последовательность выполнения многомерного запроса ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Calculated Members ,[object Object]
Calculated Members ,[object Object],[object Object],[object Object],[object Object],[object Object]
Пример ,[object Object],Обратите внимание, что уровень «день» не показан -  Calc Members  не могут создаваться ниже листьев Определяем вычисляемый член под июлем 1996 г.
Пример ,[object Object]
Отличие  calc member  от  member property ,[object Object],[object Object],[object Object],[object Object],case  when (DatePart(year, &quot;dbo&quot;.&quot;Time_Dim&quot;.&quot;TheDate&quot;) % 4 = 0  and DatePart(year, &quot;dbo&quot;.&quot;Time_Dim&quot;.&quot;TheDate&quot;) % 100 <> 0)  or DatePart(year, &quot;dbo&quot;.&quot;Time_Dim&quot;.&quot;TheDate&quot;) % 1000 = 0 then 366 else 365 end
Создание  calc member ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Создание  calc member ... DSO.CubeClass olap_cube = (DSO.CubeClass) olap_db.Cubes.Item(&quot;Продажи&quot;); string CalcMemberName = &quot;Новый член&quot;; try { DSO.CubeCommandClass olap_cmd = (DSO.CubeCommandClass) olap_cube.Commands.Item(CalcMemberName); if (olap_cmd.CommandType == DSO.CommandTypes.cmdCreateMember) olap_cube.Commands.Remove(CalcMemberName); } catch (NullReferenceException e) {} finally { DSO.CubeCommandClass olap_cmd = (DSO.CubeCommandClass) olap_cube.Commands.AddNew(CalcMemberName, DSO.SubClassTypes.sbclsRegular); olap_cmd.CommandType = DSO.CommandTypes.cmdCreateMember; olap_cmd.Statement = &quot;CREATE MEMBER CURRENTCUBE.[Время].[Год].&[1996].&[3].&[7].[&quot; + CalcMemberName + &quot;] AS '[Время].CurrentMember.Parent.Name'&quot;; olap_cube.Update(); } olap_server.CloseServer();
Multicolumn measures ,[object Object],[object Object],[object Object],[object Object]
Дополнительные свойства  Calculated Members  по сравнению с мерами ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Более сложный пример ,[object Object],[object Object],with member Measures.[Рост продаж] as '([Measures].[Store Sales], Time.CurrentMember) - ([Measures].[Store Sales], Time.PrevMember)',  FORE_COLOR = 'iif (Measures.[Рост продаж] < 0, rgb(255, 0, 0), rgb(0, 255, 0))',  BACK_COLOR = 'iif (Count(Filter(Descendants(Store.CurrentMember, [Store City], SELF_AND_BEFORE), Measures.[Рост продаж] < 0)) > 0, rgb(255, 255, 0), rgb(255, 255, 255))' ,  FORMAT_STRING = '#,#.00' select  Time.Members on rows,  Descendants(Store.USA, [Store City], SELF_AND_BEFORE) on columns from Sales where Measures.[Рост продаж]  CELL PROPERTIES FORE_COLOR,  BACK_COLOR , FORMATTED_VALUE
Custom Rollup Formula ,[object Object],Год - стандартная агрегация (сумма) Квартал – не сумма месяцев, а  остаток за последний месяц
Custom Rollup Formula ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Unary Operators ,[object Object],[object Object]
Unary Operators ,[object Object],[object Object],[object Object],[object Object],[object Object]
Custom Member ,[object Object],[object Object],[object Object]
Calculated Cells ,[object Object],[object Object],[object Object]
Calculated Cells ,[object Object],[object Object],[object Object]
Пример ,[object Object],[object Object],[object Object],[object Object],with cell calculation Calc1  for '({Measures.[Unit Sales]}, DESCENDANTS(Store.[Store State].[WA], Store.[Store City]))' as 'Time.CurrentMember.FirstChild', condition = 'Time.CurrentMember.Level.Name = &quot;Year&quot; or Time.CurrentMember.Level.Name = &quot;Quarter&quot; and (Time.CurrentMember.Name = &quot;Q1&quot; or Time.CurrentMember.Name = &quot;Q2&quot;)' select Time.Members on rows, CrossJoin(Store.[USA].Children, {Measures.[Unit Sales], Measures.[Store Sales]}) on columns from Sales
Пример ,[object Object],[object Object],[object Object]
Взаимодействие  пользовательских вычислений ,[object Object],[object Object],[object Object],[object Object],[object Object]
Понятие  SOLVE ORDER ,[object Object],[object Object],with member Measures.[Прибыль] as '(Time.CurrentMember, [Measures].[Store Sales]) - (Time.CurrentMember, [Measures].[Store Cost])', format_string = '#,#.00' member Time.[Прирост в 4 кв.] as '(Time.[Q4], Measures.CurrentMember) / (Time.[Q3], Measures.CurrentMember)', format_string='#,#.000' select {Measures.[Store Cost], Measures.[Store Sales], Measures.[Прибыль]} on columns, {Time.[Q3], Time.[Q4], Time.[Прирост в 4 кв.]} on rows from Sales  Здесь Доходы - Издержки Здесь 4-й кв-л / 3-й кв-л А здесь-то что: - столбцов или / строк ??? 1.300 1.303 Прирост 34219.51 56965.64 22746.13 Q4 26362.85 43825.97 17463.12 Q3 Прибыль Sales Cost
Понятие  SOLVE ORDER ,[object Object],[object Object],with member Measures.[Прибыль] as '[Measures].[Store Sales] - [Measures].[Store Cost]', format_string = '#,#.00',  solve_order = 1 member Time.[Прирост в 4 кв.] as 'Time.[Q4] / Time.[Q3]', format_string='#,#.000' , solve_order = 2 select {Measures.[Store Cost], Measures.[Store Sales], Measures.[Прибыль]} on columns, {Time.[Q3], Time.[Q4], Time.[Прирост в 4 кв.]} on rows from Sales  with member Measures.[Прибыль] as '[Measures].[Store Sales] - [Measures].[Store Cost]', format_string = '#,#.00',  solve_order = 2 member Time.[Прирост в 4 кв.] as 'Time.[Q4] / Time.[Q3]', format_string='#,#.000' , solve_order = 1 select {Measures.[Store Cost], Measures.[Store Sales], Measures.[Прибыль]} on columns, {Time.[Q3], Time.[Q4], Time.[Прирост в 4 кв.]} on rows from Sales  1.298 1.300 1.303 Прирост 34219.51 56965.64 22746.13 Q4 26362.85 43825.97 17463.12 Q3 Прибыль Sales Cost .00 1.300 1.303 Прирост 34219.51 56965.64 22746.13 Q4 26362.85 43825.97 17463.12 Q3 Прибыль Sales Cost
Понятие  SOLVE ORDER ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Однотипные вычисления по разным осям ,[object Object],[object Object],[object Object],[object Object],[object Object]
Понятие  CALCULATION PASS ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Понятие  CALCULATION PASS ,[object Object],[object Object],[object Object],[object Object],[object Object]
Номер прохода ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Пример ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],152 671.62 Q4 140 271.89 Q3 132 666.27 Q2 139 628.35 Q1 565 238.13 1997 All Customers
Пример ,[object Object],[object Object],[object Object],[object Object],[object Object],* 2 280 543.78 Q4 305 343.24 Q3 132 666.27 Q2 139 628.35 Q1 858 181.64 1997 All Customers 152 671.62 Q4 140 271.89 Q3 132 666.27 Q2 139 628.35 Q1 565 238.13 1997 All Customers
Оценка и вычисление ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],* 2 ,[object Object],* 2 280 543.78 Q4 305 343.24 Q3 132 666.27 Q2 139 628.35 Q1 858 181.64 1997 All Customers 152 671.62 Q4 140 271.89 Q3 132 666.27 Q2 139 628.35 Q1 565 238.13 1997 All Customers 610 686.48 Q4 305 343.24 Q3 132 666.27 Q2 139 628.35 Q1 1 188 324.34 1997 All Customers
Пример ,[object Object],[object Object],[object Object],2 Q4 2 Q3 1 Q2 1 Q1 6 1997 Seattle
Что происходит ,[object Object],[object Object],Шаг 4 Шаг 5 Шаг 3 Шаг 0 1 Q1 Seattle 2 * Q1 Seattle 2 * Q1 Seattle 2 Q1 Seattle 4 Q1 Seattle 8 Q1 Seattle 2 * Q1 Seattle
Вопросы?
 

Mais conteúdo relacionado

Mais procurados

Web весна 2013 лекция 9
Web весна 2013 лекция 9Web весна 2013 лекция 9
Web весна 2013 лекция 9Technopark
 
"Истории из жизни опытного iOS разработчика"— Игорь Чертенков
"Истории из жизни опытного iOS разработчика"— Игорь Чертенков"Истории из жизни опытного iOS разработчика"— Игорь Чертенков
"Истории из жизни опытного iOS разработчика"— Игорь ЧертенковImprove Group
 
Solit 2014, Реактивный Javascript. Победа над асинхронностью и вложенностью, ...
Solit 2014, Реактивный Javascript. Победа над асинхронностью и вложенностью, ...Solit 2014, Реактивный Javascript. Победа над асинхронностью и вложенностью, ...
Solit 2014, Реактивный Javascript. Победа над асинхронностью и вложенностью, ...solit
 
Cache2012 administrationbasics
Cache2012 administrationbasicsCache2012 administrationbasics
Cache2012 administrationbasicsDenis Pavlov
 
Парсим CSS: performance tips & tricks
Парсим CSS: performance tips & tricksПарсим CSS: performance tips & tricks
Парсим CSS: performance tips & tricksRoman Dvornov
 
Для чего мы делали свой акторный фреймворк и что из этого вышло?
Для чего мы делали свой акторный фреймворк и что из этого вышло?Для чего мы делали свой акторный фреймворк и что из этого вышло?
Для чего мы делали свой акторный фреймворк и что из этого вышло?Yauheni Akhotnikau
 
Memory managment in i os (1)
Memory managment in i os (1)Memory managment in i os (1)
Memory managment in i os (1)it-park
 
2014-10-04 02 Владислав Безверхий. Mocha - покрой frontend по полной
2014-10-04 02 Владислав Безверхий. Mocha - покрой frontend по полной2014-10-04 02 Владислав Безверхий. Mocha - покрой frontend по полной
2014-10-04 02 Владислав Безверхий. Mocha - покрой frontend по полнойОмские ИТ-субботники
 
React со скоростью света: не совсем обычный серверный рендеринг
React со скоростью света: не совсем обычный серверный рендерингReact со скоростью света: не совсем обычный серверный рендеринг
React со скоростью света: не совсем обычный серверный рендерингTimophy Chaptykov
 
Ангелы и демоны многопоточного программирования / Алексей Федоров (Одноклассн...
Ангелы и демоны многопоточного программирования / Алексей Федоров (Одноклассн...Ангелы и демоны многопоточного программирования / Алексей Федоров (Одноклассн...
Ангелы и демоны многопоточного программирования / Алексей Федоров (Одноклассн...Ontico
 
2013 09 19 кеширование на клиенте и сервере
2013 09 19 кеширование на клиенте и сервере2013 09 19 кеширование на клиенте и сервере
2013 09 19 кеширование на клиенте и сервереYandex
 
Lift, play, akka, rails part1
Lift, play, akka, rails part1Lift, play, akka, rails part1
Lift, play, akka, rails part1Eduard Antsupov
 
Пояснения к статье про Copy-Paste
Пояснения к статье про Copy-PasteПояснения к статье про Copy-Paste
Пояснения к статье про Copy-PasteTatyanazaxarova
 
Статический анализ кода
Статический анализ кода Статический анализ кода
Статический анализ кода Pavel Tsukanov
 

Mais procurados (20)

Web весна 2013 лекция 9
Web весна 2013 лекция 9Web весна 2013 лекция 9
Web весна 2013 лекция 9
 
Асинхронный JavaScript
Асинхронный JavaScriptАсинхронный JavaScript
Асинхронный JavaScript
 
"Истории из жизни опытного iOS разработчика"— Игорь Чертенков
"Истории из жизни опытного iOS разработчика"— Игорь Чертенков"Истории из жизни опытного iOS разработчика"— Игорь Чертенков
"Истории из жизни опытного iOS разработчика"— Игорь Чертенков
 
Solit 2014, Реактивный Javascript. Победа над асинхронностью и вложенностью, ...
Solit 2014, Реактивный Javascript. Победа над асинхронностью и вложенностью, ...Solit 2014, Реактивный Javascript. Победа над асинхронностью и вложенностью, ...
Solit 2014, Реактивный Javascript. Победа над асинхронностью и вложенностью, ...
 
Cache2012 administrationbasics
Cache2012 administrationbasicsCache2012 administrationbasics
Cache2012 administrationbasics
 
Парсим CSS: performance tips & tricks
Парсим CSS: performance tips & tricksПарсим CSS: performance tips & tricks
Парсим CSS: performance tips & tricks
 
Java 8 puzzlers
Java 8 puzzlersJava 8 puzzlers
Java 8 puzzlers
 
Для чего мы делали свой акторный фреймворк и что из этого вышло?
Для чего мы делали свой акторный фреймворк и что из этого вышло?Для чего мы делали свой акторный фреймворк и что из этого вышло?
Для чего мы делали свой акторный фреймворк и что из этого вышло?
 
Zagursky
ZagurskyZagursky
Zagursky
 
Memory managment in i os (1)
Memory managment in i os (1)Memory managment in i os (1)
Memory managment in i os (1)
 
2014-10-04 02 Владислав Безверхий. Mocha - покрой frontend по полной
2014-10-04 02 Владислав Безверхий. Mocha - покрой frontend по полной2014-10-04 02 Владислав Безверхий. Mocha - покрой frontend по полной
2014-10-04 02 Владислав Безверхий. Mocha - покрой frontend по полной
 
React со скоростью света: не совсем обычный серверный рендеринг
React со скоростью света: не совсем обычный серверный рендерингReact со скоростью света: не совсем обычный серверный рендеринг
React со скоростью света: не совсем обычный серверный рендеринг
 
Ангелы и демоны многопоточного программирования / Алексей Федоров (Одноклассн...
Ангелы и демоны многопоточного программирования / Алексей Федоров (Одноклассн...Ангелы и демоны многопоточного программирования / Алексей Федоров (Одноклассн...
Ангелы и демоны многопоточного программирования / Алексей Федоров (Одноклассн...
 
2013 09 19 кеширование на клиенте и сервере
2013 09 19 кеширование на клиенте и сервере2013 09 19 кеширование на клиенте и сервере
2013 09 19 кеширование на клиенте и сервере
 
JavaDay'14
JavaDay'14JavaDay'14
JavaDay'14
 
Lift, play, akka, rails part1
Lift, play, akka, rails part1Lift, play, akka, rails part1
Lift, play, akka, rails part1
 
Component Inspector
Component InspectorComponent Inspector
Component Inspector
 
9 free rtos
9 free rtos9 free rtos
9 free rtos
 
Пояснения к статье про Copy-Paste
Пояснения к статье про Copy-PasteПояснения к статье про Copy-Paste
Пояснения к статье про Copy-Paste
 
Статический анализ кода
Статический анализ кода Статический анализ кода
Статический анализ кода
 

Destaque

TMPA-2013 Senov: Applying OLAP and MapReduce Technologies for Performance Tes...
TMPA-2013 Senov: Applying OLAP and MapReduce Technologies for Performance Tes...TMPA-2013 Senov: Applying OLAP and MapReduce Technologies for Performance Tes...
TMPA-2013 Senov: Applying OLAP and MapReduce Technologies for Performance Tes...Iosif Itkin
 
Основы OLAP. Вебинар Workaround в Softengi
Основы OLAP. Вебинар Workaround в SoftengiОсновы OLAP. Вебинар Workaround в Softengi
Основы OLAP. Вебинар Workaround в SoftengiSoftengi
 
Olap и oltp технологии
Olap и oltp технологииOlap и oltp технологии
Olap и oltp технологииIlya Ternovoy
 
Business Intelligence and OLAP Practice
Business Intelligence and OLAP PracticeBusiness Intelligence and OLAP Practice
Business Intelligence and OLAP PracticeTatiana Ivanova
 
презентация Erp 2.0 (ЕРП), 1С, Первый БИТ
презентация Erp 2.0 (ЕРП), 1С, Первый БИТпрезентация Erp 2.0 (ЕРП), 1С, Первый БИТ
презентация Erp 2.0 (ЕРП), 1С, Первый БИТnsorokina
 
Choosing the Right Business Intelligence Tools for Your Data and Architectura...
Choosing the Right Business Intelligence Tools for Your Data and Architectura...Choosing the Right Business Intelligence Tools for Your Data and Architectura...
Choosing the Right Business Intelligence Tools for Your Data and Architectura...Victor Holman
 
Бизнес-аналитика – не роскошь, а средство для принятия решений:
Бизнес-аналитика – не роскошь, а средство для принятия решений:Бизнес-аналитика – не роскошь, а средство для принятия решений:
Бизнес-аналитика – не роскошь, а средство для принятия решений:TechExpert
 
Трансформация данных в Deductor Studio
Трансформация данных в Deductor StudioТрансформация данных в Deductor Studio
Трансформация данных в Deductor StudioGleb Zakhodiakin
 
DATA WAREHOUSING
DATA WAREHOUSINGDATA WAREHOUSING
DATA WAREHOUSINGKing Julian
 
Business intelligence systems
Business intelligence systemsBusiness intelligence systems
Business intelligence systemsUMaine
 
Business intelligence ppt
Business intelligence pptBusiness intelligence ppt
Business intelligence pptsujithkylm007
 

Destaque (20)

TMPA-2013 Senov: Applying OLAP and MapReduce Technologies for Performance Tes...
TMPA-2013 Senov: Applying OLAP and MapReduce Technologies for Performance Tes...TMPA-2013 Senov: Applying OLAP and MapReduce Technologies for Performance Tes...
TMPA-2013 Senov: Applying OLAP and MapReduce Technologies for Performance Tes...
 
Основы OLAP. Вебинар Workaround в Softengi
Основы OLAP. Вебинар Workaround в SoftengiОсновы OLAP. Вебинар Workaround в Softengi
Основы OLAP. Вебинар Workaround в Softengi
 
BI для ИТ-директоров
BI для ИТ-директоровBI для ИТ-директоров
BI для ИТ-директоров
 
Olap и oltp технологии
Olap и oltp технологииOlap и oltp технологии
Olap и oltp технологии
 
2016 ВКР Черемискина Н.А.
2016 ВКР Черемискина Н.А.2016 ВКР Черемискина Н.А.
2016 ВКР Черемискина Н.А.
 
Business Intelligence and OLAP Practice
Business Intelligence and OLAP PracticeBusiness Intelligence and OLAP Practice
Business Intelligence and OLAP Practice
 
презентация Erp 2.0 (ЕРП), 1С, Первый БИТ
презентация Erp 2.0 (ЕРП), 1С, Первый БИТпрезентация Erp 2.0 (ЕРП), 1С, Первый БИТ
презентация Erp 2.0 (ЕРП), 1С, Первый БИТ
 
11g Part
11g Part11g Part
11g Part
 
Choosing the Right Business Intelligence Tools for Your Data and Architectura...
Choosing the Right Business Intelligence Tools for Your Data and Architectura...Choosing the Right Business Intelligence Tools for Your Data and Architectura...
Choosing the Right Business Intelligence Tools for Your Data and Architectura...
 
Бизнес-аналитика – не роскошь, а средство для принятия решений:
Бизнес-аналитика – не роскошь, а средство для принятия решений:Бизнес-аналитика – не роскошь, а средство для принятия решений:
Бизнес-аналитика – не роскошь, а средство для принятия решений:
 
Управление данными (дополнительно)
Управление данными (дополнительно)Управление данными (дополнительно)
Управление данными (дополнительно)
 
Управление данными (реляционная модель)
Управление данными (реляционная модель)Управление данными (реляционная модель)
Управление данными (реляционная модель)
 
Управление данными (хранилища данных и OLAP)
Управление данными (хранилища данных и OLAP)Управление данными (хранилища данных и OLAP)
Управление данными (хранилища данных и OLAP)
 
Трансформация данных в Deductor Studio
Трансформация данных в Deductor StudioТрансформация данных в Deductor Studio
Трансформация данных в Deductor Studio
 
OLTP vs OLAP
OLTP vs OLAPOLTP vs OLAP
OLTP vs OLAP
 
BI Tools
BI Tools BI Tools
BI Tools
 
Oltp vs olap
Oltp vs olapOltp vs olap
Oltp vs olap
 
DATA WAREHOUSING
DATA WAREHOUSINGDATA WAREHOUSING
DATA WAREHOUSING
 
Business intelligence systems
Business intelligence systemsBusiness intelligence systems
Business intelligence systems
 
Business intelligence ppt
Business intelligence pptBusiness intelligence ppt
Business intelligence ppt
 

Semelhante a User Aggs In As

MySQL Optimization. Russian
MySQL Optimization. RussianMySQL Optimization. Russian
MySQL Optimization. RussianRawan Qurmet
 
10 задач администрирования Active directory, решаемых с помощью power shell
10 задач администрирования Active directory, решаемых с помощью power shell10 задач администрирования Active directory, решаемых с помощью power shell
10 задач администрирования Active directory, решаемых с помощью power shellAndrey Markin
 
Aleksei Milovidov "Let's optimize one aggregate function in ClickHouse"
Aleksei Milovidov "Let's optimize one aggregate function in ClickHouse"Aleksei Milovidov "Let's optimize one aggregate function in ClickHouse"
Aleksei Milovidov "Let's optimize one aggregate function in ClickHouse"Fwdays
 
2014.12.23 Александр Андреев, Parallels
2014.12.23 Александр Андреев, Parallels2014.12.23 Александр Андреев, Parallels
2014.12.23 Александр Андреев, ParallelsNikolay Samokhvalov
 
High Load 2009 Dimaa Rus Ready 16 9
High Load 2009 Dimaa Rus Ready 16 9High Load 2009 Dimaa Rus Ready 16 9
High Load 2009 Dimaa Rus Ready 16 9HighLoad2009
 
поиск узких мест в производительности My sql ботанический определитель. г. ру...
поиск узких мест в производительности My sql ботанический определитель. г. ру...поиск узких мест в производительности My sql ботанический определитель. г. ру...
поиск узких мест в производительности My sql ботанический определитель. г. ру...rit2011
 
Oracle how to live without cloud control
Oracle how to live without cloud controlOracle how to live without cloud control
Oracle how to live without cloud controlAnton Bushmelev
 
High Load 2009 Dimaa Rus Ready
High Load 2009 Dimaa Rus ReadyHigh Load 2009 Dimaa Rus Ready
High Load 2009 Dimaa Rus ReadyHighLoad2009
 
PostgreSQL: практические примеры оптимизации SQL-запросов / Иван Фролков (Po...
PostgreSQL: практические примеры оптимизации SQL-запросов /  Иван Фролков (Po...PostgreSQL: практические примеры оптимизации SQL-запросов /  Иван Фролков (Po...
PostgreSQL: практические примеры оптимизации SQL-запросов / Иван Фролков (Po...Ontico
 
Сергей Аверин, То, что вы хотели знать о HandlerSocket, но не смогли нагуглить
Сергей Аверин, То, что вы хотели знать о HandlerSocket, но не смогли нагуглитьСергей Аверин, То, что вы хотели знать о HandlerSocket, но не смогли нагуглить
Сергей Аверин, То, что вы хотели знать о HandlerSocket, но не смогли нагуглитьTanya Denisyuk
 
Вечный вопрос измерения времени
Вечный вопрос измерения времениВечный вопрос измерения времени
Вечный вопрос измерения времениTatyanazaxarova
 
PostgreSQL Vacuum: Nine Circles of Hell
PostgreSQL Vacuum: Nine Circles of HellPostgreSQL Vacuum: Nine Circles of Hell
PostgreSQL Vacuum: Nine Circles of HellAlexey Lesovsky
 
Top-10 популярных вопросов администраторам баз данных или почему я против св...
Top-10  популярных вопросов администраторам баз данных или почему я против св...Top-10  популярных вопросов администраторам баз данных или почему я против св...
Top-10 популярных вопросов администраторам баз данных или почему я против св...Ilya Kosmodemiansky
 
То, что вы хотели знать о HandlerSocket, но не смогли нагуглить
 То, что вы хотели знать о HandlerSocket, но не смогли нагуглить То, что вы хотели знать о HandlerSocket, но не смогли нагуглить
То, что вы хотели знать о HandlerSocket, но не смогли нагуглитьSergey Xek
 
Alexander Dymo - Barcamp 2009 - Faster Higher Sql
Alexander Dymo - Barcamp 2009 - Faster Higher SqlAlexander Dymo - Barcamp 2009 - Faster Higher Sql
Alexander Dymo - Barcamp 2009 - Faster Higher SqlAlexander Dymo
 
Adymo Barcamp Presentation Faster Higher Sql
Adymo Barcamp Presentation Faster Higher SqlAdymo Barcamp Presentation Faster Higher Sql
Adymo Barcamp Presentation Faster Higher SqlOleksandr Petrov
 
Что такое Postgresql (Максим Богук)
Что такое Postgresql (Максим Богук)Что такое Postgresql (Максим Богук)
Что такое Postgresql (Максим Богук)Ontico
 
Максим Богук. Postgres-XC
Максим Богук. Postgres-XCМаксим Богук. Postgres-XC
Максим Богук. Postgres-XCPostgreSQL-Consulting
 
Промышленный подход к тюнингу PostgreSQL: эксперименты над базами данных
Промышленный подход к тюнингу PostgreSQL: эксперименты над базами данныхПромышленный подход к тюнингу PostgreSQL: эксперименты над базами данных
Промышленный подход к тюнингу PostgreSQL: эксперименты над базами данныхNikolay Samokhvalov
 

Semelhante a User Aggs In As (20)

MySQL Optimization. Russian
MySQL Optimization. RussianMySQL Optimization. Russian
MySQL Optimization. Russian
 
10 задач администрирования Active directory, решаемых с помощью power shell
10 задач администрирования Active directory, решаемых с помощью power shell10 задач администрирования Active directory, решаемых с помощью power shell
10 задач администрирования Active directory, решаемых с помощью power shell
 
Aleksei Milovidov "Let's optimize one aggregate function in ClickHouse"
Aleksei Milovidov "Let's optimize one aggregate function in ClickHouse"Aleksei Milovidov "Let's optimize one aggregate function in ClickHouse"
Aleksei Milovidov "Let's optimize one aggregate function in ClickHouse"
 
2014.12.23 Александр Андреев, Parallels
2014.12.23 Александр Андреев, Parallels2014.12.23 Александр Андреев, Parallels
2014.12.23 Александр Андреев, Parallels
 
High Load 2009 Dimaa Rus Ready 16 9
High Load 2009 Dimaa Rus Ready 16 9High Load 2009 Dimaa Rus Ready 16 9
High Load 2009 Dimaa Rus Ready 16 9
 
поиск узких мест в производительности My sql ботанический определитель. г. ру...
поиск узких мест в производительности My sql ботанический определитель. г. ру...поиск узких мест в производительности My sql ботанический определитель. г. ру...
поиск узких мест в производительности My sql ботанический определитель. г. ру...
 
Oracle how to live without cloud control
Oracle how to live without cloud controlOracle how to live without cloud control
Oracle how to live without cloud control
 
High Load 2009 Dimaa Rus Ready
High Load 2009 Dimaa Rus ReadyHigh Load 2009 Dimaa Rus Ready
High Load 2009 Dimaa Rus Ready
 
Tfs reports customization
Tfs reports customizationTfs reports customization
Tfs reports customization
 
PostgreSQL: практические примеры оптимизации SQL-запросов / Иван Фролков (Po...
PostgreSQL: практические примеры оптимизации SQL-запросов /  Иван Фролков (Po...PostgreSQL: практические примеры оптимизации SQL-запросов /  Иван Фролков (Po...
PostgreSQL: практические примеры оптимизации SQL-запросов / Иван Фролков (Po...
 
Сергей Аверин, То, что вы хотели знать о HandlerSocket, но не смогли нагуглить
Сергей Аверин, То, что вы хотели знать о HandlerSocket, но не смогли нагуглитьСергей Аверин, То, что вы хотели знать о HandlerSocket, но не смогли нагуглить
Сергей Аверин, То, что вы хотели знать о HandlerSocket, но не смогли нагуглить
 
Вечный вопрос измерения времени
Вечный вопрос измерения времениВечный вопрос измерения времени
Вечный вопрос измерения времени
 
PostgreSQL Vacuum: Nine Circles of Hell
PostgreSQL Vacuum: Nine Circles of HellPostgreSQL Vacuum: Nine Circles of Hell
PostgreSQL Vacuum: Nine Circles of Hell
 
Top-10 популярных вопросов администраторам баз данных или почему я против св...
Top-10  популярных вопросов администраторам баз данных или почему я против св...Top-10  популярных вопросов администраторам баз данных или почему я против св...
Top-10 популярных вопросов администраторам баз данных или почему я против св...
 
То, что вы хотели знать о HandlerSocket, но не смогли нагуглить
 То, что вы хотели знать о HandlerSocket, но не смогли нагуглить То, что вы хотели знать о HandlerSocket, но не смогли нагуглить
То, что вы хотели знать о HandlerSocket, но не смогли нагуглить
 
Alexander Dymo - Barcamp 2009 - Faster Higher Sql
Alexander Dymo - Barcamp 2009 - Faster Higher SqlAlexander Dymo - Barcamp 2009 - Faster Higher Sql
Alexander Dymo - Barcamp 2009 - Faster Higher Sql
 
Adymo Barcamp Presentation Faster Higher Sql
Adymo Barcamp Presentation Faster Higher SqlAdymo Barcamp Presentation Faster Higher Sql
Adymo Barcamp Presentation Faster Higher Sql
 
Что такое Postgresql (Максим Богук)
Что такое Postgresql (Максим Богук)Что такое Postgresql (Максим Богук)
Что такое Postgresql (Максим Богук)
 
Максим Богук. Postgres-XC
Максим Богук. Postgres-XCМаксим Богук. Postgres-XC
Максим Богук. Postgres-XC
 
Промышленный подход к тюнингу PostgreSQL: эксперименты над базами данных
Промышленный подход к тюнингу PostgreSQL: эксперименты над базами данныхПромышленный подход к тюнингу PostgreSQL: эксперименты над базами данных
Промышленный подход к тюнингу PostgreSQL: эксперименты над базами данных
 

User Aggs In As

  • 1. Пользовательские вычисления в кубах Analysis Services Алексей Шуленин Microsoft
  • 2.
  • 3.
  • 4.
  • 5.
  • 6.
  • 7.
  • 8.
  • 9.
  • 10. Структура таблицы агрегатов Имя раздела Имя куба Мера, агрегированная в соотв. с ее ф-цией GROUP BY по членам выбр. уровня
  • 11.
  • 12.
  • 13.
  • 14.
  • 15.
  • 16.
  • 17.
  • 18.
  • 19.
  • 20.
  • 21.
  • 22.
  • 23. Создание calc member ... DSO.CubeClass olap_cube = (DSO.CubeClass) olap_db.Cubes.Item(&quot;Продажи&quot;); string CalcMemberName = &quot;Новый член&quot;; try { DSO.CubeCommandClass olap_cmd = (DSO.CubeCommandClass) olap_cube.Commands.Item(CalcMemberName); if (olap_cmd.CommandType == DSO.CommandTypes.cmdCreateMember) olap_cube.Commands.Remove(CalcMemberName); } catch (NullReferenceException e) {} finally { DSO.CubeCommandClass olap_cmd = (DSO.CubeCommandClass) olap_cube.Commands.AddNew(CalcMemberName, DSO.SubClassTypes.sbclsRegular); olap_cmd.CommandType = DSO.CommandTypes.cmdCreateMember; olap_cmd.Statement = &quot;CREATE MEMBER CURRENTCUBE.[Время].[Год].&[1996].&[3].&[7].[&quot; + CalcMemberName + &quot;] AS '[Время].CurrentMember.Parent.Name'&quot;; olap_cube.Update(); } olap_server.CloseServer();
  • 24.
  • 25.
  • 26.
  • 27.
  • 28.
  • 29.
  • 30.
  • 31.
  • 32.
  • 33.
  • 34.
  • 35.
  • 36.
  • 37.
  • 38.
  • 39.
  • 40.
  • 41.
  • 42.
  • 43.
  • 44.
  • 45.
  • 46.
  • 47.
  • 48.
  • 50.