Quantcast
Channel: SQL.ru: OLAP и DWH
Viewing all 1167 articles
Browse latest View live

SSAS cache vs Windows cache. Вопрос для Игоря Бобак.

$
0
0
Игорь, добрый день!
Я знаю, что Вы сталкивались с проблемой неэффективного использования SSAS-ом оперативной памяти, было это конечно уже давненько. Думаю многим бы было интересно что изменилось с того времени и есть-ли какие пути решения (без замены железа конечно).
Я у себя уже значительное время наблюдаю такую ситуацию :
MSAS11:MemoryMemory Limit Hard KB 120 769 851
Memory Limit High KB 107 350 979
Memory Limit Low KB 87 222 670
Memory Usage KB 24 389 228
ПамятьКБайт кэш-памяти 11 227 705
КБайт резервного кэша обычного приоритета 77 977 837
Доступно КБ 86 325 352

Ну, плюс еще SQL Server совсем немного отъедает..
Как видим, виндовый кэш сожрал все, а SSAS-у досталось всего 24Г.
Ума не приложу, что делать. PreAllocate и LimitSystemFileCacheMB картину практически не меняют.

PDI add a checksum

$
0
0
Добрый день!
1) Как оптимальнее хранить checksum на записи в таблице, в самой таблице или отдельно таблица id, checksum?
2) Пробовал таблицу 1 в 1 скопировать в ХД, input table->add a checksum->output table, в ХД к идентичной структуре добавил столбец check_sum - но не дает скопировать, выдает ошибку, что в input нет такого столбца - checksumи в маппинге output не дает выбрать созданный столбец check_sum, как будто его нет. Но когда делаю выборку из новой таблицы - PDI этот столбец видит.
Как правильно добавить checksum?

Блоги по теме DW/BI

$
0
0
Коллеги, поделитесь, кто какие блоги/ресурсы отслеживает по теме DWH, BI, Analytical DB?
На Хабре периодически хорошие посты появляются, а ещё? На английском тоже подойдёт.

Oracle BI - Hint для колонки представления "Таблица" у "Анализа"

$
0
0
Подскажите, пожалуйста, есть ли возможность сделать hint для колонки представления "Таблица" у "Анализа".
Используется Oracle BI 11.1.1.7

Вопросик про ОЛАП

$
0
0
Добрый день,

Так как я не знаком с MDX и негде попробовать, решил спросить на форуме.

Есть данные (дата, сумма одной продажи):

2001/01/05 , 10
2001/01/15 , 15
2001/01/25 , 5
2001/02/05 , 35
2001/02/15 , 15
2001/02/25 , 25
2001/04/05 , 5
2001/04/15 , 10
2001/04/25 , 20



Построить одно измерение по дате и меру как сумму продаж.


1. Какой получится результат если кинуть на одну ось измерение (c иерархией по месяцам) , а на другую ось меру ?
2. Зависит ли результат от производителя OLAP решения ?

Например если в виде sql то запрос в виде : select to_month(date),sum(many) from table group by to_month(date);
даст ожидаемый результат у всех sql движков, а что с OLAPом ?

SSAS не создается группа мер ROLAP

$
0
0
ДД.
Пытаюсь создать группу мер ROLAP, везде прописал что способ хранения ROLAP и в самой мере и в секции, вроде даже куб собирается, но в значения мер все пусто.
Может кто сталкивался с подобной проблемой?
Подскажите в чем хитрость.

Excel как источник данных SSAS

$
0
0
Возможно ли такое в принципе.
Если возможно, как настроить соединение?

Write Back весовое распределение

$
0
0
Добрый день!
Помогите, пожалуйста, разобраться с распределение весов в ячейках. Возможно кто-то сталкивался...
Есть партиция с обратной записью в куб. При записи данных в итоговую ячейку оно делится поровну между дочерними ячейками. Необходимо реализовать распределение весов, в соответствии с весами другой меры куба.
(Нашла что есть спецификация распределение - USE WEIGHTED ALLOCATION, но как можно применить не знаю)

Запрос MDX

$
0
0
Здравствуйте!

Прошу помочь понять разницу запроса, а точнее, как он работает.

