Составные модели в Power BI Desktop (предварительная версия)Composite models in Power BI Desktop (Preview)

Ранее в Power BI Desktop при использовании DirectQuery в отчете не допускались никакие другие подключения к данным в этом отчете, будь то DirectQuery или импорт.Previously in Power BI Desktop when you used a DirectQuery in a report, no other data connections whether DirectQuery or Import were allowed for that report. Благодаря составным моделям это ограничение устранено. В отчет теперь можно беспрепятственно включать подключения к данным из нескольких DirectQuery или импортировать подключения к данным в любой выбранной комбинации.With composite models that restriction is removed, and a report can seamlessly include data connections from more than one DirectQuery or import data connection, in any combination you choose.

составные модели в Power BI Desktop

Возможность создания составных моделей в Power BI Desktop сопряжена с использованием трех основных компонентов:The composite models capability in Power BI Desktop consists of three related features:

  • Составные модели — позволяют включить в отчет несколько подключений к данным, в том числе подключения DirectQuery или импорт, в любой комбинации.Composite models - allows a report to have multiple data connections, including DirectQuery connections or import, in any combination thereof.
  • Связи "многие ко многим" — с составными моделями можно устанавливать между таблицами связи "многие ко многим". Эта устраняет требования уникальных значений в таблицах и необходимость в прежних обходных решениях, таких как введение новых таблиц только для установления связей.Many-to-many relationships - with composite models you can establish many-to-many relationships between tables, removing requirements for unique values in tables, and removing prior work-arounds such as introducing new tables just to establish relationships.
  • Режим хранения — теперь можно указать, какие визуальные элементы требуют запроса к внутренним источникам данных. Визуальные элементы, которым запрос не требуется, импортируются, даже если они основаны на DirectQuery. Это позволяет повысить производительность и снизить нагрузку на серверную часть решения.Storage mode - you can now specify which visuals require a query to back-end data sources, and those that do no require it are imported even if based on DirectQuery, improving performance and reducing back-end load. Ранее даже простые визуальные элементы, например срезы, инициировали запросы к серверным источникам.Previously, even simple visuals like slicers initiated queries being sent to back-end sources.

Все три связанные функции этой коллекции для составных моделей описаны в отдельных статьях:This collection of three related features for composite models are each described in separate articles:

Включение предварительной версии функции составных моделейEnabling the composite models preview feature

Функция составных моделей находится в режиме предварительной версии, поэтому ее необходимо сначала включить в Power BI Desktop.The composite models feature is in Preview, and must be enabled in Power BI Desktop. Чтобы включить составные модели, последовательно выберите Файл > Параметры и настройки > Параметры > Предварительная версия функций и установите флажок Составные модели.To enable composite models, select File > Options and Settings > Options > Preview Features, then select the composite models checkbox.

Включение предварительной версии функций

Чтобы включить эту функцию, нужно перезапустить Power BI Desktop.You'll need to restart Power BI Desktop for the feature to be enabled.

запрос на перезагрузку для вступления изменений в силу

Использование составных моделейUsing composite models

С помощью составных моделей при использовании Power BI Desktop или службы Power BI можно подключаться к различным типам источников данных разными способами.With composite models, you can connect to all sorts of different data sources when using Power BI Desktop or the Power BI service, and you can make those data connections in different ways. Можно импортировать данные в Power BI, что является наиболее распространенным способом получения данных, или же подключиться непосредственно к данным в исходном репозитории источника, где используется DirectQuery.You can import data to Power BI, which is the most common way to get data, or you can connect directly to data in its original source repository using DirectQuery. Подробные сведения о DirectQuery см. в статье об использовании DirectQuery в Power BI.You can learn more about DirectQuery details in the using DirectQuery in Power BI article.

При использовании DirectQuery с составными моделями можно создать модель Power BI (например, одиночный PBIX-файл Power BI Desktop), предназначенную для выполнения одной из следующих задач или их обеих:When using DirectQuery, with composite models it is possible to create a Power BI model (such as a single .pbix Power BI Desktop file) that does the following:

  • объединение данных из одного или нескольких источников DirectQuery;combines data from one or more DirectQuery sources, and/or
  • объединение данных из источников DirectQuery и импортированных данных.combines data from DirectQuery sources and import data

