<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>BI experience</title>
	<atom:link href="http://infodecisionnel.com/feed/" rel="self" type="application/rss+xml" />
	<link>http://infodecisionnel.com</link>
	<description></description>
	<lastBuildDate>Wed, 13 Feb 2019 10:57:39 +0000</lastBuildDate>
	<language>fr-FR</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.4.1</generator>
		<item>
		<title>ola.hallengren.com : plan de maintenance SQL server</title>
		<link>http://infodecisionnel.com/sgbd/bdd/ola-hallengren-com-plan-de-maintenance-sql-server/</link>
		<comments>http://infodecisionnel.com/sgbd/bdd/ola-hallengren-com-plan-de-maintenance-sql-server/#comments</comments>
		<pubDate>Wed, 13 Feb 2019 10:57:39 +0000</pubDate>
		<dc:creator>maryam khiali</dc:creator>
				<category><![CDATA[BDD]]></category>

		<guid isPermaLink="false">http://infodecisionnel.com/?p=4294</guid>
		<description><![CDATA[Les temps de réponses des bases de données, leurs optimisations, leurs maintenances sont des paramètres, des processes que l&#8217;on a besoin de traiter lors de nos projets. J&#8217;avais tenter d&#8217;expliquer le fonctionnement et l&#8217;audit des indexes et des statistiques dans &#8230; <a href="http://infodecisionnel.com/sgbd/bdd/ola-hallengren-com-plan-de-maintenance-sql-server/">Lire la Suite <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p>Les temps de réponses des bases de données, leurs optimisations, leurs maintenances sont des paramètres, des processes que l&rsquo;on a besoin de traiter lors de nos projets.</p>
<p>J&rsquo;avais tenter d&rsquo;expliquer le fonctionnement et l&rsquo;audit des indexes et des statistiques <a href="http://infodecisionnel.com/sgbd/bdd/sql-server-index-et-statistiques/">dans ce post</a>.</p>
<p>Pour aller plus loin sur ce sujet, je voulais partager les possibilités que nous propose le site <a href="https://ola.hallengren.com/">https://ola.hallengren.com</a>?</p>
<p>Ce site nous délivre des scripts afin de créer tous les objets (procédures stockées, tables d&rsquo;administrations, jobs) dont nous avons besoin pour mettre en place le plan de maintenance de nos instances SQL server : voir le lien &laquo;&nbsp;MaintenanceSolution.sql&nbsp;&raquo;.</p>
<p>Ce site propose également une documentation des options, des paramètres que l&rsquo;on peut configurer pour s&rsquo;approprier ces scripts : voir le menu de gauche</p>
<p><a href="http://infodecisionnel.com/sgbd/bdd/ola-hallengren-com-plan-de-maintenance-sql-server/attachment/ola_hallengren/" rel="attachment wp-att-4304"><img class="aligncenter size-full wp-image-4304" title="ola_hallengren" src="http://infodecisionnel.com/wp-content/uploads/2019/02/ola_hallengren.png" alt="" width="1152" height="648" /></a></p>
<p>Vous pourrez adapter le script &laquo;&nbsp;MaintenanceSolution.sql&nbsp;&raquo; en fonction de vos besoins :</p>
<p><a href="http://infodecisionnel.com/sgbd/bdd/ola-hallengren-com-plan-de-maintenance-sql-server/attachment/ola_hallengren_scripts/" rel="attachment wp-att-4309"><img class="aligncenter size-full wp-image-4309" title="ola_hallengren_scripts" src="http://infodecisionnel.com/wp-content/uploads/2019/02/ola_hallengren_scripts.png" alt="" width="905" height="525" /></a></p>
<p>C&rsquo;est vraiment pas mal d&rsquo;être accompagné pour ce genre de tâches&#8230;</p>
<p>Si vous avez des tips sur les plans de maintenances SQL server&#8230;N&rsquo;hésitez pas à laisser des commentaires!</p>
]]></content:encoded>
			<wfw:commentRss>http://infodecisionnel.com/sgbd/bdd/ola-hallengren-com-plan-de-maintenance-sql-server/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Report Server : audit d&#8217;utilisation</title>
		<link>http://infodecisionnel.com/non-classe/report-server-audit-dutilisation/</link>
		<comments>http://infodecisionnel.com/non-classe/report-server-audit-dutilisation/#comments</comments>
		<pubDate>Tue, 13 Mar 2018 15:14:43 +0000</pubDate>
		<dc:creator>maryam khiali</dc:creator>
				<category><![CDATA[Non classé]]></category>

		<guid isPermaLink="false">http://infodecisionnel.com/?p=4279</guid>
		<description><![CDATA[Dans cet article, j&#8217;avais envie de partager une requête simple pour auditer l&#8217;utilisation de votre plateforme reportServer : &#171;&#160;select exe.UserName, exe.TimeStart, exe.Format, cat.Path, cat.Name from [ReportServer].[dbo].[ExecutionLogStorage] exe, [ReportServer].[dbo].[Catalog] cat where cat.ItemID = exe.ReportID &#160;&#187; Avec ces tables systèmes SSRS, 60 jours &#8230; <a href="http://infodecisionnel.com/non-classe/report-server-audit-dutilisation/">Lire la Suite <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p>Dans cet article, j&rsquo;avais envie de partager une requête simple pour auditer l&rsquo;utilisation de votre plateforme reportServer :</p>
<p>&laquo;&nbsp;select<br />
exe.UserName,<br />
exe.TimeStart,<br />
exe.Format,<br />
cat.Path,<br />
cat.Name<br />
from<br />
[ReportServer].[dbo].[ExecutionLogStorage] exe,<br />
[ReportServer].[dbo].[Catalog] cat<br />
where<br />
cat.ItemID = exe.ReportID &nbsp;&raquo;</p>
<p>Avec ces tables systèmes SSRS, 60 jours de logs sont disponibles par défaut. En vous connectant à l&rsquo;instance SSRS et en faisant un clique droit&gt; propriétés vous pourrez modifier le nombre de jours assez facilement et le fait qu&rsquo;il y ait ces logs.</p>
<p>Utilisez vous d&rsquo;autres requêtes pour bien cerner l&rsquo;utilisation de votre plateforme de rapports ?</p>
<p>&nbsp;</p>
<p>&nbsp;</p>
]]></content:encoded>
			<wfw:commentRss>http://infodecisionnel.com/non-classe/report-server-audit-dutilisation/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>En quoi cette nouvelle option : Adaptive Query Processing peut m&#8217;aider?</title>
		<link>http://infodecisionnel.com/sql-server/en-quoi-cette-nouvelle-option-adaptive-query-processing-peut-maider/</link>
		<comments>http://infodecisionnel.com/sql-server/en-quoi-cette-nouvelle-option-adaptive-query-processing-peut-maider/#comments</comments>
		<pubDate>Tue, 06 Mar 2018 15:46:28 +0000</pubDate>
		<dc:creator>maryam khiali</dc:creator>
				<category><![CDATA[SQL Server]]></category>
		<category><![CDATA[SQL server 2017]]></category>

		<guid isPermaLink="false">http://infodecisionnel.com/?p=4206</guid>
		<description><![CDATA[Cette nouvelle option présente dans SQL server 2017, nous permet de mettre en place des requêtes plus performantes. Pour ce faire 3 options s&#8217;offrent à nous : batch mode adaptive joins batch mode memory grant feedback interleaved execution for multi-statement &#8230; <a href="http://infodecisionnel.com/sql-server/en-quoi-cette-nouvelle-option-adaptive-query-processing-peut-maider/">Lire la Suite <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p>Cette nouvelle option présente dans SQL server 2017, nous permet de mettre en place des requêtes plus performantes. Pour ce faire 3 options s&rsquo;offrent à nous :</p>
<ul>
<li>batch mode adaptive joins</li>
<li>batch mode memory grant feedback</li>
<li>interleaved execution for multi-statement table valued functions</li>
</ul>
<p>Pour activer cette option ALTER DATABASE [mon_datawarehouse] SET COMPATIBILITY_LEVEL = 140;</p>
<p>Rappel rapide du fonctionnement d&rsquo;SQL server sur l&rsquo;exécution des requêtes :</p>
<ul>
<li>Etape 1 : Liste de divers scénarios de plan d&rsquo;exécution.</li>
<li>Etape 2 : estimation en coût (nb de lignes, en % CPU) de ces divers scénarios =&gt; ce coût calculé peut-être faux si les dernières statistiques ne sont pas à jour par exemple. Pour en savoir plus sur ces coûts, <a href="http://web-plus-sucre.fr/tuto-info/3-optimisation-des-requetes-grace-aux-outils-de-performance-SQL-Server.html">voici un petit article sympa</a></li>
<li>Etape 3 : selection du scénario  le plus faible en coût d&rsquo;exécution</li>
<li>Etape 4 : exécution de la requête en fonction de ce plan d&rsquo;exécution sélectionné</li>
</ul>
<p>&nbsp;</p>
<p>Détaillons maintenant chaque option :</p>
<p><strong>le batch mode adaptive joins :</strong></p>
<p>SQL server utilise actuellement 3 algorithmes pour procéder à une jointure : &nbsp;&raquo;nested loop&nbsp;&raquo;, &laquo;&nbsp;merge&nbsp;&raquo;, et  &laquo;&nbsp;hash match&nbsp;&raquo;. Pour choisir le plus approprié, SQL server se base sur les coûts estimés.</p>
<p>Grâce à cette nouvelle option voici comment va fonctionner SQL server 2017 : si nb lignes de l’entrée de la jointure  &lt;= au seuil défini par cette option alors &laquo;&nbsp;nested loop&nbsp;&raquo; sinon &laquo;&nbsp;hash match&nbsp;&raquo;. <strong>Cette analyse est faite dynamiquement lors de l&rsquo;exécution de la requête</strong>.</p>
<p>Note : La jointure &nbsp;&raquo;hash match&nbsp;&raquo; est utilisée dans ce cas lorsqu&rsquo;</p>
<ul>
<li>un index columnstore est présent dans la requête globale</li>
<li>ou quand la jointure référence directement la table d’index columnstore</li>
</ul>
<p><strong>le batch mode memory grant feedback :</strong></p>
<p>Cette option permet de calculer <strong>pour chaque requête la mémoire nécessaire</strong> à l&rsquo;exécution de cette dernière et <strong>de mettre à jour le  &laquo;&nbsp;cached plan&nbsp;&raquo;</strong> (l&rsquo;endroit ou les plans d&rsquo;exécution sont mis en cache pour réutilisation si une requête similaire venait à être exécutée). La gestion de la mémoire nécessaire à l&rsquo;exécution des requêtes est mieux gérée. Une trop grande allocation mémoire bloquante pour d&rsquo;autres requêtes ou une allocation mémoire trop juste ralentissant les performances de la requête ne seront plus possibles. Cette option nécessite l&rsquo;utilisation des &laquo;&nbsp;columnstore indexes &nbsp;&raquo;</p>
<p>voici <a href="https://www.mssqltips.com/sqlservertip/4827/sql-server-2017-adaptive-memory-grant-feedback-for-stored-procedure-performance-improvements/">un exemple</a> bien mené pour comprendre avec ou sans cette option</p>
<p><strong>Interleaved execution for multi-statement table valued functions :</strong></p>
<p>Ce genre de fonction existait déjà sur les versions précédentes SQL. Elle a été améliorée dans SQL server 2017 afin d&rsquo;augmenter son efficacité. Les couts d&rsquo;exécution sont calculés sur chaque sous requête de la fonction et donc propose un plan d&rsquo;exécution plus précis et plus performant sur le nombre de lignes à prendre en compte et donc la mémoire à allouée.</p>
<p>Avez vous déjà activées et utilisées ces options?</p>
<p>Voici <a href="https://blogs.technet.microsoft.com/dataplatforminsider/2017/09/28/enhancing-query-performance-with-adaptive-query-processing-in-sql-server-2017/">ma source de données</a></p>
]]></content:encoded>
			<wfw:commentRss>http://infodecisionnel.com/sql-server/en-quoi-cette-nouvelle-option-adaptive-query-processing-peut-maider/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>La puisssance du &#171;&#160;real time operational analytics&#160;&#187;</title>
		<link>http://infodecisionnel.com/sql-server/la-puisssance-du-real-time-operational-analytics/</link>
		<comments>http://infodecisionnel.com/sql-server/la-puisssance-du-real-time-operational-analytics/#comments</comments>
		<pubDate>Mon, 05 Mar 2018 11:41:14 +0000</pubDate>
		<dc:creator>maryam khiali</dc:creator>
				<category><![CDATA[SQL Server]]></category>
		<category><![CDATA[SQL server 2016]]></category>
		<category><![CDATA[SQL server 2017]]></category>

		<guid isPermaLink="false">http://infodecisionnel.com/?p=4180</guid>
		<description><![CDATA[Depuis SQL server 2016, Microsoft nous met à disposition un nouveau système d&#8217;analyse. Ce système a pour objectif de plugger, en temps réel, un cube directement sur les tables opérationnelles d&#8217;une source unique que peut être par exemple l&#8217;ERP aussi &#8230; <a href="http://infodecisionnel.com/sql-server/la-puisssance-du-real-time-operational-analytics/">Lire la Suite <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p>Depuis SQL server 2016, Microsoft nous met à disposition un nouveau système d&rsquo;analyse. Ce système a pour objectif de plugger, en temps réel, un cube directement sur les tables opérationnelles d&rsquo;une source unique que peut être par exemple l&rsquo;ERP aussi sous SQL server . Plus besoin, pour ce genre d&rsquo;analyse opérationnelle de traitement ETL, ni de datawarehouse.</p>
<p>La BI traditionnelle n&rsquo;en sera pas évincée pour autant car le croisement de divers sources d&rsquo;informations fait qu&rsquo;un datawarehouse et des traitements d&rsquo;agrégations aux préalables seront toujours nécessaires. Ce nouveau système nous permet juste, d&rsquo;avoir une souplesse en plus, une nouvelle possibilité de satisfaire les demandes opérationnelles de nos utilisateurs.</p>
<p>L’analytique en temps réel utilise principalement les &laquo;&nbsp;columnstore index&nbsp;&raquo;  modifiables sur une table rowstore. Sur le site de Microsoft cette partie est vraiment bien forumlée : &laquo;&nbsp;Le &laquo;&nbsp;columnstore index&nbsp;&raquo; gère une copie des données pour que les charges de travail OLTP et analytiques soient exécutées sur des copies distinctes des données. Cela réduit l’impact sur les performances de ces deux charges de travail en cours d’exécution en même temps. SQL Server gère automatiquement les modifications d’index pour que les changements OLTP soient toujours à jour pour l’analytique. Grâce à cette conception, il est possible et pratique d’exécuter l’analytique en temps réel sur des données à jour. Cela fonctionne aussi bien pour les tables sur disque que pour les tables optimisées en mémoire.&nbsp;&raquo;</p>
<p>Que pensez vous de cette super option?</p>
<p>voici <a href="https://docs.microsoft.com/fr-fr/sql/relational-databases/indexes/get-started-with-columnstore-for-real-time-operational-analytics">ma source</a></p>
]]></content:encoded>
			<wfw:commentRss>http://infodecisionnel.com/sql-server/la-puisssance-du-real-time-operational-analytics/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Peut-on en savoir plus sur le &#171;&#160;In memory column store&#160;&#187;?</title>
		<link>http://infodecisionnel.com/sql-server/peut-on-en-savoir-plus-sur-le-in-memory-column-store/</link>
		<comments>http://infodecisionnel.com/sql-server/peut-on-en-savoir-plus-sur-le-in-memory-column-store/#comments</comments>
		<pubDate>Mon, 05 Mar 2018 08:13:30 +0000</pubDate>
		<dc:creator>maryam khiali</dc:creator>
				<category><![CDATA[SQL Server]]></category>
		<category><![CDATA[SQL server 2016; SQL server 2017]]></category>

		<guid isPermaLink="false">http://infodecisionnel.com/?p=4158</guid>
		<description><![CDATA[Grâce à un indexe particulier qu&#8217;est le &#171;&#160;columnstore index&#160;&#187;, le stockage et le traitement des requêtes est optimisé pour : les chargements  et le stockage en masse : une compression des données 10 fois supérieure à la taille des données non compressées. &#8230; <a href="http://infodecisionnel.com/sql-server/peut-on-en-savoir-plus-sur-le-in-memory-column-store/">Lire la Suite <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p>Grâce à un indexe particulier qu&rsquo;est le &laquo;&nbsp;columnstore index&nbsp;&raquo;, le stockage et le traitement des requêtes est optimisé pour :</p>
<ul>
<li>les chargements  et le stockage en masse : une compression des données 10 fois supérieure à la taille des données non compressées. Ces taux de compression améliorent les performances des requêtes en utilisant moins de mémoire et donc en permettant à SQL Server d&rsquo;exécuter davantage d&rsquo;opérations.</li>
<li>les requêtes en lecture seule : des requêtes 10 fois plus performantes  en comparaison à un stockage orienté lignes traditionnel</li>
</ul>
<p>Détails techniques intéressants :</p>
<ul>
<li>le &laquo;&nbsp;cluster columnstore index&nbsp;&raquo; est modifiable et accompagnera tous les traitements massifs d&rsquo;insertions, mises à jour  et suppressions.</li>
<li>un nouveau mécanisme d&rsquo;exécution de requête, appelé « exécution en mode batch » a été ajouté à SQL Server pour réduire considérablement l&rsquo;utilisation de l&rsquo;UC</li>
</ul>
<p>Scénarios BI :</p>
<p>Cas où cela peut être intéressant :</p>
<ul>
<li>pour le stockage de grandes &laquo;&nbsp;tables de faits&nbsp;&raquo; ou &laquo;&nbsp;tables de dimensions&nbsp;&raquo;</li>
<li>pour les requêtes qui utilisent des analyses de table complètes</li>
</ul>
<p>Cas où cela ne convient pas :</p>
<ul>
<li>pour les requêtes qui effectuent des opérations de recherche de données sur une valeur particulière par exemple.</li>
</ul>
<p>L&rsquo;avez vous déjà mis en œuvre? Et dans quel cas?</p>
<p>Voici mes sources :<br />
<a href="https://msdn.microsoft.com/fr-fr/library/gg492088(v=sql.120).aspx">source 1 </a><br />
<a href="https://docs.microsoft.com/fr-fr/sql/relational-databases/indexes/columnstore-indexes-overview">source 2 </a><br />
&nbsp;</p>
<p>&nbsp;</p>
]]></content:encoded>
			<wfw:commentRss>http://infodecisionnel.com/sql-server/peut-on-en-savoir-plus-sur-le-in-memory-column-store/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>C&#8217;est quoi le In Memory OLTP ?</title>
		<link>http://infodecisionnel.com/sql-server/cest-quoi-le-in-memory-oltp/</link>
		<comments>http://infodecisionnel.com/sql-server/cest-quoi-le-in-memory-oltp/#comments</comments>
		<pubDate>Fri, 02 Mar 2018 14:20:33 +0000</pubDate>
		<dc:creator>maryam khiali</dc:creator>
				<category><![CDATA[SQL Server]]></category>

		<guid isPermaLink="false">http://infodecisionnel.com/?p=4105</guid>
		<description><![CDATA[Sur les deux articles précédents, nous avons décrit les options présentes ou pas aux niveaux des différentes versions et éditions d&#8217;SQL server. Encore faut-il comprendre à quoi servent ces options afin de savoir si dans notre cas client elles pourraient nous &#8230; <a href="http://infodecisionnel.com/sql-server/cest-quoi-le-in-memory-oltp/">Lire la Suite <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p>Sur les deux articles précédents, nous avons décrit les options présentes ou pas aux niveaux des différentes versions et éditions d&rsquo;SQL server.<br />
Encore faut-il comprendre à quoi servent ces options afin de savoir si dans notre cas client elles pourraient nous être indispensables&#8230;</p>
<p>Je vous propose lors des articles à venir de décrire ces options en restant sur un angle BI pour une lecture plus facile et orientée.</p>
<p>Commençons donc par l&rsquo;option &laquo;&nbsp;In Memory OLTP&nbsp;&raquo;. Cette option apporte performance pour les traitements transactionnels en :<br />
- supprimant des verrous entre les transactions exécutées simultanément.<br />
- optimisant en mémoire, les algorithmes de stockage des données, les accès et les traitements des données.</p>
<p>Les objets qui permettent de bénéficier de ces performances sont :</p>
<ul>
<li>Les &laquo;&nbsp;<strong>Memory optimized tables&nbsp;&raquo; </strong>: ces types de tables sont utilisées par exemple
<ul>
<li>pour les &laquo;&nbsp;<strong>table-valued parameters&nbsp;&raquo; : </strong>permettant de faire du chargement en bulk de plusieurs lignes de données en une fois.</li>
<li>dans les procédures stockées, pour les jeux de données intermédiaires stockés dans des tables de type de &laquo;&nbsp;<strong>Memory optimized tables</strong>&nbsp;&raquo; . Ces dernières hériteront des avantages des &laquo;&nbsp;<strong>non durable </strong><strong>m<strong>emory optimized tables</strong> </strong>&nbsp;&raquo; : accès efficace aux données et absence d’E/S</li>
</ul>
</li>
</ul>
<p>Ce type d&rsquo;objet ne réduit pas l’utilisation du processeur.<br />
(si la plupart des requêtes effectuent des opérations d’agrégation sur de grandes plages de données  : utiliser plutôt des index columnstore)</p>
<ul>
<li>Les &laquo;&nbsp;<strong>non durable tables <strong>m<strong>emory optimized tables</strong></strong>&nbsp;&raquo; </strong>: Le stockage principale de ces tables est la mémoire principale. Les modifications apportées à ces tables n’entraînent aucune E/S</li>
<li>Les &laquo;&nbsp;<strong>natively compiled</strong> <strong>T-SQL modules&nbsp;&raquo;</strong> (procédures stockées, déclencheurs et fonctions scalaires ) permettent d’accélérer encore plus l’exécution d’une transaction individuelle en réduisant les cycles processeur requis pour traiter les opérations.</li>
</ul>
<p>Les scénarios BI qui peuvent nous intéresser :</p>
<p><strong>Use case 1 :</strong> Remplacer certains objets standards de la tempdb :<br />
- les &laquo;&nbsp;tables temporaires&nbsp;&raquo; (#temp) par les &laquo;&nbsp;<strong>Non durable tables </strong><strong>m<strong>emory optimized tables</strong></strong>&nbsp;&raquo; qui réduisent généralement l’utilisation du processeur<br />
- ou encore les &laquo;&nbsp;variables de table&nbsp;&raquo; par les &laquo;&nbsp;<strong>table-valued parameters</strong>&nbsp;&raquo; qui suppriment complètement les E/S de journal.</p>
<p><strong>Use case 2 :</strong> au niveau de l&rsquo;ETL</p>
<p>- Pour charger et mettre à jour d’importants volumes de données provenant de nombreuses sources différentes : utiliser des &laquo;&nbsp;<strong>non durable tables </strong><strong>m<strong>emory optimized tables</strong></strong>&nbsp;&raquo; pour la mise en lots des données. Elles suppriment complètement les E/S et optimisent l’efficacité de l’accès aux données.</p>
<p>-Pour accélérer les transformations sur la table de mise en lots : utiliser des &laquo;&nbsp;<strong>natively compiled</strong> <strong>T-SQL modules</strong>&laquo;&nbsp;. De plus pour toujours plus de performance, il sera possible de paralléliser ces transformations.</p>
<p>J&rsquo;espère que ce point est un peu plus clair&#8230;Dites moi ce que vous en pensez&#8230;Si vous avez déjà utilisés ces options&#8230;</p>
]]></content:encoded>
			<wfw:commentRss>http://infodecisionnel.com/sql-server/cest-quoi-le-in-memory-oltp/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Comparaison des éditions d&#8217;SQL server 2017</title>
		<link>http://infodecisionnel.com/sql-server/comparaison-des-editions-dsql-server-2017/</link>
		<comments>http://infodecisionnel.com/sql-server/comparaison-des-editions-dsql-server-2017/#comments</comments>
		<pubDate>Fri, 02 Mar 2018 09:01:01 +0000</pubDate>
		<dc:creator>maryam khiali</dc:creator>
				<category><![CDATA[SQL Server]]></category>
		<category><![CDATA[SQL server 2017]]></category>

		<guid isPermaLink="false">http://infodecisionnel.com/?p=4090</guid>
		<description><![CDATA[Après les comparaisons des versions, voici la comparaison des différentes éditions d&#8217;SQL server 2017. J&#8217;ai retranscrit sur Excel car cela me semblait plus lisible&#8230; Voici la source de données.]]></description>
			<content:encoded><![CDATA[<p>Après les comparaisons des versions, voici la comparaison des différentes éditions d&rsquo;SQL server 2017.<br />
J&rsquo;ai retranscrit sur Excel car cela me semblait plus lisible&#8230; Voici <a href="https://www.microsoft.com/en-us/sql-server/sql-server-2017-editions">la source de données.</a></p>
<p><a href="http://infodecisionnel.com/sql-server/comparaison-des-editions-dsql-server-2017/attachment/versions_2017_1/" rel="attachment wp-att-4091"><img src="http://infodecisionnel.com/wp-content/uploads/2018/03/versions_2017_1.png" alt="" title="versions_2017_1" width="1036" height="627" class="aligncenter size-full wp-image-4091" /></a><br />
<a href="http://infodecisionnel.com/sql-server/comparaison-des-editions-dsql-server-2017/attachment/versions_2017_2/" rel="attachment wp-att-4092"><img src="http://infodecisionnel.com/wp-content/uploads/2018/03/versions_2017_2.png" alt="" title="versions_2017_2" width="1039" height="467" class="aligncenter size-full wp-image-4092" /></a><br />
<a href="http://infodecisionnel.com/sql-server/comparaison-des-editions-dsql-server-2017/attachment/versions_2017_3/" rel="attachment wp-att-4093"><img src="http://infodecisionnel.com/wp-content/uploads/2018/03/versions_2017_3.png" alt="" title="versions_2017_3" width="1035" height="526" class="aligncenter size-full wp-image-4093" /></a><a href="http://infodecisionnel.com/sql-server/comparaison-des-editions-dsql-server-2017/attachment/versions_2017_4/" rel="attachment wp-att-4094"><img src="http://infodecisionnel.com/wp-content/uploads/2018/03/versions_2017_4.png" alt="" title="versions_2017_4" width="1037" height="368" class="aligncenter size-full wp-image-4094" /></a></p>
]]></content:encoded>
			<wfw:commentRss>http://infodecisionnel.com/sql-server/comparaison-des-editions-dsql-server-2017/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Comparaison des versions d&#8217;SQL server</title>
		<link>http://infodecisionnel.com/sql-server/comparaison-des-versions-dsql-server/</link>
		<comments>http://infodecisionnel.com/sql-server/comparaison-des-versions-dsql-server/#comments</comments>
		<pubDate>Fri, 02 Mar 2018 08:06:14 +0000</pubDate>
		<dc:creator>maryam khiali</dc:creator>
				<category><![CDATA[SQL Server]]></category>
		<category><![CDATA[SQL server 2016; SQL server 2017; SQL server 2012]]></category>

		<guid isPermaLink="false">http://infodecisionnel.com/?p=4071</guid>
		<description><![CDATA[Avec la sortie d&#8217;SQL server 2017, je me suis dit qu&#8217;il fallait que je jette un œil aux nouvelles options. Quand on est chez un client final, on a tendance à être phagocyté par les problématiques métiers et les technologies &#8230; <a href="http://infodecisionnel.com/sql-server/comparaison-des-versions-dsql-server/">Lire la Suite <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p>Avec la sortie d&rsquo;SQL server 2017, je me suis dit qu&rsquo;il fallait que je jette un œil aux nouvelles options. Quand on est chez un client final, on a tendance à être phagocyté par les problématiques métiers et les technologies présentes chez le client. Il faut donc faire un effort de veille technologique qui est peut être plus évident en société de service.</p>
<p>Voici dans cet article une comparaison des différentes versions d&rsquo;SQL server. On constate vraiment les avancés technologiques faites en 10 ans. Le consultant BI se doit d&rsquo;être un couteau suisse.</p>
<p><a href="http://infodecisionnel.com/non-classe/comparaison-des-versions-dsql-server/attachment/sql-server-versions/" rel="attachment wp-att-4072"><img class="aligncenter size-full wp-image-4072" title="sql server versions" src="http://infodecisionnel.com/wp-content/uploads/2018/03/sql-server-versions.png" alt="" width="1023" height="689" /></a></p>
<p>J&rsquo;ai retranscrit sur Excel les options car je trouvais ça plus lisible. Voici <a href="https://www.microsoft.com/en-us/sql-server/sql-server-2017-comparison" title="sql-server-2017-comparison">ma source de données</a>.</p>
<p>&nbsp;</p>
]]></content:encoded>
			<wfw:commentRss>http://infodecisionnel.com/sql-server/comparaison-des-versions-dsql-server/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Femme ingénieure</title>
		<link>http://infodecisionnel.com/carriere/femme-ingenieure/</link>
		<comments>http://infodecisionnel.com/carriere/femme-ingenieure/#comments</comments>
		<pubDate>Wed, 07 Jun 2017 12:57:14 +0000</pubDate>
		<dc:creator>maryam khiali</dc:creator>
				<category><![CDATA[Carrière]]></category>

		<guid isPermaLink="false">http://infodecisionnel.com/?p=4045</guid>
		<description><![CDATA[En me baladant sur le net, je suis tombée sur ce site que j&#8217;ai trouvé génial : femme-ingenieure.fr. Quand j&#8217;étais en école d&#8217;ingénieur, j&#8217;aurai vraiment aimé avoir accès à ce genre de site. Nous étions 15 filles sur une promotion &#8230; <a href="http://infodecisionnel.com/carriere/femme-ingenieure/">Lire la Suite <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p style="text-align: left;">En me baladant sur le net, je suis tombée sur ce site que j&rsquo;ai trouvé génial : <a title="www.femme-ingenieure.fr" href="http://www.femme-ingenieure.fr/">femme-ingenieure.fr</a>.<br />
Quand j&rsquo;étais en école d&rsquo;ingénieur, j&rsquo;aurai vraiment aimé avoir accès à ce genre de site. Nous étions 15 filles sur une promotion de 300 personnes&#8230;<br />
Il est vrai qu&rsquo;être une femme dans le milieu du numérique n&rsquo;est pas toujours facile à bien des égards que ce soit en milieu scolaire ou même en milieu profesionnel.<br />
En parcourant ce site, j&rsquo;ai constaté que les esprits changent et ça fait du bien!<br />
Bonne lecture!</p>
]]></content:encoded>
			<wfw:commentRss>http://infodecisionnel.com/carriere/femme-ingenieure/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Reportservertempdb grossit de manière significative</title>
		<link>http://infodecisionnel.com/reporting-2/ssrs/reportservertempdb-grossit-de-maniere-significative/</link>
		<comments>http://infodecisionnel.com/reporting-2/ssrs/reportservertempdb-grossit-de-maniere-significative/#comments</comments>
		<pubDate>Tue, 06 Jun 2017 13:51:25 +0000</pubDate>
		<dc:creator>maryam khiali</dc:creator>
				<category><![CDATA[SSRS]]></category>

		<guid isPermaLink="false">http://infodecisionnel.com/?p=4001</guid>
		<description><![CDATA[N&#8217;ayant pas de serveurs surdimensionnés à ma disposition, le moindre gigaoctet est précieux. En monitorant les serveurs j&#8217;ai pu constater que la table &#171;&#160;Segment&#160;&#187; de la base &#171;&#160;Reportservertempdb&#160;&#187; avait pris un volume de plus de 50Go. En creusant le sujet, &#8230; <a href="http://infodecisionnel.com/reporting-2/ssrs/reportservertempdb-grossit-de-maniere-significative/">Lire la Suite <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p>N&rsquo;ayant pas de serveurs surdimensionnés à ma disposition, le moindre gigaoctet est précieux.<br />
En monitorant les serveurs j&rsquo;ai pu constater que la table &laquo;&nbsp;Segment&nbsp;&raquo; de la base &laquo;&nbsp;Reportservertempdb&nbsp;&raquo; avait pris un volume de plus de 50Go.</p>
<p>En creusant le sujet, j&rsquo;ai pu lire sur les forums que cette taille qui augmente pouvait avoir 4 causes:<br />
- <strong>Cause 1 </strong>: le nombre de snapshot stockés par rapport<br />
- <strong>Cause 2</strong> : des rapports qui mettent plus de 10 minutes à s&rsquo;exécuter<br />
- <strong>Cause 3 </strong>: la non exécution de la procédure de clean up toutes les 10 minutes.<br />
- <strong>Cause 4 </strong>: une base qui existe depuis longtemps qui n&rsquo;a jamais été cleanée</p>
<p>- <strong>Solution 1</strong> :<br />
Etape 1 : Aller sur le &laquo;&nbsp;report manager&nbsp;&raquo;, allez dans &laquo;&nbsp;Site Settings&nbsp;&raquo;, et cocher &laquo;&nbsp;Limit the copies of report history to : 10 &nbsp;&raquo; au lieu du paramètre par défaut.<br />
Etape 2 :Ensuite faire du ménage sur votre plateforme de rapport s&rsquo;il y en a besoin en supprimant des snapshots non utilisés.</p>
<p>- <strong>Solution 2</strong> :<br />
Revoir ces rapports qui prennent trop de temps. Aller sur la base &laquo;&nbsp;Reportservertempdb&nbsp;&raquo; et exécuter la requête suivante pour les identifier :<br />
&nbsp;&raquo;<br />
select Name, exe.UserName, exe.TimeStart, exe.TimeEnd, DATEDIFF(second,exe.TimeStart, exe.TimeEnd) as DureeEnSeconde<br />
from [ReportServer].[dbo].[ExecutionLogStorage] exe,<br />
[ReportServer].[dbo].[Catalog] cat<br />
where cat.ItemID = exe.ReportID<br />
ORDER BY DATEDIFF(second,exe.TimeStart, exe.TimeEnd) desc&nbsp;&raquo;</p>
<p>- <strong>Solution 3</strong> :<br />
Aller dans le fichier de Log de votre instance SSRS et regarder s&rsquo;il y a un message d&rsquo;erreur concernant la tâche CleanBatch</p>
<p>- <strong>Solution 4</strong> :<br />
<strong>Possibilité 1 : </strong> Vous pouvez choisi cette première possibilité peu extrême et faire ces étapes :<br />
Etape 1 : éteindre le service report serveur<br />
Etape 2 : exécuter un TRUNCATE des tables<br />
Etape 3 : faire un shrink des fichiers de base de données<br />
Etape 4 : redémarrer le service report serveur</p>
<p><strong>Possibilité 2 : </strong> ou exécuter ce script pour un nettoyage en douceur :<br />
&nbsp;&raquo;<br />
begin transaction</p>
<p>declare @cleanedSnapshots table (SnapshotDataId uniqueidentifier) ;<br />
declare @cleanedChunks table (ChunkId uniqueidentifier) ;<br />
declare @cleanedSegments table (ChunkId uniqueidentifier, SegmentId uniqueidentifier) ;<br />
declare @deleteCount int ;</p>
<p>insert into @cleanedSnapshots<br />
select distinct SnapshotDataId<br />
from SegmentedChunk<br />
where SnapshotDataId not in (select SnapshotDataID from SnapshotData)</p>
<p>&#8211; clean up chunks<br />
set @deleteCount = 1 ;<br />
while (@deleteCount &gt; 0)<br />
begin<br />
delete top(20) SC<br />
output deleted.ChunkId into @cleanedChunks(ChunkId)<br />
from SegmentedChunk SC with (readpast)<br />
join @cleanedSnapshots cs on SC.SnapshotDataId = cs.SnapshotDataId ;<br />
set @deleteCount = @@ROWCOUNT ;<br />
end ;</p>
<p>&#8211; clean up unused mappings<br />
set @deleteCount = 1 ;<br />
while (@deleteCount &gt; 0)<br />
begin<br />
delete top(20) CSM<br />
output deleted.ChunkId, deleted.SegmentId into @cleanedSegments (ChunkId, SegmentId)<br />
from ChunkSegmentMapping CSM with (readpast)<br />
join @cleanedChunks cc ON CSM.ChunkId = cc.ChunkId<br />
where not exists (<br />
select 1 from SegmentedChunk SC<br />
where SC.ChunkId = cc.ChunkId )<br />
and not exists (<br />
select 1 from [ReportServerTempDB].dbo.SegmentedChunk TSC<br />
where TSC.ChunkId = cc.ChunkId ) ;<br />
set @deleteCount = @@ROWCOUNT ;<br />
end ;</p>
<p>&#8211; clean up segments<br />
set @deleteCount = 1<br />
while (@deleteCount &gt; 0)<br />
begin<br />
delete top(20) S<br />
from Segment S with (readpast)<br />
join @cleanedSegments cs on S.SegmentId = cs.SegmentId<br />
where not exists (<br />
select 1 from ChunkSegmentMapping csm<br />
where csm.SegmentId = cs.SegmentId ) ;<br />
set @deleteCount = @@ROWCOUNT ;<br />
end</p>
<p>commit<br />
&nbsp;&raquo;</p>
<p><strong>Possibilité 3 :</strong>ou encore exécuter  :<br />
DBCC CLEANTABLE (ReportServerTempDB,&rsquo;dbo.Segment&rsquo;, 0)<br />
WITH NO_INFOMSGS; </p>
<p>Et vous? Avez vous déjà rencontré ce problème?</p>
]]></content:encoded>
			<wfw:commentRss>http://infodecisionnel.com/reporting-2/ssrs/reportservertempdb-grossit-de-maniere-significative/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>