Есть запрос вида
SELECT NON EMPTY { [Measures].[SUM] } ON COLUMNS, 
	NON EMPTY { ([Dimension_4].[Date].[Month] ) } ON ROWS 
	FROM ( SELECT ( { [Dimension_4].[Date].[Year].&[2016] } ) ON COLUMNS 
		FROM ( SELECT ( { [Dimension_3].&[3] } ) ON COLUMNS 
			FROM ( SELECT ( { [Dimension_2].&[2] } ) ON COLUMNS 
				FROM ( SELECT ( { Dimension_1].&[1] } ) ON COLUMNS 
					FROM [Cube])))) 
					
WHERE ( [Dimension_1].&[1], [Dimension_2].&[2], [Dimension_3].&[3])


В случае, если я выполняю запрос без WHERE, тогда возвращается 2 строки со значениями

Month SUM
Апрель 2016 -350
Июнь 2016 -23050


Если же запрос выполняется с WHERE, тогда возвращается 3 строки

Month SUM
Апрель 2016 -350
Июнь 2016 -23050
Август 2016 -42600


Как влияет WHERE на конечный результат? Правильный результат во второй таблице.

SSAS 2012/14/16 STD Edition.

$
0
0
Столкнулся с проблемой, что процессинг выполняется только одним ядром.
Что это баг или фича? Если фича, то где про это внятно написано?
Использование parallel в xmla командах ситуацию не меняет?

Кто с этим сталкивался и как решал проблему?

Срез при создании секции OLAP

$
0
0
Имею SSAS 2012.
В OLAP кубе есть две группы мер, одна соединена в датами по ID даты (гранулярность измерения дат - час, например 20160112212 - 22.11.2016 12:00), другая соединена по месяцу (01.11.2016 00:00).
В обоих группах мер есть секции (секционирование по дате) с данными за год. Для каждой секции задано значение Slice - период за который есть данные в секции. У обоих секций оно стоит "[Календарь].[Год].[Год].&[2008-01-01T00:00:00]" для секции с данными за 2008 год.
При обработке индекса для этих секций, для группы мер, связанной с датами по месяцам, получаю ошибку "Ошибки модуля хранения OLAP: Неверный срез, указанный для атрибута Год".

Данная ошибка возникает только для этой одной группы мер. Наврятли связь с датами по месяцам на это влияет. Если убираю значение Slice, то индексы обрабатываются нормально.
В чем может быть причина такого поведения? И как мне обработать индексы, не убирая Slice?

BIML/MIST - как задать версии .NET и C#?

$
0
0
Всем привет. При SSIS тут много говорят. Хотелось бы узнать - работает ли кто-то с BIML от Varigence?

И если ДА, то знает ди кто, как задать в нем для скриптового Taks-а версии .NET Framework-а и C# компилятора?

obiee 12 first_period

$
0
0
Хочу настроить агрегацию, показывающую первое хронологически значение (учитывая null)
Ставлю first_period по нужному измерению. Отмечаю галочкой "data is dense"
тем не менее все равно в селекте пишет first_value (.. ignore nulls), как если бы было просто first, а не first_period
Можно ли как-то избавиться от ignore nulls?
Может еще где-то есть нужные настройки?

Оцените запрос

$
0
0
Здравствуйте!

Есть задача. По строкам выводить ТТ. По колонкам SKU (Всего 10). Мера - количество отгруженных ТТ. Но фишка в том, что для SKU1 выгружаются данные за 46 и 47 неделю, а остальные SKU - 47.

Написал такой MDX-запрос.

+
WITH
SET [Неделя1] AS [Время].[Неделя года].&[46]
SET [Неделя2] AS [Время].[Неделя года].&[47]

