Power BI'da DirectQuery kullanarak SAP HANA veri kaynaklarına bağlanmaConnect to SAP HANA data sources by using DirectQuery in Power BI

DirectQuery kullanarak SAP HANA veri kaynaklarına doğrudan bağlanabilirsiniz.‎You can connect to SAP HANA data sources directly using DirectQuery. SAP HANA’ya bağlanmak için kullanabileceğiniz iki seçenek vardır:There are two options when connecting to SAP HANA:

  • SAP HANA’ya çok boyutlu bir kaynak olarak davranma (varsayılan): Bu durumdaki davranış, Power BI SAP Business Warehouse veya Analysis Services gibi diğer çok boyutlu kaynaklara bağlanmaya benzer.Treat SAP HANA as a multi-dimensional source (default): In this case, the behavior will be similar to when Power BI connects to other multi-dimensional sources like SAP Business Warehouse, or Analysis Services. Bu ayar kullanılarak SAP HANA’ya bağlanılırken tek bir analiz veya hesaplama görünümü seçilir ve bu görünümün tüm ölçüleri, hiyerarşileri ve öznitelikleri alan listesinde sunulur.When connecting to SAP HANA using this setting, a single analytic or calculation view is selected and all the measures, hierarchies and attributes of that view will be available in the field list. Görseller oluşturulurken toplu veriler her zaman SAP HANA’dan alınır.As visuals are created, the aggregate data will always be retrieved from SAP HANA. Bu, önerilen yaklaşımdır ve SAP HANA üzerinden yeni DirectQuery raporları için varsayılandır.This is the recommended approach, and is the default for new DirectQuery reports over SAP HANA.

  • SAP HANA’ya bir ilişkisel kaynak olarak davranma: Bu durumda, Power BI SAP HANA’yı ilişkisel bir kaynak olarak kabul eder.Treat SAP HANA as a relational source: In this case, Power BI treats SAP HANA as a relational source. Bu özellik, daha fazla esneklik sunar.This offers greater flexibility. Ölçümlerin beklendiği gibi toplandığından emin olmak ve performans sorunlarından kaçınmak için bu yaklaşımda dikkatli olunması gerekir.Care must be taken with this approach to ensure that measures are aggregated as expected, and to avoid performance issues.

Bağlantı yaklaşımı genel bir araç seçeneği tarafından belirlenir ve bu seçenek, aşağıdaki resimde gösterildiği gibi Dosya > Seçenekler ve ayarlar seçilip Seçenekler > DirectQuery seçildikten sonra SAP HANA’ya bir ilişkisel kaynak olarak davran seçeneği belirlenerek ayarlanır.The connection approach is determined by a global tool option, which is set by selecting File > Options and settings and then Options > DirectQuery, then selecting the option Treat SAP HANA as a relational source, as shown in the following image.

DirectQuery seçeneklerini gösteren Seçenekler iletişim kutusunun ekran görüntüsü.

SAP HANA’ya bir ilişkisel kaynak olarak davranma seçeneği, SAP HANA üzerinden DirectQuery kullanılarak oluşturulan tüm yeni raporlar için kullanılan yaklaşımı belirler.The option to treat SAP HANA as a relational source controls the approach used for any new report using DirectQuery over SAP HANA. Bunun, geçerli rapordaki hiçbir mevcut SAP HANA bağlantısı üzerinde ya da diğer açık raporlardaki bağlantılar üzerinde etkisi yoktur.It has no effect on any existing SAP HANA connections in the current report, nor on connections in any other reports that are opened. Bu nedenle, o sırada seçenek işaretli değilse Veri Al kullanılarak SAP HANA’ya yeni bir bağlantı eklendiğinde bu bağlantının SAP HANA’yı çok boyutlu bir kaynak olarak kabul etmesi sağlanır.So if the option is currently unchecked, then upon adding a new connection to SAP HANA using Get Data, that connection will be made treating SAP HANA as a multi-dimensional source. Ancak, aynı zamanda SAP HANA’ya bağlanan farklı bir rapor açılırsa, bu rapor raporun oluşturulması sırasında ayarlanan seçeneğe uygun olarak davranmaya devam eder. Diğer bir deyişle, SAP HANA’ya bağlanan ve Şubat 2018’den oluşturulmuş tüm raporlar SAP HANA’ya ilişkisel bir kaynak olarak davranmaya devam edecektir.However, if a different report is opened that also connects to SAP HANA, then that report will continue to behave according to the option that was set at the time it was created, which means that any reports connecting to SAP HANA that were created prior to February 2018 will continue to treat SAP HANA as a relational source.

