Этот баннер — требование Роскомнадзора для исполнения 152 ФЗ.
«На сайте осуществляется обработка файлов cookie, необходимых для работы сайта, а также для анализа использования сайта и улучшения предоставляемых сервисов с использованием метрической программы Яндекс.Метрика. Продолжая использовать сайт, вы даёте согласие с использованием данных технологий».
Политика конфиденциальности
|
|
|
Multiple datasources в 2005-м кубе - фуфло!
|
|||
|---|---|---|---|
|
#18+
Основная БД, над которой строится куб, лежит в Oracle, но часть справочников хранится в MS SQL. Вот хорошо, подумал я, прослышав, что в Юконовском кубе можно будет собирать информацию из разных Data Sources, а не строго из одного, как было в 2000. Теперь не надо будет тащить все справочники в Oracle или связываться с linked servers в MS SQL. Создал в многомерной БД два data sources: один на Oracle, другой - на SQL Server. Построил DSV на основе ораклового data source. Для DSV он выступает primary datasource, потому что в нем лежит таблица фактов и вообще больше информации хранится. Добавил в DSV таблицу из SQL Serverного data source, создал logical PK, подстегнул к таблице фактов - все замечательно. Начал строить по ней измерение - облом. Нет, говорит, в оракловом источнике такой таблицы. Блин, ну я же явно указал, что вот эта конкретная таблица берется из другого datasource. Зашел еще в DSV, проверил - все правильно, в ее свойствах значится SQLный datasource. Запускаю снова процессинг - опять лезет искать ее зачем-то в Oracle :( Похоже, что поскольку в свойствах измерения указывается не datasource, a DSV, он всегда берет в качестве строки соединения primary datasource для данного DSV. На все secondary он плевать хотел, и зачем они тогда вообще нужны - непонятно. Ладно, мы люди не гордые, создадим еще один DSV, уже на основе SQLного datasource. Добавим в него наш справочник из SQL Server, создал измерение, отпроцессил - все замечательно. Остается сущий пустяк - добавить его в качестве cube dimension к кубику, который построен на основе оракловых данных. А вот с этим-то как раз снова облом. Нету этого измерения в списке доступных, которые я могу добавить в этот кубик. Все измерения, которые там значатся, построены на основе первого DSV, для которого primary datasource выступал Oracle, а все, что построено на основе других DSV, идет в сад. Таким образом, я прихожу к выводу, что ситуация с поддержкой множественных источников данных в 2005-м осталась на уровне 2000-го, то есть никакая. То, что они бахвалятся, что якобы теперь в кубе можно собирать информацию из разных источников, есть старый шулерский прием с терминологией. Просто ребята теперь называют кубом то, что в 2000-м называлось виртуальным кубом. Куб в старом понимании теперь называется measures group, и он по-прежнему понимает только один источник данных. ~~~~~ Naito ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 24.12.2005, 08:02 |
|
||
|
Multiple datasources в 2005-м кубе - фуфло!
|
|||
|---|---|---|---|
|
#18+
DSV на основе ораклового data source. Для DSV он выступает primary datasource, потому что в нем лежит таблица фактов и вообще больше информации хранится. Добавил в DSV таблицу из SQL Serverного data source, создал logical PK, подстегнул к таблице фактов - все замечательно. Начал строить по ней измерение - облом. Нет, говорит, в оракловом источнике такой таблицы. Блин, ну я же явно указал, что вот эта конкретная таблица берется из другого datasource. Странно, у меня почти такой же use case, только основной источник MSSQL, а дополнительными является Access и другой сервер MSSQL. Все работает без проблем. Вы, пожалуйста, локализируйте проблему, прежде чем огульно хаять все и вся. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.12.2005, 11:48 |
|
||
|
Multiple datasources в 2005-м кубе - фуфло!
|
|||
|---|---|---|---|
|
#18+
авторКуб в старом понимании теперь называется measures group, и он по-прежнему понимает только один источник данных. Ну ни фига подобного. Это по всей видимости у вас что-то с ораклом не срослось. Я у себя экспериментировал с txt, Excel, Access и SQL Server (две разные БД). Oracle я как приличная девушка у себя не держу. Для первых 3-х использовался джетовский провайдер, вот строки соединения. 1. Provider=Microsoft.Jet.OLEDB.4.0;Data Source=E:\SeveralSourcesInCube;Extended Properties="text;HDR=No;FMT=TabDelimited" (для текста еще внутри папки создавался schema.ini вида [Regions.txt] Format=TabDelimited ColNameHeader=False MaxScanRows=0 Col1=ID Text Col2=Name Text ). 2. Provider=Microsoft.Jet.OLEDB.4.0;Data Source=E:\SeveralSourcesInCube\Products.xls;Extended Properties="Excel 8.0;HDR=Yes" 3. Provider=Microsoft.Jet.OLEDB.4.0;Data Source=E:\SeveralSourcesInCube\Time.mdb 4. Provider=SQLNCLI.1;Data Source=(local)\Yukon;Integrated Security=SSPI;Initial Catalog=Test1 5. Provider=SQLNCLI.1;Data Source=(local)\Yukon;Integrated Security=SSPI;Initial Catalog=Test2 Результаты эксперимента. 1. Создать DSV на основе текста не получилось. Несмотря на то, что Regions#txt при построении DSV видится табличкой, попытка добавить его в DSV прерывается с ошибкой "Operation is not supported on this type of object". От остальных соединений DSV создаются нормально. 2. Для DSV на основе Excel и Access комбобокс Data source в Add/Remove Table "засерен", что означает, что в этих DSV можно использовать только таблы из того же самого Data source. Это объясняется тем, что данные источники данных не поддерживают интерфейс OPENROWSET, который используется при комбинировании в одном DSV нескольких соединений. Об этом даже говорится в документации (ms-help://MS.SQLCC.v9/MS.SQLSVR.v9.en/uas9/html/0bae4ee4-1742-40e9-bebe-17c788854484.htm), что удивительно, т.к. там обычно мало чего бывает полезного и по существу. 3. В SQL Serverный DSV могут быть добавлены как таблички из primary data source (БД Test1), так и изо всех перечисленных data sources. При добавлении тээкстэшных и эксельных табличек опять возникает ошибка "Operation is not supported on this type of object", но сами таблички добавляются, хотя джойны от них приходится протягивать вручную. 4. Чтобы джойны протягивались нормально, требуется совпадение типов полей. У txt и xls поле ID имеет стринговый тип. Сходил в .dsv, подправил ручками на xs:int, создал logical primary key, после чего джойны построились. 5. Cоздал новый куб, не мудрствуя лукаво отметив галку Auto build, чтобы не геморроиться. Вы будете сильно смеяться, но куб построился. Таблица фактов - из SQL Server, по бокам измерения из SQL Server (другая база), mdb, xls, txt. Почему бы его теперь не отпроцессить ради хохмы? 6. Процессинг вывалился с ошибкой "OLE DB error: OLE DB or ODBC error: SQL Server blocked access to STATEMENT 'OpenRowset/OpenDatasource' of component 'Ad Hoc Distributed Queries' because this component is turned off as part of the security configuration for this server. A system administrator can enable the use of 'Ad Hoc Distributed Queries' by using sp_configure. For more information about enabling 'Ad Hoc Distributed Queries', see "Surface Area Configuration" in SQL Server Books Online. ; 42000" по всем гетерогенным измерениям. 7. Посмотрел exec sp_configure 'show', 1 reconfigure exec sp_configure 'ad hoc' И впрямь name minimum maximum config_value run_value Ad Hoc Distributed Queries 0 1 0 0 Сделал exec sp_configure 'ad hoc', 1 reconfigure 8. Отпроцессил каждое измерение по отдельности. Все измерения отпроцессились нормально, кроме эксельного, которое вылетело с ошибкой "OLE DB error: OLE DB or ODBC error: Cannot initialize the data source object of OLE DB provider "Microsoft.Jet.OLEDB.4.0" for linked server "(null)".; 42000; The OLE DB provider "Microsoft.Jet.OLEDB.4.0" for linked server "(null)" reported an error. The provider did not give any information about the error.; 42000." Мне нравятся такие ошибки. Предельно полная исчерпывающая информация. Со злости выкинул его на фиг и отпроцессил куб без него. Процессинг прошел успешно. 9. Собственно, все. Эксперимент доказывает принципиальную возможность AS работать внутри одного куба (measure group) с множественными источниками данных. Замечания. 1. Именно приниципиальную, потому как как оно поведет себя в production на реальных объемах данных - неизвестно. 2. Непонятно, что ему не понравилось в OLE DB-соединении с Excel. Будет время - попробую попробовать подумать. 3. Я не утверждаю, что AS 2005 свободен от глюков. Данный эксперимент ставил целью отбить несправедливый наезд, поскольку товарищ чересчур смело обобщал свой неудачный опыт работы с Oracle. Возможно там требуется включить какую-то опцию типа sp_configure. Было бы интересно, если бы кто-нибудь поделился. Собственно, чудесов в AS и без этого предостаточно. По уровню багов это не РТМ. Очередная бета, в лучшем случае RC. Косяки Analysis Service 2005, всплывшие в процессе эксперимента. 1. Так и не удалось проброузить мой замечательный гетерогенный куб, поскольку AS стоит на именованном инстансе, соответственно, броузёр в виде OWC выдает ошибку "A connection cannot be made to redirector. Ensure that 'SQL Browser' service is running." Эта ошибка тянется как минимум с июньского СТР, интернет полон воя на эту тему, а им насрать. 2. Навеяло ручной правкой .dsv. Предположим, вы в DSV создаете именованное вычисление, равное, скажем, константе 1 и хотите связать это поле с целочисленным полем ID какого-то справочника. Хрен чего у вас, извините, получится. Потому что 1 по умолчанию получает тип decimal и связать его c int тупая AS не даст. Единственный способ - открывать проект типа Export existing Analysis Services 9 Database, открывать View Code для dsv, править ручками xml и заново деплоить. Ну т.е. настолько через жопу, что как у этих уродов еще хватает совести бахвалиться, за сколько офигительно мало кликов, блин, строится куб в AS 2005! 3. Документация - полное гавно. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.12.2005, 10:56 |
|
||
|
Multiple datasources в 2005-м кубе - фуфло!
|
|||
|---|---|---|---|
|
#18+
Было интересно и полезно узнать "где в темном чулан расставлены швабры". Под пунктом о никудышности документации подпишусь двумя руками. И это касается не только AS, но и новых фич MSSQL. Тут мы в большом проигрыше по срвнению с SQL 2000 и VS 2003. Даже обновление BOL вышедшее на месяц позже не исправило положение ни на йоту. Ну а Multiple DSV это фича с ограниченной областью применения для маленьких проектиков, так как при наличии человеческого хранилища, для наполнения которого написан навороченный SSIS, множественные источники отпадают сами по себе. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.12.2005, 11:36 |
|
||
|
|

start [/forum/topic.php?fid=49&msg=33461231&tid=1870702]: |
0ms |
get settings: |
10ms |
get forum list: |
16ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
34ms |
get topic data: |
10ms |
get forum data: |
2ms |
get page messages: |
44ms |
get tp. blocked users: |
2ms |
| others: | 252ms |
| total: | 376ms |

| 0 / 0 |