MEMBER [Measures].[SKU1] AS
	SUM(
		{([SKU].[SKU].&[SKU1],		
		{[Неделя1], [Неделя2])},
		[Measures].[Отгрузки количество ТТ])
		
MEMBER [Measures].[SKU2] AS
	SUM(
		{([SKU].[SKU].&[SKU2],		
		{[Неделя2]})},
		[Measures].[Отгрузки количество ТТ])
		
MEMBER [Measures].[SKU3] AS
	SUM(
		{([SKU].[SKU].&[SKU3],		
		[Неделя2])},
		[Measures].[Отгрузки количество ТТ])
...

SELECT
{[Measures].[SKU1],
[Measures].[SKU2],
[Measures].[SKU3],
[Measures].[SKU4],
[Measures].[SKU5],
[Measures].[SKU6],
[Measures].[SKU7],
[Measures].[SKU8],
[Measures].[SKU9],
[Measures].[SKU10]} on 0,
NON EMPTY
[Торговые точки].[Код ТТ].[Код ТТ]
 on 1 
	From (SELECT ([SKU].[SKU Группа].&[1],
		[Время].[Год].&[2016-01-01T00:00:00],
		{[Время].[Неделя года].&[46],[Время].[Неделя года].&[47]},
                {[SKU].[SKU].&[SKU1],
                 [SKU].[SKU].&[SKU2],
                 [SKU].[SKU].&[SKU3],
                 [SKU].[SKU].&[SKU4],
                 [SKU].[SKU].&[SKU5],
                 [SKU].[SKU].&[SKU6],
                 [SKU].[SKU].&[SKU7],
                 [SKU].[SKU].&[SKU8],
                 [SKU].[SKU].&[SKU9],
                 [SKU].[SKU].&[SKU10]}
                 ) ON 0 FROM [Profit])

Запрос работает. Но мне кажется я его сложно написал. Учитывая что часто придется менять недели, и возможно SKU (не только менять, а еще добавлять и/или удалять). Учитывая, что еще есть субкуб.

Как можно написать этот запрос более оптимально и динамично?

Где SSAS хранит данные о расположении кубов?

$
0
0
Где Microsoft Server Analysis Service (11.0.6544.0) хранит данные о расположении каждого конкретного куба? В реестре этих данных не нашел.

олап сервер не видит sql сервер

$
0
0
На боевом сервере Win2012 установлены в рамках одного экземпляра 64-битный SQL Server и такой же OLAP сервер SSAS 2012. Версия 11.0.5058.0. В один прекрасный момент ОЛАП сервер перестал выполнять процессинг кубов и измерений на базе хранилища данных DWH2012 на этом же сервере. При попытке выполнить процессинг вылетает ошибка.

<Error ErrorCode="3238002695" Description="Internal error: The operation terminated unsuccessfully." Source="Microsoft SQL Server 2012 Analysis Services" HelpFile="" />
<Error ErrorCode="3238395904" Description="OLE DB error: OLE DB or ODBC error: A network-related or instance-specific error has occurred while establishing a connection to SQL Server. Server is not found or not accessible. Check if instance name is correct and if SQL Server is configured to allow remote connections. For more information see SQL Server Books Online.; 08001; Client unable to establish connection; 08001; Encryption not supported on the client.; 08001." Source="Microsoft SQL Server 2012 Analysis Services" HelpFile="" />
<Error ErrorCode="3239182436" Description="Errors in the high-level relational engine. A connection could not be made to the data source with the DataSourceID of 'DWH2012', Name of 'DWH2012'." Source="Microsoft SQL Server 2012 Analysis Services" HelpFile="" />

Проблема возникла после установки на сервер 32-битного OLE DB provider Microsoft.ACE.OLEDB.12.0. Видимо, эта установка повлияла на работу 64-битного драйвера OLE DB provider for SQL Server, который указан в DataSource OLAP базы:
<ConnectionString>Provider=SQLOLEDB.1;Initial Catalog=DWH2012</ConnectionString>.
Кто может подсказать, как исправить ситуацию или куда копать?

Интеграция Oracle BI c MS Office "Ошибка входа"

Восстановление пароля Administrator в Oracle BI10. Что делаем не так?

$
0
0
Добрый день!

Возникла необходимость восстановить пароли к прежнему стенду, но актуальному сейчас.

Для пользователя oc4jadmin пароль был успешно восстановлен следующим образом http://www.f-notes.info/oracle:change_password_as

Для пользователя Administrator, который используется для доступа к analytics (Oracle BI Interactive Dashboards) использовали методику https://oraclebizint.wordpress.com/2008/04/11/oracle-bi-ee-101332-changing-administrator-passwords-impact-on-bi-scheduler-and-bi-publisher-understanding-impersonation/

то есть cделали:

1.выполнили cryptotools credstore -add -infile credentialstore.xml
для Credential Alias : admin

2.выполнили cryptotools credstore -add -infile credentialstore.xml
для Credential Alias : bipublisheradmin

3.для файла xmlp-server-config.xml
изменили пароль в двух местах

4.перезапустили сервисы BI: Presentation Services, BI Scheduler Service and OC4J

Но, так и не удалось восстановить/сменить пароль Administrator.

Может кто сталкивался подобной задачей, как удавалось решить?

Резкое увеличение длительности выполнения запроса при добавлении одного элемента измерения

$
0
0
Добрый день.

Имеется следующий запрос:
SELECT
[Период].[Год-Месяц].Members ON COLUMNS,
NON EMPTY
( 
  (
   [Статьи ДДС ЦФО],
   Descendants([ЦФО].[ЦФО].&[1]),
   [Проект].[Проекты].MEMBERS
  )
)
ON ROWS
FROM ( SELECT [Период].&[201601] : [Период].&[201612] ON COLUMNS FROM [Бюджеты проектов] )
WHERE ( [Measures].[Сумма в пересчете на рубли],  [Версия].[Версия].&[2] )

[Статьи ДДС ЦФО] - определенный в скрипте куба сет, содержащий множество элементов измерения "Статья". Некоторые из статей расчетные.
CREATE SET CURRENTCUBE.[Статьи ДДС ЦФО]
 AS {
        [Статья].[Статьи].&[495]
       ,[Статья].[Статьи].&[506]
       ,[Статья].[Статьи].&[511]
       ,[Статья].[Статьи].&[522]
       ...
     }

Проблема в том, что при определенном количестве статей в сете [Статьи ДДС ЦФО] (16 статей) запрос начинает жутко тормозить. Если в сете 15 статей (любых), то запрос выполняется 3 сек, но если в сет добавить 16-ую статью, то время выполнения резко возрастате (до 2 мин). При этом не важно какие 15 из 16-ти статей взять. Для любых 15-ти статей запрос выполняется быстро. В чем может быть проблема?
Может быть SSAS не хватает памяти и при определенном размере обрабатываемых данных он начинает скидывать данные из на диск?
Максимальное значение MSAS12:Memory:Memory Usage KB при выполнении запроса с 16 статьями: 2 Гб.
Средние значения счетчиков MSAS12:Memory:
Memory Limit Hard KB: 30 Гб
Memory Limit High KB: 29 Гб
Memory Limit Low KB: 22 Гб
Использую MS SQL Server 2014, который установлен на виртуальной машине.
Параметры виртуальной машины:
ОС: Winows Server 2012 R2 Stadard.
Оперативная память: 32 Гб
Количество виртуальных процессоров: 4

Расчет значения статьи на основе значений в предыдущих периодах

$
0
0
В скрипте куба определен следующий скоуп для расчета значений статьи [Статья].[Статьи].&[440]
Scope 
    ( 
        [Measures].[Сумма],
        [Статья].[Статьи].&[440],
        {[Период].[Месяц].&[201611]:[Период].[Месяц].&[201612]},
        
    );                    

    This = [Статья].[Статьи].&[428]
           +
           sum( {[Период].[Месяц].&[200101]:[Период].[Месяц].CurrentMember.PrevMember},[Статья].[Статьи].&[440] );
End Scope;


Значения статьи [Статья].[Статьи].&[428] по периодам:
201611: 40 000 руб.
201612: 30 000 руб.
Для остальных периодов значение статьи [Статья].[Статьи].&[428] равно null.

Ожидаемые значения статьи [Статья].[Статьи].&[440] по периодам:
201611: 40 000 руб. (40 000 руб. + 0)
201612: 70 000 руб. (30 000 руб. + 40 000 руб.)

Однако скрипт приведенный выше дает следующие значения статьи [Статья].[Статьи].&[440]:
201611: 7 600 000 руб.
201612: 5 770 000 руб.

7 600 000 руб. получается если умножить 40 000 руб. на 190, где 190 - количество элементов измерения [Период] с января 2001 по октябрь 2016 включительно
5 770 000 руб. получается если умножить 30 000 руб. на 191 и прибавить 40 000 руб.
Почему скрипт дает такие результаты и как его изменить, чтобы получались ожидаемые значения?
Viewing all 1167 articles
Browse latest View live