Bu iki yaklaşımdaki davranışlar birbirinden farklıdır ve mevcut bir raporun bir davranıştan diğerine geçirilmesi mümkün değildir.The two approaches constitute different behavior, and it's not possible to switch an existing report from one approach to the other.

Bu iki yaklaşımın her birine ilişkin diğer ayrıntılara sırasıyla göz atalım.Let's look at more detail about each of these two approaches, in turn.

SAP HANA’ya çok boyutlu bir kaynak olarak davranma (varsayılan)Treat SAP HANA as a multi-dimensional source (default)

SAP HANA ile kurulan tüm yeni bağlantılar varsayılan olarak bu bağlantı yöntemini kullanıp SAP HANA’yı çok boyutlu bir kaynak olarak kabul eder.All new connections to SAP HANA use this connection method by default, treating SAP HANA as a multi-dimensional source. SAP HANA ile kurulan bir bağlantıyı ilişkisel bir kaynak olarak kabul etmek için Dosya > Seçenekler ve ayarlar > Seçenekler adımlarını izleyip Direct Query > SAP HANA’ya bir ilişkisel kaynak olarak davran seçeneğinin altındaki kutuyu işaretlemeniz gerekir.In order to treat a connection to SAP HANA as a relational source, you must select File > Options and settings > Options, then check the box under Direct Query > Treat SAP HANA as a relational source. Bu özellik Önizlemede olduğu sürece, çok boyutlu yaklaşım kullanılarak oluşturulan raporlar Power BI hizmetinde yayımlanamaz ve bunun yapılması durumunda rapor Power BI hizmetinde açılınca hatalar oluşur.While this feature is in Preview, reports created using the multi-dimensional approach cannot be published to the Power BI service, and doing so will result in errors when the report is opened within the Power BI service.

SAP HANA’ya çok boyutlu bir kaynak olarak bağlanılırken aşağıdaki konular geçerli olur:When connecting to SAP HANA as a multi-dimensional source, the following considerations apply:

  • Veri Al Gezgini’nde tek bir SAP HANA görünümü seçilebilir.In the Get Data Navigator, a single SAP HANA view can be selected. Tek tek ölçü veya özniteliklerin seçilmesi mümkün değildir.It is not possible to select individual measures or attributes. Verilerin içeri aktarılmasından veya SAP HANA’ya ilişkisel bir kaynak olarak davranılırken DirectQuery kullanılmasından farklı olarak bağlanma sırasında sorgu tanımlanmaz.There is no query defined at the time of connecting, which is different from importing data or when using DirectQuery while treating SAP HANA as a relational source. Bu durum, bu bağlantı yöntemi seçilirken doğrudan bir SAP HANA SQL sorgusu kullanmanın mümkün olmadığı anlamına da gelir.This also means that it's not possible to directly use an SAP HANA SQL query when selecting this connection method.

  • Seçili görünümün tüm ölçüleri, hiyerarşileri ve öznitelikleri alan listesinde görüntülenir.All the measures, hierarchies, and attributes of the selected view will be displayed in the field list.

  • Bir ölçü bir görselde kullanılırken görsel için gerekli bir toplama düzeyinde ölçü değerini almak üzere SAP HANA sorgulanır.As a measure is used in a visual, SAP HANA will be queried to retrieve the measure value at the level of aggregation necessary for the visual. Bu nedenle, eklenebilir olmayan ölçülerle (sayaçlar, oranlar, vb.) işlem yapılırken tüm toplamalar SAP HANA tarafından gerçekleştirilir ve Power BI tarafından başka toplama gerçekleştirilmez.So when dealing with non-additive measures (counters, ratios, and so on) all aggregations are performed by SAP HANA, and no further aggregation is performed by Power BI.

  • SAP HANA’dan her zaman doğru toplama değerlerinin elde edilebilmesini sağlamak için belirli kısıtlamaların uygulanması gerekir.To ensure the correct aggregate values can always be obtained from SAP HANA, certain restrictions must be imposed. Örneğin, hesaplanan sütunlar eklemek ya da birden çok SAP HANA görünümünden alınan verileri aynı raporda birleştirmek mümkün değildir.For example, it's not possible to add calculated columns, or to combine data from multiple SAP HANA views within the same report.