Например, с помощью составных моделей можно создать модель, которая объединяет данные о продажах из хранилища данных предприятия с данными о целях продаж, содержащимися в базе данных отдела под управлением SQL Server, а также с некоторыми данными, импортированными из электронной таблицы.For example, with composite models it's possible to build a model that combines sales data from an enterprise data warehouse, with data on sales targets that is in a departmental SQL Server database, along with some data imported from a spreadsheet. Модель, которая объединяет данные из нескольких источников DirectQuery или объединяет DirectQuery с импортированными данными, называется составной моделью.A model that combines data from more than one DirectQuery source, or combines DirectQuery with imported data is referred to as a composite model.

Примечание

Пока составные модели находятся в режиме предварительной версии, публиковать их в службе Power BI нельзя.While composite models are in Preview, it is not possible to publish composite models to the Power BI service.

Можно создавать связи между таблицами привычным способом, даже если эти таблицы поступают из различных источников, со следующим ограничением: любые связи между различными источниками должны быть определены с кратностью многие ко многим независимо от их фактической кратности.You can create relationships between tables as you always have, even when those tables come from different sources, with the following restriction: any relationships that are cross-source must be defined as having a cardinality of Many-to-Many, regardless of their actual cardinality. Поведение таких связей такое же, как у обычных связей многие ко многим. Это описано в статье о связях "многие ко многим" в Power BI Desktop (предварительная версия).The behavior of such relationships is then the same as normal for Many-to-Many relationships, as described in many-to-many relationships in Power BI Desktop (Preview). Обратите внимание, что в контексте составных моделей все импортированные таблицы по сути представляют собой единый источник независимо от фактического базового источника данных, из которого они были импортированы.Note that within the context of composite models, all imported tables are effectively a single source, regardless of the actual underlying data source from which they are actually imported.

Пример использования составных моделейExample of using composite models

В качестве примера составной модели рассмотрим отчет, который был подключен к корпоративному хранилищу данных (в SQL Server) с помощью DirectQuery. В хранилище содержатся данные о продажах по странам (Sales by Country), кварталах (Quarter) и велосипедной продукции (Bike (Product)), как показано на следующем рисунке.As an example of a composite model, consider a report that has connected to a corporate data warehouse (in SQL Server) using DirectQuery, where the data warehouse contains data of Sales by Country, Quarter, and Bike (Product), as shown in the following image.

представление связей для составных моделей

На этом этапе можно создать простые визуальные элементы с использованием полей из указанного источника.At this point you could build simple visuals using fields from this source. Например, в следующем визуальном элементе отображаются сведения об общем объеме продаж по наименованиям продукции (ProductName) для выбранного квартала.For example, the following visual shows total sales amount by ProductName, for a selected quarter.

визуальный элемент на основе данных

А теперь предположим, что у вас есть определенные сведения о менеджере по продуктам, назначенном для каждого продукта, а также о маркетинговом приоритете, и эти данные хранятся в таблице Excel.But what if you had some information on the Product Manager who had been assigned to each product, along with the marketing priority, where that data is maintained in an Excel spreadsheet? Возможно, вам понадобится просматривать объем продаж по менеджерам по продуктам. Добавить эти локальные данные в корпоративное хранилище либо невозможно, либо в лучшем случае это займет месяцы.You might want to see Sales Amount by Product Manager, yet having this local data added to the corporate data warehouse would likely be unfeasible, or take months at best. В принципе, такие данные о продажах можно импортировать из хранилища данных (вместо использования DirectQuery) и объединить с данными, импортированными из электронной таблицы. Но такой подход нецелесообразен, так как приводит к активному использованию DirectQuery — например, для применения комбинации правил безопасности к базовому источнику, доступа к новейшим данным и полного масштабирования этих данных.While it may be possible to import that sales data from the data warehouse (instead of using DirectQuery), at which point it could be combined with data imported from the spreadsheet, that approach is unreasonable given reasons that lead to using DirectQuery in the first place - such as some combination of the security rules enforced in the underlying source, the need to be able to see the latest data, and the sheer scale of the data.

Здесь и помогают составные модели.That's where composite models come in. Составные модели позволяют подключиться к источнику данных с помощью DirectQuery, а затем использовать функцию GetData для дополнительных источников.Composite models give you the option of connecting to the data warehouse using DirectQuery, and then also using GetData for additional sources. В этом случае мы устанавливаем подключение DirectQuery к корпоративному хранилищу данных, применяем GetData, выбираем Excel и переходим к электронной таблице с локальными данными. Затем можно импортировать лист с наименованиями продукции (ProductNames), назначенными менеджерами по продажам (SalesManager) и приоритетами (Priority).In this case we establish the DirectQuery connection to the corporate data warehouse, then we use GetData and choose Excel, navigate to the spreadsheet containing our local data, and can import the sheet containing the ProductNames, the assigned SalesManager and Priority.

