Power BI Desktop’ta bileşik modeller kullanmaUse composite models in Power BI Desktop

Daha önce Power BI Desktop'ta raporda bir DirectQuery kullandığınızda, bu rapor için ister DirectQuery ister içeri aktarma olsun başka hiçbir veri bağlantısına izin verilmiyordu.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. Bileşik modellerle bu kısıtlama kaldırılmıştır.With composite models, that restriction is removed. Bir rapor birden çok DirectQuery veya içeri aktarma veri bağlantısından ya da sizin seçtiğiniz herhangi bir bileşimde veri bağlantıları içerebilir.A report can seamlessly include data connections from more than one DirectQuery or import data connection, in any combination you choose.

Power BI Desktop'taki bileşik modeller özelliği birbiriyle ilgili üç özellikten oluştur:The composite models capability in Power BI Desktop consists of three related features:

  • Bileşik modeller: Raporda DirectQuery bağlantıları ve içeri aktarma da dahil olmak üzere herhangi bir bileşimde birden çok veri bağlantısına izin verir.Composite models: Allows a report to have multiple data connections, including DirectQuery connections or import, in any combination. Bileşik modeller bu makalede ayrıntılı bir şekilde açıklanmaktadır.This article describes composite models in detail.

  • Çoka çok ilişkiler: Bileşik modeller sayesinde tablolar arasında çoka-çok ilişkiler kurabilirsiniz.Many-to-many relationships: With composite models, you can establish many-to-many relationships between tables. Bu yaklaşım tablolardaki benzersiz değer gereksinimlerini ortadan kaldırır.This approach removes requirements for unique values in tables. Ayrıca yalnızca ilişki kurmak için yeni tablo eklenmesi gibi eski geçici çözümleri de devre dışı bırakır.It also removes previous workarounds, such as introducing new tables only to establish relationships. Daha fazla bilgi için bkz. Power BI Desktop’ta çoka-çok ilişkileri uygulama.For more information, see Apply many-many relationships in Power BI Desktop.

  • Depolama modu: Artık arka uç veri kaynaklarını hangi görsellerin sorgulayacağını belirtebilirsiniz.Storage mode: You can now specify which visuals query back-end data sources. Sorgu gerektirmeye görseller DirectQuery tabanlı olsa dahi içeri aktarılmaz.Visuals that don't require a query are imported even if they're based on DirectQuery. Bu özellik, performansı artırmanıza ve arka uç yükünü azaltmanıza yardımcı olur.This feature helps improve performance and reduce back-end load. Daha önce, dilimleyiciler gibi basit görseller bile arka uç kaynaklara sorgu başlatabiliyordu.Previously, even simple visuals, such as slicers, initiated queries to back-end sources. Daha fazla bilgi için bkz. Power BI Desktop’ta depolama modunu yönetme.For more information, see Manage storage mode in Power BI Desktop.

Bileşik modelleri kullanmaUse composite models

Bileşik modeller sayesinde Power BI Desktop'ı veya Power BI hizmetini kullanırken farklı türlerdeki veri kaynaklarına bağlanabilirsiniz.With composite models, you can connect to different kinds of data sources when you use Power BI Desktop or the Power BI service. Bu veri bağlantılarını birkaç farklı şekilde kurabilirsiniz:You can make those data connections in a couple of ways:

  • Veri almak için en sık kullanılan yöntemden faydalanarak verileri Power BI'a aktarma.By importing data to Power BI, which is the most common way to get data.
  • DirectQuery'yi kullanarak özgün kaynak deposundaki verilere bağlanma.By connecting directly to data in its original source repository by using DirectQuery. DirectQuery hakkında daha fazla bilgi edinmek için bkz. Power BI'da DirectQuery'yi kullanma.To learn more about DirectQuery, see Use DirectQuery in Power BI.

DirectQuery'yi kullandığınızda bileşik modeller aşağıdaki eylemlerden birini veya ikisini birden gerçekleştiren bir Power BI modeli, örneğin tek bir .pbix Power BI Desktop dosyası oluşturmayı mümkün kılar:When you use DirectQuery, composite models make it possible to create a Power BI model, such as a single .pbix Power BI Desktop file, that does either or both of the following actions:

  • Bir veya birden çok DirectQuery kaynağından verileri birleştirir.Combines data from one or more DirectQuery sources.
  • DirectQuery kaynaklarından verileri birleştirir ve verileri içeri aktarır.Combines data from DirectQuery sources and import data.

Örneğin bileşik modelleri kullanarak şu veri türlerini birleştiren bir model oluşturabilirsiniz:For example, by using composite models, you can build a model that combines the following types of data:

  • Kurumsal veri ambarından alınan satış verileri.Sales data from an enterprise data warehouse.
  • Departman SQL Server veritabanından alınan satış hedefi verileri.Sales-target data from a departmental SQL Server database.
  • Bir elektronik tablosundan içeri aktarılan veriler.Data that's imported from a spreadsheet.

Birden çok DirectQuery kaynağından alınan verileri birleştiren veya DirectQuery'yi içeri aktarılan verilerle birleştiren modeller, bileşik model olarak adlandırılır.A model that combines data from more than one DirectQuery source or that combines DirectQuery with import data is called a composite model.

Her zaman yaptığınız gibi, tablolar farklı kaynaklardan gelse bile tablolar arasında ilişkiler oluşturabilirsiniz.You can create relationships between tables as you always have, even when those tables come from different sources. Kaynaklar arası tüm ilişkiler, gerçek kardinalitelerine bakılmaksızın çoka çok kardinalitesi ile oluşturulur.Any relationships that are cross-source are created with a cardinality of many-to-many, regardless of their actual cardinality. Bunları bire çok, çoğa bir veya bire bir olacak şekilde değiştirebilirsiniz.You can change them to one-to-many, many-to-one, or one-to-one. Hangi kardinaliteyi ayarlarsanız ayarlayın kaynaklar arası ilişkilerin davranışı farklıdır.Whichever cardinality you set, cross-source relationships have different behavior. many tarafından one tarafına değerleri almak için Veri Çözümleme İfadeleri (DAX) işlevlerini kullanamazsınız.You can't use Data Analysis Expressions (DAX) functions to retrieve values on the one side from the many side. Aynı kaynak içinde çoka-çok ilişkilere göre bir performans etkisi de görebilirsiniz.You may also see a performance impact versus many-to-many relationships within the same source.

Not

Bileşik modeller bağlamında, asıl temel veri kaynağından bağımsız olarak tüm içeri aktarılan tablolar aslında tek bir kaynaktır.Within the context of composite models, all imported tables are effectively a single source, regardless of the actual underlying data sources.

Bileşik model örneğiExample of a composite model

Bileşik modele örnek olarak DirectQuery kullanılarak SQL Server'da bulunan bir kurumsal veri ambarına bağlanmış olan bir raporu düşünebilirsiniz.For an example of a composite model, consider a report that has connected to a corporate data warehouse in SQL Server by using DirectQuery. Bu örnekte veri ambarında aşağıdaki görüntüde gösterildiği gibi Sales by Country, Quarter ve Bike (Product) verileri bulunur:In this instance, the data warehouse contains Sales by Country, Quarter, and Bike (Product) data, as shown in the following image:

Bileşik modeller için ilişki görünümü

Bu noktada, bu kaynaktan alanları kullanarak basit görseller oluşturabilirsiniz.At this point, you could build simple visuals by using fields from this source. Aşağıdaki resimde seçili üç aylık dönemde ProductName alanına göre toplam satış miktarı gösterilir.The following image shows total sales by ProductName, for a selected quarter.

Verilere dayanan görsel

Peki bir her bir ürüne atanmış olan ürün yöneticilerini ve pazarlama önceliğini içeren bir Office Excel elektronik tablonuz varsa ne yapabilirsiniz?But what if you have data in an Office Excel spreadsheet about the product manager who's assigned to each product, along with the marketing priority? Sales Amount değerini Product Manager ölçütüne göre görüntülemek istiyorsanız bu yerel verileri kurumsal veri ambarına eklemek mümkün olmayabilir.If you want to view Sales Amount by Product Manager, it might not be possible to add this local data to the corporate data warehouse. Veya en iyi ihtimalle aylar sürebilir.Or it might take months at best.

DirectQuery kullanmak yerine satış verilerini veri ambarından içeri aktarmak mümkün olabilir.It might be possible to import that sales data from the data warehouse, instead of using DirectQuery. Ardından satış verilerini elektronik tablodan içeri aktardığınız verilerle birleştirebilirsiniz.And the sales data could then be combined with the data that you imported from the spreadsheet. Ancak ilk etapta DirectQuery'nin kullanılmasını gerektirdiğinden bu yaklaşım makul değildir.However, that approach is unreasonable, for the reasons that lead to using DirectQuery in the first place. Nedenler şunlar olabilir:The reasons could include:

  • Bağlı kaynakta uygulanan güvenlik kurallarının birleşimi.Some combination of the security rules enforced in the underlying source.
  • En son verileri görüntüleme gereksinimi.The need to be able to view the latest data.
  • Verilerin ölçeğinin büyük olması.The sheer scale of the data.

Bu noktada bileşik modeller devreye girer.Here's where composite models come in. Bileşik modeller size DirectQuery kullanarak veri ambarına bağlanma ve ardından ek kaynaklar için Veri al işlevini kullanma imkanı sunar.Composite models let you connect to the data warehouse by using DirectQuery and then use Get data for additional sources. Bu örnekte ilk olarak kurumsal veri ambarıyla DirectQuery bağlantısı kurduk.In this example, we first establish the DirectQuery connection to the corporate data warehouse. Ardından Veri al işlevini kullanarak Excel'i seçip yerel verilerimizi içeren elektronik tabloyu gösterdik.We use Get data, choose Excel, and then navigate to the spreadsheet that contains our local data. Son olarak Product Names, atanan Sales Manager ve Priority değerlerini içeren elektronik tabloyu içeri aktardık.Finally, we import the spreadsheet that contains the Product Names, the assigned Sales Manager, and the Priority.

Gezgin penceresi

Alanlar listesinde iki tablo görebilirsiniz: SQL Server'dan alınan Bike tablosu ve yeni bir ProductManagers tablosu.In the Fields list, you can see two tables: the original Bike table from SQL Server and a new ProductManagers table. Yeni tablo, Excel'den içeri aktarılan verileri içerir.The new table contains the data that's imported from Excel.

Tabloların Alanlar görünümü

Benzer biçimde, Power BI Desktop'ta İlişki görünümüne baktığımızda artık ProductManagers adlı ek tabloyu görürüz.Similarly, in the Relationship view in Power BI Desktop, we now see an additional table called ProductManagers.

Tabloların ilişki görünümü

Şimdi bu tabloları modeldeki diğer tablolarla ilişkilendirmemiz gerekiyor.We now need to relate these tables to the other tables in the model. Her zamanki gibi SQL Server'dan alınan Bike tablosu ile içeri aktarılan ProductManagers tablosu arasında bir ilişki oluşturacağız.As always, we create a relationship between the Bike table from SQL Server and the imported ProductManagers table. Başka bir deyişle bu ilişkiyi Bike[ProductName] ile ProductManagers[ProductName] arasında kurmuş olacağız.That is, the relationship is between Bike[ProductName] and ProductManagers[ProductName]. Önceden belirtildiği gibi, kaynak boyunca devam eden ilişkiler varsayılan olarak çoka-çok kardinalitesine sahiptir.As discussed earlier, all relationships that go across source default to many-to-many cardinality.

"İlişki oluştur" penceresi

Oluşturduğumuz ilişki, Power BI Desktop'taki İlişki görünümünde gösterilir.Now that we've established this relationship, it's displayed in the Relationship view in Power BI Desktop, as we would expect.

Yeni İlişki görünümü

Artık Alanlar listesindeki alanlardan birini kullanarak görsel oluşturabiliriz.We can now create visuals by using any of the fields in the Fields list. Bu yaklaşım, birden fazla veri kaynağından alınan verileri sorunsuz bir şekilde birleştirir.This approach seamlessly blends data from multiple sources. Örneğin her bir Product Manager için toplam SalesAmount miktarı aşağıdaki görüntüde gösterilmiştir:For example, the total SalesAmount for each Product Manager is displayed in the following image:

Alanlar bölmesi

Aşağıdaki örnekte Product veya Customer gibi bir başka bir yerden içeri aktarılan ek verilerle genişletilmiş bir boyut tablosu gösterilir.The following example displays a common case of a dimension table, such as Product or Customer, that's extended with some extra data imported from somewhere else. Tablolar, farklı kaynaklara bağlanmak için DirectQuery'yi de kullanabilir.It's also possible to have tables use DirectQuery to connect to various sources. Örneğimize devam edecek olursak Country ve Period başına SalesTargets değerlerinin ayrı bir departman veritabanında depolandığını düşünelim.To continue with our example, imagine that Sales Targets per Country and Period are stored in a separate departmental database. Aşağıdaki resimde de gösterildiği şekilde, her zaman yapabileceğiniz gibi bu verilere bağlanmak için Veri al’ı kullanabilirsiniz:As usual, you can use Get data to connect to that data, as shown in the following image:

Gezgin penceresi

Daha önce yaptığımıza benzer şekilde, yeni tabloyla modeldeki diğer tablolar arasında ilişkiler oluşturabilir ve tablo verilerini birleştiren görseller oluşturabiliriz.As we did earlier, we can create relationships between the new table and other tables in the model and then create visuals that combine the table data. Şimdi yeni ilişkiler kurduğumuz İlişkiler görünümüne yeniden bakalım:Let's look again at the Relationships view, where we've established the new relationships:

Birçok tablosu olan ilişki görünümü

Aşağıdaki görüntüde, yeni veriler ve oluşturduğumuz ilişkiler kullanılmıştır.The next image is based on the new data and relationships we created. Sol alttaki görselde Sales Amount ile Target karşılaştırması gösterilmiştir ve fark hesaplaması, farkı göstermektedir.The visual at the lower left shows total Sales Amount versus Target, and the variance calculation shows the difference. Sales Amount ve Target verileri iki farklı SQL Server veritabanından alınmaktadır.The Sales Amount and Target data come from two different SQL Server databases.

Daha fazla veri gösteren görüntü

Depolama modunu ayarlamaSet the storage mode

Bileşik modeldeki her tablo, tablonun DirectQuery'ye veya içeri aktarmaya dayanıp dayanmadığını gösteren bir depolama moduna sahiptir.Each table in a composite model has a storage mode that indicates whether the table is based on DirectQuery or import. Depolama modu, Özellik bölmesinde görüntülenebilir ve değiştirilebilir.The storage mode can be viewed and modified in the Property pane. Depolama modunu görüntülemek için Alanlar listesindeki bir tabloya sağ tıklayın ve Özellikler'i seçin.To display the storage mode, right-click a table in the Fields list, and then select Properties. Aşağıdaki görüntüde SalesTargets tablosunun depolama modu gösterilmiştir.The following image shows the storage mode for the SalesTargets table.

Depolama modu her tablonun araç ipucunda da görüntülenebilir.The storage mode can also be viewed on the tooltip for each table.

Depolama modunun görüntülendiği araç ipucu

DirectQuery'den bazı dosyalar ve bazı içeri aktarma tabloları içeren herhangi bir Power BI Desktop dosyası ( .pbix dosyası) için, durum çubuğunda Karma olarak adlandırılan depolama modu görüntülenir.For any Power BI Desktop file (a .pbix file) that contains some tables from DirectQuery and some import tables, the status bar displays a storage mode called Mixed. Durum çubuğunda bu terime tıklayabilir ve tüm tabloları kolayca içeri aktarmaya geçirebilirsiniz.You can click that term in the status bar and easily switch all tables to import.

Depolama modu hakkında daha fazla bilgi için bkz. Power BI Desktop’ta depolama modunu yönetme.For more information about storage mode, see Manage storage mode in Power BI Desktop.

Not

Power BI Desktop'ta ve Power BI hizmetinde Karma depolama modu kullanabilirsiniz.You can use Mixed storage mode in Power BI Desktop and in the Power BI service.

Hesaplanan tablolarCalculated tables

DirectQuery kullanan bir modele hesaplanan tablolar ekleyebilirsiniz.You can add calculated tables to a model that uses DirectQuery. Hesaplanan tabloyu tanımlayan Veri Çözümleme İfadeleri (DAX), içeri aktarılan tablolara veya DirectQuery tablolarına veya ikisinin birleşimine başvurabilir.The Data Analysis Expressions (DAX) that define the calculated table can reference either imported or DirectQuery tables or a combination of the two.

Hesaplanan tablolar her zaman içeri aktarılır ve tabloları yenilediğinizde verileri yenilenir.Calculated tables are always imported, and their data is refreshed when you refresh the tables. Hesaplanan tablo bir DirectQuery tablosuna başvuruyorsa, DirectQuery tablosuna başvuran görsellerde her zaman bağlı kaynaktaki en son değerler gösterilir.If a calculated table refers to a DirectQuery table, visuals that refer to the DirectQuery table always show the latest values in the underlying source. Alternatif olarak hesaplanan tabloya başvuran görseller, hesaplanan tablo son yenilendiğinde alınan değerleri gösterir.Alternatively, visuals that refer to the calculated table show the values at the time when the calculated table was last refreshed.

Güvenlik üzerindeki etkileriSecurity implications

Bileşik modellerin güvenlik üzerinde bazı etkileri vardır.Composite models have some security implications. Bir veri kaynağına gönderilen sorgu başka bir kaynaktan alınmış olan veri değerlerini içerebilir.A query sent to one data source can include data values that have been retrieved from another source. Önceki örnekte Product Manager ölçütüne göre (Sales Amount) miktarını gösteren görsel, Sales ilişkisel veritabanına bir SQL sorgusu göndermektedir.In the earlier example, the visual that shows (Sales Amount) by Product Manager sends an SQL query to the Sales relational database. SQL sorgusu Product Manager adlarını ve bunlarla ilişkili Products değerlerini içerebilir.That SQL query might contain the names of Product Managers and their associated Products.

Güvenlik üzerindeki etkilerini gösteren betik

Sonuç olarak elektronik tabloda depolanan bilgiler şimdi ilişkisel veritabanına gönderilen sorguya eklenir.Consequently, information that's stored in the spreadsheet is now included in a query that's sent to the relational database. Bu bilgiler gizliyse, bunun güvenlik üzerindeki etkileri dikkate alınmalıdır.If this information is confidential, you should consider the security implications. Özellikle aşağıdaki noktaları dikkate almanız gerekir:In particular, consider the following points:

  • Özgün kaynaktaki verilere erişim izni olmayan ancak izlemeleri veya denetim günlüklerini görüntüleyebilen veritabanı yöneticileri bu bilgileri görüntüleyebilir.Any administrator of the database who can view traces or audit logs could view this information, even without permissions to the data in its original source. Bu örnekte yöneticinin Excel dosyası için gerekli izinlere sahip olması gerekmektedir.In this example, the administrator would need permissions to the Excel file.

  • Kaynaklarla ilgili şifreleme ayarlarının dikkate alınması gerekir.The encryption settings for each source should be considered. Bir kaynaktan şifreli bağlantıyla aldığınız bilgileri yanlışlıkla başka bir kaynağa şifrelenmemiş bağlantı üzerinden gönderilen bir sorguya dahil etmekten kaçınmak istersiniz.You want to avoid retrieving information from one source by an encrypted connection and then inadvertently including it in a query that's sent to another source by an unencrypted connection.

Tüm güvenlik etkilerinin dikkate alınmasını sağlamak için, bileşik model oluşturduğunuzda Power BI Desktop'ta uyarı iletisi görüntülenir.To allow confirmation that you've considered any security implications, Power BI Desktop displays a warning message when you create a composite model.

Benzer nedenlerle, güvenilmeyen bir kaynaktan gönderilen Power BI Desktop dosyalarını açarken de dikkatli olmanız gerekir.For similar reasons, be careful when you open a Power BI Desktop file that's sent from an untrusted source. Dosyada bileşik modeller varsa bir kişinin bir kaynaktan dosyayı açan kullanıcının kimlik bilgilerini kullanarak aldığı bilgiler, sorgunun bir parçası olarak başka bir veri kaynağına gönderilecektir.If the file contains composite models, information that someone retrieves from one source by using the credentials of the user who opens the file would be sent to another data source as part of the query. Power BI Desktop dosyasının yazarının kötü niyetli olması durumunda bu bilgiler görüntülenebilir.The information could be viewed by the malicious author of the Power BI Desktop file. Birden fazla kaynak içeren bir Power BI Desktop dosyasını ilk kez açtığınızda Power BI Desktop'ta bir uyarı görüntülenir.When you initially open a Power BI Desktop file that contains multiple sources, Power BI Desktop displays a warning. Bu uyarı, yerel SQL sorgularını içeren bir dosyayı açtığınızda görüntülenen uyarılara benzer.The warning is similar to the one that's displayed when you open a file that contains native SQL queries.

Performans üzerindeki etkileriPerformance implications

DirectQuery kullanılırken, öncelikle arka uç kaynağının kullanıcılara iyi bir deneyim sağlamaya yetecek kaynakları olduğundan emin olmak için performans konusunu dikkate almanız gerekir.When you use DirectQuery, you should always consider performance, primarily to ensure that the back-end source has sufficient resources to provide a good experience for users. İyi deneyim, görsellerin en fazla beş saniyede yenilenmesi anlamına gelir.A good experience means that the visuals refresh in five seconds or less. Diğer performans önerileri için bkz. Power BI’da DirectQuery’yi kullanma hakkında.For more performance advice, see About using DirectQuery in Power BI.

Bileşik modellerin kullanılması da performansı etkileyen etmenlerden biridir.Using composite models adds additional performance considerations. Tek bir görsel, birden fazla kaynağa sorgu gönderir ve genellikle bir sorgunun sonuçları ikinci bir kaynağa iletilir.A single visual can result in sending queries to multiple sources, which often pass the results from one query across to a second source. Bu durum sonucunda aşağıdaki yürütme biçimleri söz konusu olabilir:This situation can result in the following forms of execution:

  • Çok fazla sayıda hazır değer içeren bir SQL sorgusu: Örneğin, bir dizi seçili Product Managers için toplam Sales Amount değerini isteyen bir görselin önce söz konusu ürün yöneticileri tarafından yönetilen Products değerlerini bulması gerekebilir.An SQL query that includes a large number of literal values: For example, a visual that requests total Sales Amount for a set of selected Product Managers would first need to find which Products were managed by those product managers. Bu işlemin görsel WHERE yan tümcesinde tüm ürün kimliklerini içeren bir SQL sorgusu göndermeden önce gerçekleştirilmesi gerekir.This sequence must happen before the visual sends an SQL query that includes all of the product IDs in a WHERE clause.

  • Daha düşük bir ayrıntı düzeyinde, daha sonra yerel olarak toplanmış verilerle sorgulayan bir SQL sorgusu: Product Manager filtre ölçütüne uyan Products sayısının çok fazla artmasıyla, belirli bir noktada bunların tümünü WHERE yan tümcesine eklemek verimsiz veya imkansız hale gelebilir.An SQL query that queries at a lower level of granularity, with the data later being aggregated locally: As the number of Products that meet the filter criteria on Product Manager grows large, it can become inefficient or unfeasible to include all products in a WHERE clause. Bunun yerine, ilişkisel kaynağı daha düşük bir Products düzeyinde sorgulayabilir ve ardından sonuçları yerel olarak toplayabilirsiniz.Instead, you can query the relational source at the lower level of Products and then aggregate the results locally. Products değerinin kardinalitesi 1 milyon sınırını aşarsa, sorgu başarısız olur.If the cardinality of Products exceeds a limit of 1 million, the query fails.

  • Değere göre grup başına bir sorgu olmak üzere birden çok SQL sorgusu: Toplamada başka bir kaynaktan bir sütuna göre gruplandırılmış DistinctCount kullanıldığında, dış kaynak gruplandırmayı tanımlayan birçok hazır değerin verimli bir şekilde geçirilmesini desteklemiyorsa, değere göre grup başına bir SQL sorgusu göndermek gerekebilir.Multiple SQL queries, one per group by value: When the aggregation uses DistinctCount and is grouped by a column from another source, and if the external source doesn't support efficient passing of many literal values that define the grouping, it's necessary to send one SQL query per group by value.

    Elektronik tablodan içeri aktarılmış Product Managers'a göre SQL Server tablosundan ayrı CustomerAccountNumber sayımını isteyen bir görselin, SQL Server'a gönderilen sorgudaki Product Managers tablosundan ayrıntıları geçirmesi gerekebilir.A visual that requests a distinct count of CustomerAccountNumber from the SQL Server table by Product Managers imported from the spreadsheet would need to pass in the details from the Product Managers table in the query that's sent to SQL Server. Diğer kaynaklar, örneğin Redshift üzerinde bu uygulanabilir bir yöntem değildir.Over other sources, Redshift, for example, this action is unfeasible. Bunun yerine Sales Manager başına bir SQL sorgusu olabilir (belirli bir uygulama sınırına kadar; bu sınırdan sonra sorgu başarısız olacaktır).Instead, there would be one SQL query sent per Sales Manager, up to some practical limit, at which point the query would fail.

Bu durumlardan her birinin performans üzerinde kendi etkileri vardır ve tam ayrıntılar her veri kaynağında değişiklik gösterir.Each of these cases has its own implications on performance, and the exact details vary for each data source. İki kaynağı birleştiren ilişkide kullanılan sütunların kardinalitesi düşük kalmasına rağmen (birkaç bin) performans üzerinde önemli bir etkisi olmaz.Although the cardinality of the columns used in the relationship that joins the two sources remains low, a few thousand, performance shouldn't be affected. Kardinalite arttıkça, sonuçta elde edilecek performans üzerindeki etkiyi daha fazla dikkate almanız gerekir.As this cardinality grows, you should pay more attention to the impact on the resulting performance.

Bunlara ek olarak, çoka-çok ilişkilerinin kullanılması ayrıntılı değerleri yerel olarak toplamak yerine her toplam veya alt toplam düzeyi için temel kaynağa ayrı sorguların gönderilmesi gerektiği anlamına gelir.Additionally, the use of many-to-many relationships means that separate queries must be sent to the underlying source for each total or subtotal level, rather than aggregating the detailed values locally. Toplamları olan basit bir tablo görseli bir yerine iki SQL sorgusu gönderir.A simple table visual with totals would send two SQL queries, rather than one.

Sınırlamalar ve önemli noktalarLimitations and considerations

Bileşik modellerin bu sürümünde birkaç sınırlama vardır:This release of composite models presents a few limitations:

Şu anda yalnızca SQL, Oracle ve Teradata veri kaynaklarına bağlanan bileşik modellerde artımlı yenileme desteklenir.Currently, incremental refresh is supported for composite models connecting to SQL, Oracle, and Teradata data sources only.

Aşağıdaki Live Connect çok boyutlu kaynakları bileşik modellerle kullanılamaz:The following Live Connect multi-dimensional sources can't be used with composite models:

  • SAP HANASAP HANA
  • SAP Business WarehouseSAP Business Warehouse
  • SQL Server Analysis ServicesSQL Server Analysis Services
  • Power BI veri kümeleriPower BI datasets
  • Azure Analysis ServicesAzure Analysis Services

Söz konusu çok boyutlu kaynaklara DirectQuery kullanarak bağlandığınızda, başka bir DirectQuery kaynağına bağlanamaz veya içeri aktarılan verilerle birleştiremezsiniz.When you connect to these multi-dimensional sources by using DirectQuery, you can't connect to another DirectQuery source or combine it with import data.

DirectQuery'nin mevcut sınırlamaları bileşik modelleri kullanırken de geçerlidir.The existing limitations of DirectQuery still apply when you use composite models. Bu sınırlamaların birçoğu şimdi tablonun depolama moduna bağlı olarak tablo başına uygulanır.Many of these limitations are now per table, depending upon the storage mode of the table. Örneğin, içeri aktarılan tablodaki hesaplanan sütun başka tablolara başvurabilir ama DirectQuery tablosundaki hesaplanan sütun yine aynı tablodaki sütunlara başvurabilir.For example, a calculated column on an import table can refer to other tables, but a calculated column on a DirectQuery table can still refer only to columns on the same table. Model içindeki tablolardan herhangi biri DirectQuery ise, diğer sınırlamalar modelin tamamına uygulanır.Other limitations apply to the model as a whole, if any of the tables within the model are DirectQuery. Örneğin, modelin içindeki tablolardan herhangi birinin depolama modu DirectQuery olduğunda, modelde QuickInsights ve Soru ve Yanıt özellikleri kullanılamaz.For example, the QuickInsights and Q&A features aren't available on a model if any of the tables within it has a storage mode of DirectQuery.

Sonraki adımlarNext steps

Bileşik modeller ve DirectQuery hakkında daha fazla bilgi için aşağıdaki makalelere bakın:For more information about composite models and DirectQuery, see the following articles: