What’s wrong with 1:M relationships between ADX tables In Power BI

What’s wrong with 1:M relationships between ADX tables In Power BI

This article is contributed. See the original author and article here.

What’s wrong with 1:M relationships between ADX tables?


 


In this article I want to talk about the behavior of 1:M relationships and what kinds of joins are created to support 1: M.


 


Aren’t 1:M just the normal relationships in PBI?


 


Yes, they are but not when both sides are ADX queries in Direct Query mode.


In most cases Power BI “thinks” that the relationship is M:M because of the way distinct count works in ADX.


To get 1:M, you have to change the relationship’s properties using tabular editor or another method.


Also, if the dimension table is small, the distinct count of the key will return the exact value and the relationship will be defined as 1:M.


 


So, if they are the default, what’s wrong with 1:M?


 


The problem is with the KQL joins which are generated based on 1:M relationships.


Let’s assume that we have a Product Category dimension, and you filter by one category.


the relationship is 1:M between Product Category and FactSales.


Assuming you used IsDimension=true on the dimension, The KQL statement generated will be something like:


[“Product_Category”]


| join kind=rightouter hint.strategy =broadcast SalesFact


| summarize A0=sum(Sales) by …


| where Category==”Cat1”


 


 


Because of the right outer join, the filter on Category is applied after the join is performed on the entire fact table.


The query results will be correct, but the performance will be bad.


What can be done to make the query perform better?


 


We need to convince PBI to create an inner join instead of the rightouter join.


There are two way to force an inner join:



  • Define the relationship as M:M

  • Define the relationships as 1:M and checking the option Assume Referential integrity.

  • DanyHoter_0-1677407863482.png

     




 


In the case of inner join , the filter(s) on the dimension that appear at the end of the query, will be pushed by the ADX engine to the early stages of execution and so the join will be only on the products that belong to Cat1 in this example.


The result will be a much faster query.


 


Summary 


If you see in the queries generated by PBI any other join except inner, you have to change your PBI model so that the joins will be inner.


 


 


 


 


 

Getting Started with AI for Low Code Development.

Getting Started with AI for Low Code Development.

This article is contributed. See the original author and article here.

Introduction


AI, without a doubt, is revolutionizing low code development. The capabilities of Artificial Intelligence into Low code have the power to revolutionize the way you work and enhance the applications and solutions you build.


 


You may be wondering what’s in it for you with AI as a low code developer. Well, AI has immense potential from automating repetitive tasks, adding intelligence into your applications, building chatbots, automated workflows, predictive analysis and much more on AI.


 


As a low code developer, you understand the power of technology to streamline the development to deployment process. Well in addition, with the recent development of AI this is a chance to take your skills to the next level. This is a rapidly growing field with massive impact and as a low code developer, you certainly do not need ten years of experience to develop AI models or rather add intelligence into your solution. In this blog, we’ll explore the basics of AI for low code developers, what opportunities you have in this platform and responsible AI.


 


AI-Lowcode.jpeg


 


What is Artificial Intelligence?


AI refers to the development of algorithms that can perform tasks that typically require human intelligence such as recognition, decision-making, solving problems and cognitive services. This usually involves training a computer/model to recognize patterns, make decisions and solve problems based on data. With the current development of AI, the main goal is to be able to create systems that can learn, adapt, and improve over time.


 


The results of AI are immense and have the potential to revolutionize many industries and change the way we live and work. For a low code developer this means you can automate tasks, improve accuracy and speed, provide valuable insights that can enhance user experience.


 


Opportunity of AI for a low code developer.


As a low code developer, the opportunity to integrate AI into your development process is too good to ignore. Regardless of your level of experience as a low code developer, AI is a powerful tool that can help you add intelligence into your solution and get the most out of it. As AI continues to evolve, we can expect to see more innovative solutions and use cases of AI in our solutions. Some examples of the several ways you can use AI as a low code developer include:



  1. Creating chatbots – Leveraging Power Virtual Agents helps you create conversational chatbots where customers can get quicker services from your business with tasks such as customer service, ticket processing and general inquiry. It is easier also to integrate chatbots solutions into your existing solutions easily. For instance, once you are done building your solution you can publish the chatbot onto your website, mobile apps, messaging platforms (teams, Facebook). Get started here Intelligent Virtual Agents and Bots | Microsoft Power Virtual Agents

    Top tip: Remember to publish your chatbot for any updates you make to reflect changes.


    Julia_Muiruri_0-1676873783075.png


       



  1. Automated workflows – AI can be used to automate workflows in low code applications, reducing manual effort and improving efficiency. This also helps an organization follow a structured manner in the business processes with the organization.Julia_Muiruri_1-1676874515317.png

     



  2. Decision making – Using AI you can be able to gain some valuable insights from the data that you have. For instance, if you need to predict a future trend based on data from the past few years, you can achieve this as a low code developer using AI

  3. Image and object detection – Leveraging object detection allows you to fully utilize AI as a low code developer from tasks such as document scanning and extraction of texts from images. This will help you improve the quality of your applications and extract substantial amounts of data in a short time.

  4. Natural language processing – This can be used in low code applications to improve accuracy and speed of text- based tasks such as sentiment analysis. If you need to detect the tone in a customer service review, you can leverage on this to detect the sentiments whether it is positive, neutral, or negative.


 


Julia_Muiruri_2-1676874820474.png


 


Here are some of the key benefits of using AI in low code development.



  1. Automation of repetitive tasks – With AI, you can automate repeated tasks such as data entry, form processing and this will let you focus on other high priority business activities

  2. Improved accuracy and speed – Some processes that are tedious and manual can be prone to errors and time consuming. Pre-built AI Models can be integrated into your solutions to enhance your application’s accuracy and speed.

  3. Gaining valuable insights – AI can help low code developers extract valuable insights from data such as trends, this helps you make data-driven decisions for greater business success.


 


Getting started with AI as a Low code developer.


You can quickly bring AI into your solutions using Microsoft Power Platform, connecting to your business data regardless of where they are stored in One Drive, SharePoint, Azure, Dataverse


With a few simple steps you can easily get started using AI Builder


.



  1. Understand business requirements – Before you begin, it is important to understand the business process that needs to be integrated with AI.

  2. Choose a use case – Once you have decided on the business process that needs AI choose the best use case you can start with. Some of the common use cases we have are similar across businesses, including form processing, invoice processing and sentiment analysis.
    If the business problem is unique to your business, you can create a model from scratch to better suit your business.

  3. Using AI Builder – To use AI Builder, you need to have a Microsoft Power Apps or Power Automate license, with which you can access AI Builder from your Power App or flow. If you don’t have one, you can create a free developers account here

  4. Choosing an AI Model – You can either use a pre-built template or create a custom model from scratch using your own data or pre-existing data. Using a prebuilt model means that you are utilizing already built AI scenario templates, like invoice processing.

  5. Test and deploy your model – Once you have selected the model that you want to use based on the business process case, with AI builder, you can test the model’s performance before deployment. With this you can validate the model’s accuracy and adjust it as needed. Once you are satisfied you can deploy it to your Power Apps application or Power Automate flow.

  6. Monitoring and Improvement – After deploying your model, you can monitor its performance and adjust as per your need.


 


Responsible AI


As you get started with AI as a low code developer, it is important to ensure that the AI you build is developed and used for the right purpose and in the right environment. Microsoft highlights six key principles for responsible AI namely:



  • Transparency

  • Fairness

  • Reliability and safety

  • Privacy and security

  • Inclusiveness

  • Accountability.


To achieve this as a low code developer who is exploring AI, Microsoft provides resources to help the developers, businesses, and individuals to understand and use responsible AI practices and ethics. This provides a set of principles to guide the development of AI in a responsible way.


Learn more about responsible AI here https://www.microsoft.com/ai/responsible-ai and how Microsoft is achieving this.


 


Wondering how to get started and explore more resources, check these out:



  1. Overview of AI Builder – AI Builder

  2. AI Builder—AI Templates for Apps

  3. AI Best Practice Architecture and Frameworks

  4. Watch this video for a demo on how to get started


Guia de Estudos: DP-900 Microsoft Azure Data Fundamentals

Guia de Estudos: DP-900 Microsoft Azure Data Fundamentals

This article is contributed. See the original author and article here.

Preparando-se para o exame DP-900 Microsoft Azure Data Fundamentals e não sabe por onde começar? Este artigo é um guia de estudo para certificação DP-900!


 


Fiz uma curadoria de artigos da Microsoft para cada objetivo do exame DP-900. Além disso, compartilho os conteúdos da #SprintDP900, uma série de mentorias do Microsoft Reactor.


 


No Microsoft Reactor, oferecemos diversos conteúdos gratuitos de capacitação em tecnologias da Microsoft e organizamos sprints de estudos para certificações. Na #SprintDP900, estamos realizando uma série de 3 aulas sobre certificação Azure Data Fundamentals, nos dias 28 de fevereiro, 01 e 02 de março. Todas as pessoas que participarem do Cloud Skills Challenge e assistirem as aulas, poderão participar do quiz de avaliação de conhecimentos e concorrer a um voucher gratuito para realização da prova.


 


Agenda #SprintDP900


 


















28 de fevereiro, às 12:30h
#SprintDP900: Introdução à Banco de dados no Azure e tipos de serviços



No primeiro encontro, você irá aprender sobre os conceitos básicos de banco de dados na nuvem, entendo cargas de trabalho, funções e serviços comuns. 


clique aqui para se inscrever

01 de março, às 12:30h
#SprintDP900: Banco de Dados não relacional no Azure



No segundo encontro do #SprintDP900, vamos aprofundar os conceitos de banco de dados não relacional e conhecer os recursos disponíveis no Azure.


clique aqui para se inscrever

02 de março, às 12:30h
#SprintDP900: Análise de Dados no Azure



No terceiro encontro do #SprintDP900, vamos abordar os serviços de análise de dados no Azure.


clique aqui para se inscrever

 


As gravações das aulas estarão disponíveis em nosso canal, basta acessar o link de cada sessão.


 


cynthiazanoni_0-1675974762046.jpeg


 


O Microsoft Cloud Skills Challenge é uma plataforma integrada com o Microsoft Learn, que é uma plataforma global, disponível 24 horas por dia, 7 dias por semana. Você pode criar sua agenda de estudos, pois o desafio estará disponíveis no período de 28/02/2023 a 10/02/2023. As aulas semanais ocorrem no formato ao vivo e se você não puder participar, terá a possibilidade de assistir as gravações.


O Cloud Skills Challenge irá utilizar a trilha de estudos DP-900: Fundamentos Dados do Microsoft Azure em português (Brasil). A prova de certificação também está disponível em português.


 


Inscreva-se no Cloud Skills Challenge da #SprintDP900: https://aka.ms/SprintDP900/CSC


 


O que eu preciso fazer para ganhar um voucher de certificação?


Você deverá realizar sua inscrição para as aulas ao vivo e realizar a trilha de estudos proposta no Cloud Skills Challenge. Na aula que será realizada no dia 02 de março, vamos disponibilizar um quiz de validação de conhecimentos para selecionar as 100 pessoas que receberão, por e-mail, um voucher gratuito para realização da certificação DP-900: Azure Data Fundamentals. O critério de priorização dos vouchers é a conclusão do Cloud Skills Challenge, participação nas aulas e obtenção de 80% de acerto no quiz.


 


Design sem nome.jpg


Recursos adicionais de aprendizado


Se você não tem muita familiaridade com computação em nuvem, recomendo estudar a trilha Azure Fundamentals:



As porcentagens indicadas em cada tópico da prova são referentes ao peso / volume de questões que você poderá encontrar no exame.


 


Descrever os principais conceitos de dados (25-35%)


 


Descrever maneiras de representar dados



Identificar opções para armazenamento de dados



Descrever cargas de trabalho de dados comuns



Identificar funções e responsabilidades para cargas de trabalho de dados



 


Dados relacionais no Azure (20-25%)


 


Descrever conceitos de banco de dados relacionais



Descrever os serviços de dados relacionais do Azure



Segurança e Conectividade


Ferramentas para queries



Práticas


 


Descrever dados não relacionais em Azure (15-20%)


 


Descrever os recursos do armazenamento do Azure



Descrever capacidades e recursos do Azure Cosmos DB



Segurança e Conectividade


Ferramentas para queries



Práticas


 


Análise de Dados no Azure (25-30%)


 


Descrever elementos comuns de análise em larga escala



Descrever a análise de dados em tempo real



Descrever a visualização de dados no Microsoft Power BI




Extend and optimize your customer outreach with custom channels

Extend and optimize your customer outreach with custom channels

This article is contributed. See the original author and article here.

In this fast-paced world, customers expect to be able to interact with brands in ways that extend beyond traditional channels. Brands are constantly competing for the attention of customers who are deluged with messages daily. Text messages and messaging apps like WhatsApp, Viber, and Telegram represent an opportunity to engage your customers where they’re paying attention. Your customers benefit from increased and faster engagement with your brand through a real-time, personalized experienceand you’re more effective in triggering a specific customer action or behavior.

Curious about how you can integrate WhatsApp, Viber, Telegram, and many other channels in your journeys to engage your customers in the moments that matter?

Discover Dynamics 365 Marketing custom channels

With custom channels, Microsoft Dynamics 365 Marketing meets the need for a customizable model that supports any customer outreach and engagement medium marketers may demand. Along with built-in channels like email, text messages, and push notifications, you can now create custom communication channels to use in your journeys. Custom channels provide additional extensibility and personalization capabilities when reaching out to your customers, increasing the efficiency of your communications.

With custom channels you can:

  • Bring a new communication channel like WhatsApp, Viber, or Telegram to Dynamics 365 Marketing. These channels support a custom message editor and deliverability analytics. Two-way communication and custom interactions will follow in future releases.
  • Extend the functionality of text messages by connecting to any provider you want. Custom text message channels come with all the features supported by the built-in providers: text message editor with preview, two-way communication, analytics, and interactions.

Screenshot that illustrates creating a custom journey in Microsoft Dynamics 365 Marketing.

By adding a custom channel to Dynamics 365 Marketing, you unfold its true potential and maximize your users’ engagement through:

  • Creation of personalized messages content for a more individualized experience.
  • Plugging your custom channels and messages into any customer journey.
  • Tracking the deliverability of your messages to assess and optimize the effectiveness of your new channels.

Engaging your customers in non-conventional channels can also freshen up the image and perception of your brand. For instance, sending messages on WhatsApp can give your customers a feeling of closeness. You can define the channels that match your brand and your audience.

Our Dynamics 365 Marketing customers are already using custom channels in their journeys to send:

  • Appointment confirmations with local text message providers, for customer to never miss on them,
  • Promotional campaigns with exclusive discounts on WhatsApp or Viber,
  • Various types of reminders through text messages or WhatsApp,
  • Informational WhatsApp messages to increase the attendance for upcoming community events.

For instance, one of our customers has set up a journey that informs like-minded professionals about webinars and live community events that could interest them. The message includes a link to a form for professionals to sign up for the events. WhatsApp was chosen as a more engaging and real-time channel than emails, while less intrusive than text messages. In addition to keeping customers informed of upcoming events, the goal is to increase event registrations and the average attendance.

Start using custom channels in your customer outreach

Take advantage of custom channels in Dynamics 365 Marketing to capitalize on favorite and proven channels you’ve already invested time and effort in. Add real-time marketing capabilities like personalization, consent, and deliverability analytics to take your personalized targeting to the next level and maximize the impact of your communications.

Learn more

Ready to start building your new custom channels in Dynamics 365 Marketing? Read the release notes and check out the product documentation: Create custom channels (Dynamics 365 Marketing) | Microsoft Learn

Not yet a Dynamics 365 Marketing Customer? Take a guided tour and get a free trial!

The post Extend and optimize your customer outreach with custom channels appeared first on Microsoft Dynamics 365 Blog.

Brought to you by Dr. Ware, Microsoft Office 365 Silver Partner, Charleston SC.

Microsoft Purview Data Catalog: New Features & Enhancements

This article is contributed. See the original author and article here.

Microsoft Purview Data Catalog provides data scientists, engineers, and analysts with the data they need for BI, analytics, AI, and machine learning. It makes data easily discoverable by using familiar business and technical search terms and eliminates the need for Excel data dictionaries with an enterprise-grade business glossary. It enables customers to track the origin of their data with interactive data lineage visualization. 


 


We continue to listen to your feedback and have been hard at work to enable various features in Purview Data Catalog in different areas like data curation, browse & search, business glossaries, business workflows, and self-service data access among others in the last 6 months.


 


Data Curation:



  1. Create, update, delete, and assign managed attributes to data assets. Learn more here.

  2. Rich text editor support for asset updates (description etc.). Learn more here


Browse & Search:



  1. Keyword highlighting in search results. Learn more here

  2. Managed attributes filter support in search results. Learn more here.


Business Glossary:



  1. Create multiple glossaries to manage business terms across different business units in your organization. Learn more here.

  2. Rich text editor support for business glossaries. Learn more here.

  3. Delete term templates without references. Learn more here.

  4. Add, update, and remove templates for existing terms. Learn more here.


Business Workflows:



  1. Approval workflow for data asset curation. Learn more here.

  2. Cancel Workflow run. Learn more here.

  3. Reassign approvals and tasks in workflows. Learn more here.

  4. Support for HTTP connector. Learn more here.

  5. Set reminders and expiry for approvals and task requests in workflows. Learn more here.


Self-Service Data Access:



  1. Request access on behalf of another user in Microsoft Purview Studio. Learn more here.

  2. Request access on behalf of another user in Microsoft Synapse Studio. Learn more here.

  3. Assign data asset owners as approvers for self-service data access. Learn more here.


Our goal is to continue adding features and improve the usability of Microsoft Purview governance capabilities. Get Started easily and quickly using Microsoft Purview. If you have any feature requests or want to provide feedback, please visit the Microsoft Purview forum.