Окно "Навигатор"

Теперь в списке Поля мы увидим исходную таблицу Bike (с сервера SQL Server) и новую таблицу Product Managers с данными, импортированными из Excel.Now in the Fields list we see the original Bike table (from SQL Server) and a new Product Managers table (with the data from imported from Excel).

Представление таблиц в списке "Поля"

В представлении связей в Power BI Desktop теперь также отображается дополнительная таблица Product Managers.Similarly, looking at Relationship View in Power BI Desktop, we now see an additional table called Product Managers.

представление связей с таблицами

Теперь необходимо связать эти таблицы с другими таблицами в модели.Для этого мы, как обычно, создаем связи между таблицей Bike (в SQL Server) и таблицей Product Managers (которая импортируется), например между Bike[ProductName] и ProductManagers[ProductName].We now need to relate these to the other tables in the model, which we do as we always have, by creating a relationship between the Bike table (in SQL Server) and the Product Managers table (that is imported) such as between Bike[ProductName] and ProductManagers[ProductName]. Как уже говорилось ранее в этой статье, все связи между разными источниками должны иметь кратность многие ко многим, поэтому такая кратность выбрана по умолчанию.As discussed earlier in this article, all relationships going across source must have cardinality Many-to-Many and as such, that's the default cardinality that is selected.

диалоговое окно создания связи

После создания этой связи она отображается в представлении связей в Power BI Desktop, как и ожидалось.Having created this relationship, the relationship is displayed in Relationship View in Power BI Desktop just as we would expect.

представление новой связи

Установив связи между таблицами, мы можем создать визуальные элементы с использованием любых полей из списка Поля, беспрепятственно смешивая данные из нескольких источников.With those table relationships established, we can now create visuals using any of the fields in the Fields list, seamlessly blending data from multiple sources. Например, в показанном ниже визуальном элементе отображается общий объем продаж для каждого менеджера по продуктам.For example, the visual below shows total Sales Amount for each Product Manager.

визуальный элемент с показанной областью "Поля"

В этом примере демонстрируется распространенный случай, когда таблица измерения (например, Product или Customer) расширяется дополнительными данными, импортированными из другого расположения. Также можно использовать в таблицах DirectQuery с подключением к разным источникам.This example shows a common case of a dimension table (like Product or Customer) being extended with some extra data imported from somewhere else, it's also possible to have tables use DirectQuery connecting to different sources. Таким образом, чтобы расширить наш пример, представим, что данные о целях продаж (SalesTargets) по странам (Country) и периодам (Period) хранятся в отдельной базе данных отдела.So to extend our example, imagine that SalesTargets per Country and Period are stored in a separate departmental database. Можно подключиться к этим данным обычным способом с помощью функции GetData, как показано на приведенном ниже рисунке.You can use GetData to connect to that data as you usually would, as shown in the following image.

Диалоговое окно "Навигатор"

Затем, как и ранее в этом примере, мы можем создать связи между новой таблицей и другими таблицами в модели, а также создать визуальные элементы, объединяющие данные таблиц.Then, similar to what we did earlier in this example, we can create relationships between the new table and other tables in the model, and create visuals that combine their data. Давайте вернемся к представлению связей, где мы установили новые связи в нашем расширенном примере сценария.Let's look again at the Relationships View, where we've established new relationships in our extended example scenario.

представление связей с множеством таблиц

Как показано на представленном ниже рисунке, основанном на только что созданных новых данных и связях, в визуальном элементе в нижнем левом углу отображается общий объем продаж (Sales Amount) относительно целей (Target), с расчетом отклонения, отображающим разность, где Sales Amount и Target поступают из двух разных баз данных SQL Server.As shown in the following image, which is based on the new data and relationships we just created, the visual in the lower left corner shows total Sales Amount versus Target, with the variance calculation showing the difference, where Sales Amount and Target are coming from two different SQL Server databases.

визуальный элемент с отображением дополнительных данных

Установка режима хранилищаSetting storage mode