SAP HANA’ya çok boyutlu bir kaynak olarak davranılması, alternatif ilişkisel yaklaşım tarafından sağlanan düzeyde yüksek esneklik sağlamaz, ancak daha basittir ve daha karmaşık SAP HANA ölçüleri ile işlem yapılırken doğru toplama değerlerinin elde edilmesini ve genel olarak performansın artmasını sağlar.Treating SAP HANA as a multi-dimensional source does not offer the greater flexibility provided by the alternative relational approach, but it is simpler, and ensures correct aggregate values when dealing with more complex SAP HANA measures, and generally results in higher performance.

Alan listesi, SAP HANA görünümünden alınan tüm ölçülerin, özniteliklerin ve hiyerarşilerin listesini içerir.The Field list will include all measures, attributes, and hierarchies from the SAP HANA view. Bu bağlantı yöntemi kullanılırken geçerli olan aşağıdaki davranışlara dikkat edin:Note the following behaviors that apply when using this connection method:

  • En az bir hiyerarşiye dahil edilen herhangi bir öznitelik varsayılan olarak gizlenir.Any attribute that is included in at least one hierarchy will be hidden by default. Bununla birlikte, bunlar gerekirse alan listesinden Gizli öğeleri görüntüle seçilerek görülebilir.However, they can be seen if required by selecting View hidden from the context menu on the field list. Bunlar gerekirse aynı bağlam menüsünden görünür hale getirilebilir.From the same context menu they can be made visible, if required.

  • SAP HANA’da bir öznitelik, etiketi olarak başka bir özniteliği kullanacak şekilde tanımlanabilir.In SAP HANA, an attribute can be defined to use another attribute as its label. Örneğin, Ürün (1,2,3, vb. değerlerine sahip) öğesi ProductName (Bisiklet, Gömlek, Eldiven vb. değerlerine sahip) öğesini etiket olarak kullanabilir.For example, Product (with values 1,2,3, and so on) could use ProductName (with values Bike, Shirt, Gloves, and so on) as its label. Bu durumda, alan listesinde Bisiklet, Gömlek, Eldiven, vb. değerlerine sahip Ürün adlı tek bir alan gösterilir, ancak bu değerlerin sıralanması ve benzersizlik durumlarının belirlenmesi 1,2,3 anahtar değerlerine göre gerçekleştirilir.In this case, a single field Product will be shown in the field list, whose values will be the labels Bike, Shirt, Gloves, and so on, but which will be sorted by, and with uniqueness determined by, the key values 1,2,3. Gerekirse temel anahtar değerlerine erişim imkanı tanıyan gizli bir Product.Key sütunu da oluşturulur.A hidden column Product.Key is also created, allowing access to the underlying key values if required.

Temel alınan SAP HANA görünümünde tanımlanan tüm değişkenler bağlanma sırasında görüntülenir ve gerekli değerler girilebilir.Any variables defined in the underlying SAP HANA view will be displayed at the time of connecting, and the necessary values can be entered. Bu değerler daha sonra şeritten Sorguları Düzenle seçeneği belirlenip görüntülenen açılan menüden Parametreleri Yönet seçilerek değiştirilebilir.Those values can subsequently be changed by selecting Edit Queries from the ribbon, and then Manage Parameters from the drop-down menu displayed.

SAP HANA’dan her zaman doğru toplama verilerinin alınabilmesini sağlama gereksinimi göz önünde bulundurulduğunda, izin verilen modelleme işlemleri DirectQuery’nin kullanıldığı genel duruma göre daha kısıtlıdır.The modeling operations allowed are more restrictive than in the general case when using DirectQuery, given the need to ensure that correct aggregate data can always be obtained from SAP HANA. Bununla birlikte, ölçü tanımlama, alanları yeniden adlandırıp gizleme ve görüntü biçimleri tanımlama dahil olmak üzere birçok ekleme ve değişiklik yapılabilir.However, it's still possible to make many additions and changes, including defining measures, renaming and hiding fields, and defining display formats. Yenileme sırasında tüm bu değişiklikler korunur ve SAP HANA görünümünde gerçekleştirilen, çakışmayan tüm değişiklikler uygulanır.All such changes will be preserved on refresh, and any non-conflicting changes made to the SAP HANA view will be applied.

Modellemeye ilişkin ek kısıtlamalarAdditional modeling restrictions

DirectQuery kullanılarak SAP HANA’ya bağlanılırken (çok boyutlu kaynak olarak davranma) geçerli olan birincil ek modelleme kısıtlamaları şunlardır:The primary additional modeling restrictions when connecting to SAP HANA using DirectQuery (treat as multi-dimensional source) are the following:

  • Hesaplanmış sütunlar desteklenmez: Hesaplanmış sütun oluşturma özelliği devre dışı bırakılmıştır.No support for calculated columns: The ability to create calculated columns is disabled. Bu, hesaplanmış sütunlar oluşturan Gruplandırma ve Kümeleme özelliklerinin de kullanılamadığı anlamına gelir.This also means that Grouping and Clustering, which create calculated columns, are not available.
  • Ölçüler için ek sınırlamalar: Ölçülerde kullanılan DAX ifadelerinde, SAP HANA tarafından sunulan destek düzeyini yansıtan ek sınırlamalar söz konusudur.Additional limitations for measures: There are additional limitations imposed on the DAX expressions that can be used in measures, to reflect the level of support offered by SAP HANA.
  • İlişki tanımlama desteklenmez: Bir raporun içinde tek bir görünüm sorgulanabilir ve bu nedenle ilişki tanımlama desteklenmez.No support for defining relationships: Only a single view can be queried within a report, and as such, there's no support for defining relationships.
  • Veri Görünümü yoktur: Veri Görünümü normalde tabloda ayrıntı düzeyindeki verileri gösterir.No Data View: The Data View normally displays the detail level data in the tables. SAP HANA gibi OLAP kaynakların yapısı gereği bu görünüm, SAP HANA üzerinden kullanılamaz.Given the nature of OLAP sources such as SAP HANA, this view is not available over SAP HANA.
  • Sütun ve ölçü ayrıntıları sabittir: Alan listesinde görünen sütunlar ve ölçüler listesi, temel alınan kaynak tarafından sabitlenmiştir ve değiştirilemez.Column and measure details are fixed: The list of columns and measures seen in the field list are fixed by the underlying source, and cannot be modified. Örneğin, bir sütunu silmek ya da veri türünü değiştirmek mümkün değildir (ancak yeniden adlandırmak mümkündür).For example, it's not possible to delete a column, nor change its datatype (it can, however, be renamed).
  • DAX'taki ek sınırlamalar: Ölçü tanımlarında kullanılabilecek DAX'ta, kaynaktaki sınırlamaları yansıtan ek sınırlamalar söz konusudur.Additional limitations in DAX: There are additional limitations on the DAX that can be used in measure definitions, to reflect limitations in the source. Örneğin, bir tablo üzerinden toplama işlevini kullanmak mümkün değildir.For example, it's not possible to use an aggregate function over a table.

Görselleştirmelere ilişkin ek kısıtlamalarAdditional visualization restrictions

DirectQuery kullanılarak SAP HANA’ya bağlanılırken (çok boyutlu kaynak olarak davranma) görsellerde kısıtlamalar söz konusudur:There are restrictions in visuals when connecting to SAP HANA using DirectQuery (treat as multi-dimensional source):

  • Sütunlarda toplama yoktur: Görseldeki sütun için toplamayı değiştirmek mümkün değildir ve her zaman Özetleme şeklindedir.No aggregation of columns: It's not possible to change the aggregation for a column on a visual, and it is always Do Not Summarize.

SAP HANA’ya bir ilişkisel kaynak olarak davranmaTreat SAP HANA as a relational source

SAP HANA’ya ilişkisel bir kaynak olarak bağlanma seçilirken bazı ek esneklik seçenekleri kullanılabilir hale gelir.When choosing to connect to SAP HANA as a relational source, some additional flexibility becomes available. Örneğin, hesaplanan sütunlar oluşturabilir, birden çok SAP HANA görünümden veri ekleyebilir ve sonuçta elde edilen tablolar arasında ilişki oluşturabilirsiniz.For example, you can create calculated columns, include data from multiple SAP HANA views, and create relationships between the resulting tables. Bununla birlikte, SAP HANA bu şekilde kullanılırken, aşağıdakilerin sağlanması için bağlantılara nasıl davranıldığına ilişkin belirli boyutların anlaşılması önemlidir:However, when using SAP HANA in this manner, it's important to understand certain aspects of how connections are treated, to ensure the following:

  • SAP HANA görünümü eklenebilir olmayan ölçüler (örneğin; basit toplamlar yerine ayrı sayımlar veya ortalamalar) içeriyorsa sonuçlar beklendiği gibi olur.The results are as expected, when the SAP HANA view contains non-additive measures (for example, distinct counts, or averages, rather than simple sums).
  • Sonuçta elde edilen sorguların verimli olmasıThe resulting queries are efficient

Veri Al veya Soru Düzenleyicisi'nde tanımlanan sorgu ile bir toplama işlemi gerçekleştirirken SQL Server gibi bir ilişkisel kaynağın davranışını açıklayarak işe başlamakta fayda vardır.It's useful to start by clarifying the behavior of a relational source such as SQL Server, when the query defined in Get Data or Query Editor performs an aggregation. Sonraki örnekte, Sorgu Düzenleyicisi'nde tanımlanan bir sorgu, ProductID'ye göre ortalama fiyat sonucunu döndürmektedir.In the example that follows, a query defined in Query Editor returns the average price by ProductID.

Ürün Kimliğine göre ortalama fiyatı döndüren, Sorgu Düzenleyicisi’nde tanımlı bir sorguyu gösteren ekran görüntüsü.

Veri Power BI'a aktarılıyorsa (DirectQuery kullanmak yerine) aşağıdaki sonuç elde edilir:If the data is being imported into Power BI (versus using DirectQuery), the following would result:

  • Veri, Sorgu Düzenleyicisi'nde oluşturulan sorgu tarafından tanımlanan toplam düzeyinde içeri aktarılır.The data is imported at the level of aggregation defined by the query created in Query Editor. Örneğin, ürüne göre ortalama fiyat.For example, average price by product. Bu işlemle, ProductID ve AveragePrice olmak üzere görsellerde kullanılabilecek iki sütunlu bir tablo elde edilir.This results in a table with the two columns ProductID and AveragePrice that can be used in visuals.
  • Bir görselde, sonraki herhangi bir toplama işlemi (Toplam, Ortalama, Minimum ve diğerleri gibi), içeri aktarılan bu veriler üzerinden gerçekleştirilir.In a visual, any subsequent aggregation (such as Sum, Average, Min, others) is performed over that imported data. Örneğin, bir görsele AveragePrice eklendiğinde varsayılan olarak Toplam toplama işlemi kullanılır ve her bir ProductID için AveragePrice üzerinden toplam döndürülür. Bu örnekte 13,67 sonucu elde edilir.For example, including AveragePrice on a visual will use the Sum aggregate by default, and would return the sum over the AveragePrice for each ProductID – which in this example case would be 13.67. Aynı durum, görselde kullanılan tüm alternatif toplama işlevleri (Minimum, Ortalama vb. gibi) için de geçerlidir.The same applies to any alternative aggregate function (such as Min, Average, so on) used on the visual. Örneğin, AveragePrice'ın Ortalama değeri, temel alınan tablodaki altı kaydın Price ortalaması olan 5,17 yerine, 6,66, 4 ve 3 değerlerinin 4,56'ya denk gelen ortalamasını döndürür.For example, Average of AveragePrice returns the average of 6.66, 4 and 3, which equates to 4.56, and not the average of Price on the six records in the underlying table, which is 5.17.

İçeri aktarma yerine DirectQuery (aynı ilişkisel kaynak üzerinden) kullanılıyorsa aynı semantik geçerli olur ve tam olarak aynı sonuçlar elde edilir:If DirectQuery (over that same relational source) is being used instead of Import, the same semantics apply and the results would be exactly the same:

  • Aynı sorgu ele alındığında, veriler gerçekte içeri aktarılmasa bile raporlama katmanına mantıksal olarak aynı veriler sunulur.Given the same query, logically exactly the same data is presented to the reporting layer – even though the data is not actually imported.

  • Bir görselde bulunan herhangi bir sonraki toplama işlemi (Toplam, Ortalama, Minimum ve diğerleri gibi), yine sorgudan alınan mantıksal tablo üzerinden gerçekleştirilir.In a visual, any subsequent aggregation (Sum, Average, Min, others) is again performed over that logical table from the query. AveragePrice'ın Ortalama değerini içeren bir görsel yine aynı 4,56 değerini döndürür.And again, a visual containing Average of AveragePrice returns the same 4.56.

Şimdi de bağlantıya ilişkisel bir kaynak olarak davranıldığında SAP HANA’yı ele alalım.Now let's consider SAP HANA, when the connection is treated as a relational source. Power BI, SAP HANA'da her ikisi de ölçüler içeren Analitik Görünümleri ve Hesaplama Görünümleri ile birlikte çalışabilir.Power BI can work with both Analytic Views and Calculation Views in SAP HANA, both of which can contain measures. Yine de bugünkü SAP HANA yaklaşımı, bu bölümde daha önce açıklanan ilkelerle aynı doğrultudadır: Veri Al veya Sorgu Düzenleyicisi'nde tanımlanan sorgu, kullanılabilir verileri belirler, ardından bir görselde gerçekleştirilen sonraki toplama işlemleri bu veriler üzerinden yapılır ve hem İçeri Aktar hem de DirectQuery seçeneği için aynı durum geçerlidir.Yet today the approach for SAP HANA follows the same principles as described previously in this section: the query defined in Get Data or Query Editor will determine the data available, and then any subsequent aggregation in a visual is over that data, and the same applies for both Import and DirectQuery.
Ancak SAP HANA’nın yapısı göz önünde bulundurulduğunda, başlangıçtaki Veri Al iletişim kutusunda veya Sorgu Düzenleyicisi’nde tanımlanan sorgu her zaman bir toplama sorgusudur ve genellikle, kullanılacak olan gerçek toplamın, SAP HANA görünümü tarafından tanımlandığı ölçüleri içerir.However, given the nature of SAP HANA, the query defined in the initial Get Data dialog or Query Editor is always an aggregate query, and generally will include measures where the actual aggregation that will be used is defined by the SAP HANA view.

Yukarıdaki SQL Server örneğinin eş değeri olarak, görünümde Average of Price olarak tanımlı ID, ProductID, DepotID’yi içeren ve AveragePrice dahil olmak üzere ölçüler barındıran bir SAP HANA görünümü bulunur.The equivalent of the SQL Server example above is that there is a SAP HANA view containing ID, ProductID, DepotID, and measures including AveragePrice, defined in the view as Average of Price.

Veri Al deneyimi kullanılırken yapılan seçimler ProductID ve AveragePrice ölçüsüne yönelikse bu toplama verilerini isteyen ve görünüm üzerinden gerçekleştirilecek olan bir sorgu tanımlanıyor demektir. (Önceki örnekte, kolaylık sağlaması açısından SAP HANA SQL’in tam söz dizimiyle eşleşmeyen sözde SQL kullanılmıştır.)If in the Get Data experience, the selections made were for ProductID and the AveragePrice measure, then that is defining a query over the view, requesting that aggregate data (in the earlier example, for simplicity pseudo-SQL is used that doesn’t match the exact syntax of SAP HANA SQL). Bir görselde tanımlanan diğer toplamalar, bu sorgudan elde edilen sonuçlar için toplam değeri yeniden hesaplar.Then any further aggregations defined in a visual are further aggregating the results of such a query. Bu, SQL Server için yukarıda açıklandığı gibi hem İçeri aktar hem de DirectQuery seçeneği için geçerlidir.Again, as described above for SQL Server, this applies both for the Import and DirectQuery case. DirectQuery seçeneğinde, Veri Al veya Sorgu Düzenleyicisi’nden yapılan sorgu, SAP HANA’ya gönderilen tek bir sorgu içindeki bir alt seçimde kullanılır ve bu nedenle, diğer toplama işlemlerinden önce tüm verilerin okunacağı anlamına gelmez.In the DirectQuery case, the query from Get Data or Query Editor will be used in a subselect within a single query sent to SAP HANA, and thus it is not actually the case that all the data would be read in, prior to aggregating further.

