<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:dc="http://purl.org/dc/elements/1.1/">
  <channel>
    <title>DEV Community: Neelay</title>
    <description>The latest articles on DEV Community by Neelay (@nil12285).</description>
    <link>https://dev.to/nil12285</link>
    <image>
      <url>https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https:%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F1142415%2F147f9fa1-ba70-4f1d-a9bc-b51fb6a0bda6.jpg</url>
      <title>DEV Community: Neelay</title>
      <link>https://dev.to/nil12285</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/nil12285"/>
    <language>en</language>
    <item>
      <title>Generative AI in QuickSight</title>
      <dc:creator>Neelay</dc:creator>
      <pubDate>Wed, 31 Jan 2024 14:10:00 +0000</pubDate>
      <link>https://dev.to/nil12285/generative-ai-in-quicksight-ag7</link>
      <guid>https://dev.to/nil12285/generative-ai-in-quicksight-ag7</guid>
      <description>&lt;h2&gt;
  
  
  &lt;strong&gt;Problem Statement&lt;/strong&gt;
&lt;/h2&gt;

&lt;p&gt;In the era of widespread integration of Generative AI into daily routines, businesses must ensure that their business intelligence (BI) tools and reporting mechanisms are capable of leveraging this technology effectively. While there are numerous BI solutions available, only a handful offer the functionality and customization required to keep pace with evolving AI capabilities.&lt;/p&gt;

&lt;h2&gt;
  
  
  Solution
&lt;/h2&gt;

&lt;p&gt;QuickSight stands out as one such solution. However, leveraging QuickSight to empower non-technical users to meet their BI requirements autonomously remains a challenge.&lt;/p&gt;

&lt;p&gt;To use Generative AI (aka Q) capability, you have to upgrade the current quicksight subscription to enterprise solution (the topmost tier).&lt;/p&gt;

&lt;p&gt;First, you &lt;strong&gt;Create a Topic&lt;/strong&gt; and select the dataset for which you want to enable this capability.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--6PzGwjhe--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_66%2Cw_800/https://cdn-images-1.medium.com/max/2000/1%2Als_uPiJyFG7dkg_DIMOmjA.gif" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--6PzGwjhe--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_66%2Cw_800/https://cdn-images-1.medium.com/max/2000/1%2Als_uPiJyFG7dkg_DIMOmjA.gif" alt="demo" width="800" height="336"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Then **Configure the dataset **for Generative AI. here you give friendly names to your columns and make sure preassigned synonyms cover all possibilities.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--6_Orc2jO--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://cdn-images-1.medium.com/max/7432/1%2Aq8WJ4jthZMhaPSZiEmw19g.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--6_Orc2jO--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://cdn-images-1.medium.com/max/7432/1%2Aq8WJ4jthZMhaPSZiEmw19g.png" alt="demo" width="800" height="353"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;And also the Review field configurations (role of the column, default aggregation, etc).&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--I3If1nN3--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://cdn-images-1.medium.com/max/5348/1%2A-Nc2OrXuygH9OxgBtTTS3A.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--I3If1nN3--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://cdn-images-1.medium.com/max/5348/1%2A-Nc2OrXuygH9OxgBtTTS3A.png" alt="demo" width="800" height="230"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;There will be a hinter that will guide you through the process. Once that is done, the Fun part begins.&lt;/p&gt;

&lt;p&gt;Now you can play with Gen AI and ask Amazon Q all reasonable questions that can be asked about the topic dataset. In the GIF below, I asked, “Find all tickets where representatives shared PII by ticket status and month.” Then, I converted it into a bar chart and fixed the group-by query that Q got incorrect. The more queries you try, the better Q will learn from them and improve.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--autkfQnf--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_66%2Cw_800/https://cdn-images-1.medium.com/max/2000/1%2Ab-6x9zwRh6t0wxNsvyGgVg.gif" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--autkfQnf--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_66%2Cw_800/https://cdn-images-1.medium.com/max/2000/1%2Ab-6x9zwRh6t0wxNsvyGgVg.gif" alt="demo" width="800" height="450"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Now that you’ve got that cool query tool all set up, it’s time to make it accessible to your end-users. You can leverage existing analyses linked to the relevant data and integrate this new topic seamlessly. By publishing it as a dashboard, you provide an intuitive interface for end-users to interact with the data effortlessly.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--ZXx1kZJv--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_66%2Cw_800/https://cdn-images-1.medium.com/max/2000/1%2AxUge8xK5bi4Mt9yXtGKa-A.gif" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--ZXx1kZJv--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_66%2Cw_800/https://cdn-images-1.medium.com/max/2000/1%2AxUge8xK5bi4Mt9yXtGKa-A.gif" alt="sample" width="800" height="450"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;You can also just embed the search bar into your web application.&lt;/p&gt;

&lt;h2&gt;
  
  
  Resources
&lt;/h2&gt;

&lt;p&gt;&lt;a href="https://aws.amazon.com/blogs/aws/new-amazon-q-in-quicksight-uses-generative-ai-assistance-for-quicker-easier-data-insights-preview/"&gt;https://aws.amazon.com/blogs/aws/new-amazon-q-in-quicksight-uses-generative-ai-assistance-for-quicker-easier-data-insights-preview/&lt;/a&gt;&lt;br&gt;
&lt;a href="https://docs.aws.amazon.com/quicksight/latest/user/quicksight-q-try.html"&gt;&lt;strong&gt;Trying Amazon QuickSight Q&lt;/strong&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://docs.aws.amazon.com/quicksight/latest/user/embedded-analytics-q-search-bar-for-authenticated-users.html"&gt;https://docs.aws.amazon.com/quicksight/latest/user/embedded-analytics-q-search-bar-for-authenticated-users.html&lt;/a&gt;&lt;/p&gt;

</description>
      <category>ai</category>
      <category>llm</category>
      <category>genbi</category>
      <category>generativeai</category>
    </item>
    <item>
      <title>Utilize AWS Quicksight to gain analytical insights for your SAAS platform.</title>
      <dc:creator>Neelay</dc:creator>
      <pubDate>Wed, 31 Jan 2024 13:56:43 +0000</pubDate>
      <link>https://dev.to/nil12285/utilize-aws-quicksight-to-gain-analytical-insights-for-your-saas-platform-73</link>
      <guid>https://dev.to/nil12285/utilize-aws-quicksight-to-gain-analytical-insights-for-your-saas-platform-73</guid>
      <description>&lt;p&gt;&lt;strong&gt;Problem Statement&lt;/strong&gt;&lt;br&gt;
Developing analytics for constantly evolving SAAS platforms can present significant challenges in terms of time and effort. What strategies can be employed to overcome these obstacles?&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Solution&lt;/strong&gt;&lt;br&gt;
AWS QuickSight can become very handy and scalable for this problem. They also have strong community support which flattens the learning curve.&lt;/p&gt;

&lt;p&gt;There are various methods to incorporate QuickSight into your client-side application and provide a business intelligence solution. However, my preferred approach is to embed the dashboard. By doing so, your platform can effectively manage the accessibility of the dashboard and avoid the need to create all users on AWS.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Product / UX:&lt;/strong&gt; If you have multiple services, a helpful solution is to create a dashboard. This dashboard should have a summary of the platform and service-specific KPIs and reports. QuickSight allows you to create an Analysis with multiple tabs. For example, the first tab can include a summary of analytics for the platform, and subsequent tabs can have service-specific reports.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F3jx9sog3jfsf6zjxv1u3.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F3jx9sog3jfsf6zjxv1u3.png" alt="Sample Dashboard" width="800" height="446"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;After finalizing the dashboard, you have the option to export it as a &lt;strong&gt;template&lt;/strong&gt;. This template can be utilized to create a client-specific dashboard, where you can associate data sources of the same kind to each dashboard during deployment. Once the dashboard is deployed, an anonymous user can access it through an embed URL generated using their &lt;a href="https://docs.aws.amazon.com/cli/latest/reference/quicksight/generate-embed-url-for-anonymous-user.html"&gt;API&lt;/a&gt;. This URL can be inserted in the iframe on your client-specific application. The API lets you control the session length and where it can be embedded. In my case, I limit the session to 30 minutes and specific subdomains for each client.&lt;/p&gt;

&lt;p&gt;With QuickSight, you have a variety of options to extract data from various sources, both with and without a pipeline. Take a look at the image below to see the available data sources.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fk0z0ofwei4h7h55ytkjf.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fk0z0ofwei4h7h55ytkjf.png" alt="Types of Datasources" width="800" height="322"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;In case your data is located elsewhere and cannot be directly linked to Quicksight, you can create a task to transfer daily data to s3 and then import the data to Quicksight SPICE from s3. Quicksight also offers an incremental loading feature.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Data Loading and Refreshing&lt;/strong&gt;&lt;br&gt;
With QuickSight, you can create a dashboard that consolidates data from various sources into multiple datasets.&lt;/p&gt;

&lt;p&gt;These are the steps you can follow to create the dataset.&lt;/p&gt;

&lt;p&gt;Steps:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Create Data Source&lt;/li&gt;
&lt;li&gt;To optimize performance, it's recommended to generate a DataSet from your data source and set it up to load in the &lt;a href="https://docs.aws.amazon.com/quicksight/latest/user/spice.html"&gt;SPICE&lt;/a&gt;. This way, your data source won't be responsible for sorting and aggregating operations.&lt;/li&gt;
&lt;li&gt;Create a Refresh Schedule for the dataset (if your dataset is configured to does not cache data in SPICE, QuickSight will query your database for each sorting and analytical operation [mostly for RDS].)&lt;/li&gt;
&lt;li&gt;Connect dataset to dashboard. &lt;a href="https://docs.aws.amazon.com/cli/latest/reference/quicksight/create-dashboard.html"&gt;API&lt;/a&gt;
&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F01sfcefuyjh2ibfxfx6o.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F01sfcefuyjh2ibfxfx6o.png" alt="Data Pipeline" width="800" height="534"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Automation&lt;/strong&gt;&lt;br&gt;
AWS QuickSight has API for almost every operation you can imagine, and that gives you the power to automate the entire deployment process.&lt;/p&gt;

&lt;p&gt;You can find all the available API for QuickSight in below link.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://docs.aws.amazon.com/cli/latest/reference/quicksight/index.html"&gt;https://docs.aws.amazon.com/cli/latest/reference/quicksight/index.html&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Resources&lt;/strong&gt;&lt;br&gt;
&lt;a href="https://docs.aws.amazon.com/cli/latest/reference/quicksight/index.html"&gt;https://docs.aws.amazon.com/cli/latest/reference/quicksight/index.html&lt;/a&gt;&lt;br&gt;
&lt;a href="https://docs.aws.amazon.com/cli/latest/reference/quicksight/generate-embed-url-for-anonymous-user.html"&gt;https://docs.aws.amazon.com/cli/latest/reference/quicksight/generate-embed-url-for-anonymous-user.html&lt;/a&gt;&lt;br&gt;
&lt;a href="https://docs.aws.amazon.com/quicksight/latest/user/spice.html"&gt;https://docs.aws.amazon.com/quicksight/latest/user/spice.html&lt;/a&gt;&lt;br&gt;
&lt;a href="https://community.amazonquicksight.com/"&gt;https://community.amazonquicksight.com/&lt;/a&gt;&lt;/p&gt;

</description>
    </item>
  </channel>
</rss>