У каждой таблицы в составной модели есть режим хранения, указывающий, на чем основана таблица: на DirectQuery или импорте.Each table in a composite model has a storage mode that indicates whether the table is based on DirectQuery or import. Режим хранения можно просмотреть и изменить в области Свойства.Storage mode can be viewed and modified in the Property pane. Для этого выберите Свойства в контекстном меню, щелкнув правой кнопкой мыши в списке Поля.To get there, select Properties from the Fields list right-click context menu. На приведенном ниже рисунке показан режим хранения (сокращен как Storage... (Режим...) на рисунке из-за ширины области).The following image shows the storage mode (shortened to Storage ... in the image, due to the width of the pane).

Параметр режима хранилища

Также режим хранения можно увидеть в подсказке для каждой таблицы.The storage mode can also be seen on the tooltip for each table.

подсказка с режимом хранения

Для любого файла Power BI Desktop (с расширением .pbix), который содержит таблицы из DirectQuery и импортированные таблицы, в строке состояния режима хранения отображается значение Смешанный.For any Power BI Desktop file (a .pbix file) that contains some tables from DirectQuery and some import tables, the status bar show a storage mode of Mixed. Можно щелкнуть этот термин в строке состояния и легко переключить все таблицы на импорт.You can click on that term in the status bar and easily switched all tables to import.

Подробные сведения о режиме хранения описаны в статье storage mode in Power BI Desktop (Preview) (Режим хранения в Power BI Desktop (предварительная версия)).Details about storage mode are described in full in the storage mode in Power BI Desktop (Preview) article.

Вычисляемые таблицыCalculated tables

Вычисляемые таблицы можно добавить в модель, которая использует DirectQuery. При этом DAX с определением вычисляемой таблицы может ссылаться на импортированные таблицы, таблицы DirectQuery или сочетание тех и других.Calculated tables can be added to a model that uses DirectQuery, and the DAX defining the calculated table can reference either imported or DirectQuery tables, or a combination of both.

Вычисляемые таблицы всегда импортируются, а данные в них обновляются при обновлении таблицы.Calculated tables are always imported, and the data in those tables is refreshed when the table is refreshed. Таким образом, если вычисляемая таблица ссылается на таблицу DirectQuery, то в визуальных элементах, ссылающихся на таблицу DirectQuery, всегда отображаются последние значения из базового источника. Но в визуальных элементах, ссылающихся на вычисляемую таблицу, отображаются значения на момент последнего обновления вычисляемой таблицы.As such, if a calculated table references a DirectQuery table, visuals referencing the DirectQuery table always show the latest values in the underlying source, but visuals referencing the calculated table show the values at the time the calculated table was last refreshed.

Последствия для безопасностиSecurity Implications

Использование составных моделей связано с некоторыми последствиями для безопасности.Composite models have some security implications. Запрос, отправленный к одному источнику данных, может включать значения данных, которые были извлечены из другого источника.A query sent to one data source can include data values that have been retrieved from another different source. Для примера, описанного ранее в этой статье, после создания визуального элемента с отображением объема продаж (Sales Amount) по менеджерам по продуктам (Product Manager) отправляется SQL-запрос к реляционной базе данных о продажах (Sales). Этот запрос может содержать имена менеджеров по продуктам и названия связанных с ними продуктов.For the example described earlier in this article, the visual that shows Sales Amount by Product Manager will result in a SQL query being sent to the Sales relational database, where that SQL query might contain the names of Product Managers and their associated Products.

скрипт, демонстрирующий последствия для безопасности

По этой причине сведения, хранящиеся в электронной таблице, теперь включаются в запрос, отправляемый в реляционную базу данных.Because of this, information that is stored in the spreadsheet is now being included in a query sent to the relational database. Если эти сведения конфиденциальны, необходимо рассмотреть последствия такого сценария для безопасности.If this information is confidential, then the security implications of this should be considered. В особенности нужно учитывать такие последствия:In particular, you should consider the following implications:

  • Любой администратор базы данных, который может просматривать трассировки или журналы аудита, сможет увидеть эту информацию, даже если не имеет разрешений на доступ к данным в исходном источнике (в данном случае разрешений на доступ к файлу Excel).Any administrator of the database who can see traces or audit logs would be able to see this information, even if they did not have permissions to the data in its original source (in this case, permissions to the Excel file).

  • Следует рассмотреть настройки шифрования каждого источника, чтобы избежать ситуации, когда данные, полученные из одного источника по зашифрованному соединению, затем непреднамеренно включаются в запрос, отправляемый к другому источнику по соединению без шифрования.The encryption settings for each source should be considered, to avoid information being retrieved from one source using an encrypted connection, but then inadvertently having it included in a query sent to another source using an unencrypted connection.