Tüm bu dikkat gerektiren noktalar ve davranışlar, SAP HANA üzerinden DirectQuery kullanılırken aşağıdaki önemli noktalara dikkat edilmesini gerektirir:All of these considerations and behaviors necessitate the following important considerations when using DirectQuery over SAP HANA:

  • SAP HANA’daki ölçü eklenebilir olmadığında (örneğin, basit bir Toplam, Minimum veya Maksimum olmadığında) görsellerde gerçekleştirilen diğer toplama işlemlerine dikkat edilmelidir.Attention must be paid to any further aggregation performed in visuals, whenever the measure in SAP HANA is non-additive (for example, not a simple Sum, Min, or Max).

  • Veri Al veya Sorgu Düzenleyicisi’nde, gerekli verileri almak için yalnızca gerekli sütunlar dahil edilmelidir. Bu durumda, sonuç bir sorgu olacaktır ve bu sorgu, SAP HANA’ya gönderilebilecek makul bir sorgu olmalıdır.In Get Data or Query Editor, only the required columns should be included to retrieve the necessary data, reflecting the fact that the result will be a query, that must be a reasonable query that can be sent to SAP HANA. Örneğin, sonraki görsellerde gerekli olabileceği düşünülerek düzinelerce sütun seçilirse DirectQuery için bile basit bir görselde, alt seçimde kullanılan toplama sorgusunun düzinelerce sorgu içereceği ve bu durumda genellikle düşük bir performans göstereceği anlamına gelir.For example, if dozens of columns were selected, with the thought that they might be needed on subsequent visuals, then even for DirectQuery a simple visual will mean the aggregate query used in the subselect will contain those dozens of columns, which will generally perform poorly.

Bir örneğe göz atalım.Let's look at an example. Aşağıdaki örnekte gösterildiği gibi, Veri Al iletişim kutusunda OrderQuantity ölçüsüyle birlikte beş sütun (CalendarQuarter, Color, LastName, ProductLine, SalesOrderNumber) seçilmesi, daha sonra Min OrderQuantity’yi içeren basit bir görsel oluşturulduğunda SAP HANA’ya aşağıdaki SQL sorgusunun gönderilmesine neden olur.In the following example, selecting five columns (CalendarQuarter, Color, LastName, ProductLine, SalesOrderNumber) in the Get Data dialog, along with the measure OrderQuantity, will mean that later creating a simple visual containing the Min OrderQuantity will result in the following SQL query to SAP HANA. Gölgeli öğe alt seçimdir ve Veri Al / Sorgu Düzenleyicisi'nden yapılan sorguyu içerir.The shaded is the subselect, containing the query from Get Data / Query Editor. Bu alt seçim yüksek bir kardinalite sonucu verirse elde edilen SAP HANA performansı büyük olasılıkla düşük olacaktır.If this subselect gives a high cardinality result, then the resulting SAP HANA performance will likely be poor.

SAP HANA’ya gönderilen SQL sorgusunu gösteren bir sorgu örneğinin ekran görüntüsü.

Bu davranış nedeniyle, Veri Al veya Sorgu Düzenleyicisi’nde seçilen öğelerin gerekli öğelerle sınırlı tutulması önerilir. Bu durumda yine SAP HANA için makul bir sorgu elde edilecektir.Because of this behavior, we recommend the items selected in Get Data or Query Editor be limited to those items that are needed, while still resulting in a reasonable query for SAP HANA.

En iyi yöntemlerBest practices

SAP HANA’ya bağlanmaya yönelik her iki yaklaşım için, özellikle de iyi bir performans sağlamaya yönelik olan DirectQuery kullanma önerileri SAP HANA için de geçerlidir.For both approaches to connecting to SAP HANA, recommendations for using DirectQuery also apply to SAP HANA, particularly those related to ensuring good performance. Bu öneriler Power BI'da DirectQuery kullanma makalesinde ayrıntılı olarak açıklanmıştır.These recommendations are described in detail in the article using DirectQuery in Power BI.

SınırlamalarLimitations

Aşağıdaki tabloda, tam olarak desteklenmeyen veya Power BI kullanıldığında farklı davranan tüm SAP HANA özellikleri listelenmiştir.The following list describes all SAP HANA features that are not fully supported, or features that behave differently when using Power BI.

  • Üst Alt Öğe Hiyerarşileri: Üst alt öğe hiyerarşileri Power BI'da görünmez.Parent Child Hierarchies - Parent child hierarchies will not be visible in Power BI. Power BI, SAP HANA’ya SQL arabirimini kullanarak erişir ve SQL aracılığıyla üst alt öğe hiyerarşilerine tam olarak erişilemez.This is because Power BI accesses SAP HANA using the SQL interface, and parent child hierarchies cannot be fully accessed via SQL.
  • Diğer hiyerarşi meta verileri: Power BI’da hiyerarşilerin temel yapısı gösterilir, ancak bazı hiyerarşi meta verileri (düzensiz hiyerarşiler için davranışı denetleme gibi) etkili olmaz.Other hierarchy metadata - The basic structure of hierarchies is displayed in Power BI, however some hierarchy metadata (such as controlling the behavior of ragged hierarchies) will have no effect. Tekrar belirtmek gerekirse, bunun nedeni SQL arabirimi tarafından uygulanan kısıtlamalardır.Again, this is due to the limitations imposed by the SQL interface.
  • SSL kullanarak bağlantı - SSL ile İçeri Aktarma ve çok yönlü özelliklerini kullanarak bağlantı kurabilir, ancak ilişkisel bağlayıcı için SSL kullanacak şekilde yapılandırılmış SAP HANA örneklerine bağlanamazsınız.Connection using SSL - You can connect using Import and multi-dimensional with SSL, buy cannot connect to SAP HANA instances configured to use SSL for the relational connector.
  • Öznitelik görünümleri için destek - Power BI, Analitik görünümlere ve Hesaplama görünümlerine erişebilir, ancak Öznitelik görünümlerine doğrudan bağlanamaz.Support for Attribute views - Power BI can connect to Analytic and Calculation views, but cannot connect directly to Attribute views.
  • Katalog nesneleri için destek: Power BI, Katalog nesnelerine bağlanamaz.Support for Catalog objects - Power BI cannot connect to Catalog objects.
  • Yayımlama işleminden sonra Değişkenleri değiştirme: Rapor yayımlandıktan sonra doğrudan Power BI hizmetinde herhangi bir SAP HANA değişkenini değiştiremezsiniz.Change to Variables after publish - You cannot change the values for any SAP HANA variables directly in the Power BI service, after the report is published.

Bilinen sorunlarKnown issues

Aşağıdaki listede, Power BI kullanılarak SAP HANA’ya (DirectQuery) bağlanılırken yaşandığı bilinen tüm sorunlar açıklanmıştır.The following list describes all known issues when connecting to SAP HANA (DirectQuery) using Power BI.

  • Sayaçlar ve diğer ölçüler sorgulanırken karşılaşılan SAP HANA sorunu: Bir Analitik Görünüme bağlanılıyorsa SAP HANA’dan yanlış veriler döndürülür ve aynı görsele bir Sayaç ölçüsü ile diğer bazı oran ölçüleri eklenir.SAP HANA issue when query for Counters, and other measures - Incorrect data is returned from SAP HANA if connecting to an Analytical View, and a Counter measure and some other ratio measure, are included in the same visual. Bu, 2128928 numaralı SAP Notu’nda (Hesaplanan Sütun ve Sayaç sorgulanırken beklenmeyen sonuçlar) ele alınmıştır.This is covered by SAP Note 2128928 (Unexpected results when query a Calculated Column and a Counter). Bu durumda oran ölçüsü yanlış olur.The ratio measure will be incorrect in this case.

  • Tek SAP HANA sütunundan birden çok Power BI sütunu: Bir SAP HANA sütununun birden çok hiyerarşide kullanıldığı bazı hesaplama görünümleri için SAP HANA bunu iki ayrı öznitelik olarak kullanıma sunar.Multiple Power BI columns from single SAP HANA column - For some calculation views, where a SAP HANA column is used in more than one hierarchy, SAP HANA exposes this as two separate attributes. Bu, Power BI'da iki sütun oluşturulmasıyla sonuçlanır.This results in two columns being created in Power BI. Bu sütun varsayılan olarak gizlidir, ancak hiyerarşiler veya sütunlar ile doğrudan ilgili olan hiçbir sorgu doğru şekilde davranmaz.Those columns are hidden by default, however, and all queries involving the hierarchies, or the columns directly, behave correctly.

Sonraki adımlarNext steps

DirectQuery hakkında daha fazla bilgi için aşağıdaki kaynaklara bakın:For more information about DirectQuery, check out the following resources: