Сообщение об ошибке при обработке измерения

Эта статья поможет устранить проблему, возникающую при обработке измерения в службе анализа SQL Server.

Исходная версия продукта: SQL Server
Исходный номер базы знаний: 2002757

Симптомы

В службе SQL Server Analysis Service обработка измерений и может появиться сообщение об ошибке, похожее на следующее:

Ошибки в подсистеме хранилища OLAP: при обработке обнаружен повторяющийся ключ атрибута: Таблица: "TABLE_NAME", столбец: "ATTRIBUTE_COLUMN_NAME, значение: "ATTRIBUTE_VALUE". Атрибут — ATTRIBUTENAME.

Причина

Это ожидаемое поведение. Службы SQL Server Analysis Services будут обнаруживать повторяющийся ключ атрибута во время обработки.

Приведенная выше ошибка также может быть активирована, если реляционная база данных учитывает регистр, и значения данных находятся в смешанном регистре. В службах Analysis Services при создании измерения и его атрибутах параметры сортировки по умолчанию для атрибута не учитывает регистр. Измерение по умолчанию имеет значение ErrorConfiguration|KeyDuplicate , которое должно быть ReportAndStop. Таким образом, если у вас есть реляционная база данных с учетом регистра, которая, например, содержит значения BOOKNAME и Bookname во время обработки измерения, если данные BOOKNAME сначала обработаны в качестве ключа атрибута, последующий процесс завершится ошибкой следующей ошибки:

При обработке обнаружен повторяющийся ключ атрибута: Таблица: "TABLE_NAME", столбец: "ATTRIBUTE_COLUMN_NAME, значение: "Имя книги". Атрибут — ATTRIBUTENAME.

Решение

При проектировании измерений, атрибутов измерений и связей атрибутов следует проверить значения реляционных данных для дубликатов и, если они существуют, используйте одну из следующих процедур для решения этой проблемы:

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

    Например, можно использовать UPPER или LOWER регистр функции в именованном запросе.

  • Вариант 2. Вы можете обойти проблему с помощью одного из следующих вариантов:

    Примечание.

    Эти параметры обычно не рекомендуется, так как они могут привести к непредвиденным данным, но их можно использовать для устранения неполадок.

    • Задайте для элемента KeyDuplicate значение ReportAndContinue и KeyErrorLimitAction для StopLogging в ErrorConfiguration.

    • С помощью редактора измерений в Студии разработки бизнес-аналитики (BIDS) откройте измерение, к которому принадлежит атрибут, и задайте правильное параметры сортировки для атрибута с помощью свойства сортировки измерения измерения.

      Примечание.

      Это приведет к тому, что измерение будет иметь повторяющийся ключ атрибута (различные значения регистра) после завершения обработки.