Чтобы вы могли подтвердить, что все последствия для безопасности приняты во внимание, в Power BI Desktop отображается предупреждение, когда выполняется определенное действие для создания составной модели.Power BI Desktop displays a warning message when an action is taken to create a composite model, to allow confirmation that any security implications have been considered.

По тем же причинам нужно соблюдать осторожность при открытии файла Power BI Desktop, отправленного из ненадежного источника.For similar reasons, care must be exercised when opening a Power BI Desktop file sent from an untrusted source. Если в этом файле содержатся составные модели, это значит, что сведения, полученные из одного источника (с использованием учетных данных пользователя, открывающего файл), будут отправляться в другой источник данных как часть запроса (где их может просмотреть злоумышленник, создавший файл Power BI Desktop).If that file contains composite models, it means information retrieved from one source (using the credentials of the user opening the file) would be sent to another data source as part of the query (where it could possibly be seen by the malicious author of the Power BI Desktop file). Таким образом, при первом открытии файла Power BI Desktop, содержащего несколько источников, отображается предупреждение.Thus, when opening a Power BI Desktop file for the first time, if it contains multiple sources, a warning is displayed. Это предупреждение аналогично отображающемуся при открытии файла с собственными запросами SQL.This warning is similar to the warning displayed when opening a file that contains native SQL queries.

Влияние на производительностьPerformance Implications

При использовании DirectQuery обязательно следует учитывать воздействие на производительность. Прежде всего убедитесь, что источник серверной части обладает достаточными ресурсами для обеспечения эффективной работы пользователей.When using DirectQuery performance should always be considered, primarily to ensure the backend source has sufficient resources to provide a good experience for users. Эффективная работа означает, что визуальные элементы должны обновляться в течение 5 секунд или быстрее.A good experience means visuals should refresh in 5 seconds or less. Также следует придерживаться советов по производительности из статьи об использовании DirectQuery в Power BI.You should also adhere to the performance advice in the using DirectQuery in Power BI article. При использовании составных моделей руководствуйтесь дополнительными рекомендациями по производительности, так как один визуальный элемент может вызвать отправку запросов к нескольким источникам и результаты одного запроса часто передаются во второй источник.Using composite models adds additional performance considerations, since a single visual can result in sending queries to multiple sources, often passing the results from one query across to a second source. Это может привести к следующим формам выполнения:This situation can result in the following possible forms of execution:

  • SQL-запрос, содержащий большое количество литеральных значений, — например, визуальный элемент с запросом на общий объем продаж (из базы данных SQL) для группы выбранных менеджеров по продуктам (из связанной таблицы, которая была импортирована из электронной таблицы) должен сначала определить, какими продуктами управляли соответствующие менеджеры, прежде чем отправлять SQL-запрос со всеми кодами этих продуктов в предложении WHERE.A SQL query that includes a large number of literal values - for example, a visual requesting total Sales Amount (from the SQL database) for a set of selected Product Managers (from the related table that was imported from a spreadsheet) would first need to find which Products were managed by those Product Managers, before sending a SQL query including all of the product IDs in a WHERE clause.

  • SQL-запрос на более низком уровне детализации, с локально агрегируемыми данными — при использовании того же примера, что и в предыдущем пункте, количество продуктов, соответствующих фильтру менеджеров по продуктам, становится слишком большим. Поэтому на определенном этапе включать их все в предложение WHERE будет нецелесообразно или невозможно.A SQL query that queries at a lower level of granularity, with the data then being aggregated locally - using the same example as the previous bullet item in this list, as the number of Products meeting the filter on Product Manager becomes very large, at a certain point it becomes inefficient or unfeasible to include them all in a WHERE clause. Вместо этого необходимо запросить реляционный источник на более низком уровне продукта, а затем локально агрегировать результаты.Instead, it's necessary to query the relational source at the lower level of Product, and then locally aggregate the results. Если кратность продуктов превышает ограничение в 1 млн, запрос завершится ошибкой.If the cardinality of Products exceeds a limit of 1 million, then the query will fail.

  • Несколько SQL-запросов, по одному на значение GROUP BY — если при агрегировании используется отличительное количество (DistinctCount), сгруппированное по некоторому столбцу из другого источника и если внешний источник не поддерживает эффективную передачу множества литеральных значений, определяющих группирование, необходимо отправить по одному SQL-запросу на каждое значение GROUP BY.Multiple SQL queries, one per group by value - when the aggregation uses DistinctCount, grouped by some column from another source, then if the external source does not support efficient passing of many literal values defining the grouping, it's necessary to send one SQL query per group by value. Например, визуальный элемент, запрашивающий отличительное количество CustomerAccountNumber (из таблицы SQL Server) по менеджерам по продуктам (Product Manager) (из связанной таблицы, которая была импортирована из электронной таблицы), должен будет передать сведения из таблицы Product Managers в запросе, отправляемом к SQL Server.For example, a visual requesting a distinct count of CustomerAccountNumber (from the SQL Server table) by Product Manager (from the related table that was imported from a spreadsheet) would need to pass in the details from the Product Managers table in the query sent to SQL Server. Для других источников, например Redshift, это невыполнимо. Вместо этого будет отправлено по одному SQL-запросу на каждого менеджера по продажам (Sales Manager) (до некоторого практического предела, при превышении которого запрос завершится ошибкой).Over other sources, for example Redshift, this is not feasible and instead there would be one SQL query sent per Sales Manager (up to some practical limit, at which point the query would fail).

Каждый из этих случаев особым образом влияет на производительность. Конкретные последствия зависят от источника данных.Each of these cases has its own implications on performance, with the exact details varying for each data source. Универсальное правило указывает, что пока кратность столбцов, используемых в связи, объединяющей два источника, остается небольшой (несколько тысяч), это не должно оказывать существенного влияния на производительность.A good rule of thumb is that while the cardinality of the columns used in the relationship joining the two sources remains low (a few thousand), then performance should not be significantly impacted. По мере роста кратности следует уделить больше внимания влиянию на итоговую производительность.As this cardinality grows, then more consideration needs to be paid to the impact on the resulting performance.

Кроме того, использование связей многие ко многим означает, что отдельные запросы должны отправляться к базовому источнику для каждого итогового или промежуточного уровня вместо локального агрегирования детальных значений.Additionally, the use of many-to-many relationships means that separate queries must be sent to the underlying source for each total/subtotal level, rather than aggregating the detailed values locally. Таким образом, простой табличный визуальный элемент с итоговой суммой отправит два SQL-запроса, а не один.As such, a simple table visual with totals would send two SQL queries, rather than one.

Рекомендации и ограниченияLimitations and considerations

В этом выпуске составных моделей есть несколько ограничений.There are a few limitations for this release of composite models.

Следующие (многомерные источники) Live Connect нельзя использовать с составными моделями:The following Live Connect (multidimensional) sources cannot be used with composite models:

  • SAP HANASAP HANA
  • SAP Business WarehouseSAP Business Warehouse
  • Службы SQL Server Analysis ServicesSQL Server Analysis Services
  • Наборы данных Power BIPower BI datasets
  • Azure Analysis ServicesAzure Analysis Services

При подключении к этим многомерным источникам с помощью DirectQuery нельзя также подключиться к другому источнику DirectQuery или сочетать их с импортированными данными.When connecting to those multidimensional sources using DirectQuery, you cannot also connect to another DirectQuery source, nor combine with imported data.

Существующие ограничения для использования DirectQuery по-прежнему применяются при применении составных моделей.The existing limitations of using DirectQuery still apply when using composite models. Многие из этих ограничений теперь относятся к таблице в зависимости от режима хранения этой таблицы.Many of those limitations are now per table, depending upon the storage mode of the table. Например, вычисляемый столбец в импортированной таблице может ссылаться на другие таблицы, но вычисляемый столбец в таблице DirectQuery по-прежнему ограничен ссылками только на столбцы той же таблицы.For example, a calculated column on an imported table can refer to other tables, but a calculated column on a DirectQuery table is still restricted to refer only to columns on the same table. Другие ограничения применяются к модели в целом, если все таблицы в пределах модели являются таблицами DirectQuery.Other limitations apply to the model as a whole, if any of the tables within the model are DirectQuery. Например, функции Краткая аналитика и Вопросы и ответы недоступны в модели, если какая-либо из таблиц в ней используется в режиме хранения DirectQuery.For example, the QuickInsights and Q&A features are not available on a model if any of the tables within it has a storage mode of DirectQuery.

Дальнейшие действияNext steps

В следующих статьях содержатся дополнительные сведения о составных моделях, а также подробно описан режим DirectQuery:The following articles describe more about composite models, and also describe DirectQuery in detail.

Статьи о DirectQuery:DirectQuery articles: