<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"><channel><category>pcsoft.fr.windev</category><copyright>Copyright 2026, PC SOFT</copyright><lastBuildDate>20 May 2020 18:52:57 Z</lastBuildDate><pubDate>18 May 2020 11:59:19 Z</pubDate><description>Bonjour,&#13;
&#13;
Je vois que ce sujet a été traité quelques fois, mais comme les choses évoluent et que je suis "nouveau" sur WinDev, j'ose imaginer qu'il y a soit eu des nouveautés depuis ces posts, soit j'ai quelque chose de mal configuré.&#13;
J'ai plusieurs années d'expériences avec des DB SQLite, je sais à quel niveau de performance on peut s'attendre même sur une base de données "locale".&#13;
&#13;
Le projet sur lequel je travaille possède une base de données HFSQL "classique" (donc locale). En réflexion sur une fonctionnalité, je voulais voir ce que HFSQL peut encaisser en volume de données avant de valider une solution technique.&#13;
&#13;
J'ai donc créé une table très simple: un identifiant (entier, clé primaire), une valeur texte (rempli avec des guid, mais peu importe). Cette table contient 100 000 lignes. Mon test est simple: lire chacune des lignes avec autant de requête en utilisant l'identifiant, donc... 100 000 requêtes.&#13;
&#13;
D'autre part, à titre de comparaison, je crée la même table dans une DB SQLite.&#13;
&#13;
Après quelques constats sur la libération des sources de données, je fais un benchmark des 3 codes suivants:&#13;
&#13;
1e version, avec libération des sources de données, avec DB HFSQL&#13;
[code:wl]&#13;
PROCÉDURE LitHFSQL(piCount est un entier)&#13;
&#13;
sSelectStmt est une chaîne = "select Valeur from test where IDTest = %1"&#13;
sdSelect est une Source de Données&#13;
HConnecte("*")&#13;
&#13;
iIndex est un entier = 1&#13;
&#13;
TANTQUE iIndex &lt;= piCount&#13;
	HExécuteRequêteSQL(sdSelect, ChaîneConstruit(sSelectStmt, iIndex))&#13;
	HAnnuleDéclaration(sdSelect)&#13;
	&#13;
	iIndex++&#13;
FIN&#13;
&#13;
HFerme("*")&#13;
[/code]&#13;
&#13;
2e version, sans libération des sources de données, avec DB HFSQL&#13;
[code:wl]&#13;
PROCÉDURE LitHFSQL_fast(piCount est un entier)&#13;
&#13;
sSelectStmt est une chaîne = "select Valeur from test where IDTest = %1"&#13;
HConnecte("*")&#13;
&#13;
iIndex est un entier = 1&#13;
&#13;
TANTQUE iIndex &lt;= piCount&#13;
	HExécuteRequêteSQL("sdSelect" + iIndex, ChaîneConstruit(sSelectStmt, iIndex))&#13;
	&#13;
	iIndex++&#13;
FIN&#13;
&#13;
HFerme("*")&#13;
[/code]&#13;
&#13;
3e version, DB SQLite&#13;
[code:wl]&#13;
PROCÉDURE LitSQLite(piCount est un entier)&#13;
&#13;
sSelectStmt est une chaîne = "select Valeur from test where IDTest = %1"&#13;
testConnexion est un entier = SQLConnecte("test09.db", "", "", "", "SQLITE")&#13;
&#13;
iIndex est un entier = 1&#13;
&#13;
TANTQUE iIndex &lt;= piCount&#13;
	SQLExec(ChaîneConstruit(sSelectStmt, iIndex), "SelectTest")&#13;
	SQLFerme("SelectTest")&#13;
	&#13;
	iIndex++&#13;
FIN&#13;
&#13;
SQLDéconnecte()&#13;
[/code]&#13;
&#13;
Voici les résultats obtenus (en secondes), en fonction du nombre d'enregistrements lus&#13;
[code:text]&#13;
       HFSQL avec libération    HFSQL sans libération	SQLite&#13;
100           1,385                    0,016             0,002&#13;
500           7,518                    0,074             0,019&#13;
1000         14,304                    0,144             0,016&#13;
2000         28,268                    0,261             0,032&#13;
5000         68,767                    0,744             0,074&#13;
10000          *                       1,527             0,148&#13;
100000         *                      48,284             1,5&#13;
[/code]&#13;
* Etant donné le temps que cela prendrait, je n'ai même pas fait ce test dans ce cas.&#13;
&#13;
A noter que, bien évidemment, sans libération des ressources, l'empreinte mémoire explose littéralement: 2,7Go en RAM pour seulement 100 000 lignes lues!&#13;
A coté de ça, le moteur SQLite ne bronche pas, l'empreinte mémoire est inexistante.&#13;
J'ai fait un test en utilisant les mêmes méthodes que SQLite pour HFSQL, les résultats sont les mêmes. Le problème viendrait donc bien du moteur de base de données. Ou, je l'espère, d'un problème de configuration dans ma base de données.&#13;
&#13;
Je suis perplexe, et mon choix technique dépend, évidemment, fortement des performances du moteur HFSQL.&#13;
&#13;
Quelqu'un aurait-il une idée ou une indication à tester?&#13;
&#13;
Merci!</description><ttl>30</ttl><generator>WEBDEV</generator><language>fr_FR</language><link>https://forum.pcsoft.fr/es-ES/pcsoft.fr.windev/239631-performance-hfsql/read.awp</link><title>Performance HFSQL</title><managingEditor>moderateur@pcsoft.fr (El moderador)</managingEditor><webMaster>webmaster@pcsoft.fr (El webmaster)</webMaster><item><author>Côme</author><category>pcsoft.fr.windev</category><comments>https://forum.pcsoft.fr/es-ES/pcsoft.fr.windev/239631-performance-hfsql-239720/read.awp</comments><pubDate>20 May 2020 18:52:57 Z</pubDate><description>Padbrain a écrit : &#13;
[...]&#13;
il ne me viendrait pas à l'esprit de requêter n fois dans une boucle pour sélectionner mes résultats…</description><guid isPermaLink="true">https://forum.pcsoft.fr/es-ES/pcsoft.fr.windev/239631-performance-hfsql-239720/read.awp</guid><link>https://forum.pcsoft.fr/es-ES/pcsoft.fr.windev/239631-performance-hfsql-239720/read.awp</link><source url="https://forum.pcsoft.fr/es-ES/pcsoft.fr.windev/239631-performance-hfsql/read.awp">Performance HFSQL</source><title>Re: Performance HFSQL</title></item><item><author>VincentRG</author><category>pcsoft.fr.windev</category><comments>https://forum.pcsoft.fr/es-ES/pcsoft.fr.windev/239631-performance-hfsql-239698/read.awp</comments><pubDate>20 May 2020 11:11:41 Z</pubDate><description>Philippe SB a écrit : &#13;
&#13;
&gt; @VincentRG&#13;
&gt; SQLite gère seulement quelques types (4 ou 5), très basiques, mais qui permettent de t…</description><guid isPermaLink="true">https://forum.pcsoft.fr/es-ES/pcsoft.fr.windev/239631-performance-hfsql-239698/read.awp</guid><link>https://forum.pcsoft.fr/es-ES/pcsoft.fr.windev/239631-performance-hfsql-239698/read.awp</link><source url="https://forum.pcsoft.fr/es-ES/pcsoft.fr.windev/239631-performance-hfsql/read.awp">Performance HFSQL</source><title>Re: Performance HFSQL</title></item><item><author>Padbrain</author><category>pcsoft.fr.windev</category><comments>https://forum.pcsoft.fr/es-ES/pcsoft.fr.windev/239631-performance-hfsql-239697/read.awp</comments><pubDate>20 May 2020 11:11:03 Z</pubDate><description>VincentRG a écrit : &#13;
&#13;
&gt; &#13;
&gt; Ce genre de cas (multitude de requêtes SELECT) est un cas de figure "pratique". Lorsqu'on implémen…</description><guid isPermaLink="true">https://forum.pcsoft.fr/es-ES/pcsoft.fr.windev/239631-performance-hfsql-239697/read.awp</guid><link>https://forum.pcsoft.fr/es-ES/pcsoft.fr.windev/239631-performance-hfsql-239697/read.awp</link><source url="https://forum.pcsoft.fr/es-ES/pcsoft.fr.windev/239631-performance-hfsql/read.awp">Performance HFSQL</source><title>Re: Performance HFSQL</title></item><item><author>Philippe SB</author><category>pcsoft.fr.windev</category><comments>https://forum.pcsoft.fr/es-ES/pcsoft.fr.windev/239631-performance-hfsql-239693/read.awp</comments><pubDate>20 May 2020 10:28:28 Z</pubDate><description>Pour ma part, j'essaye d'utiliser HFSQL le moins possible. Encore cette semaine la même requête lancée sur HFSQL et Postgresql d…</description><guid isPermaLink="true">https://forum.pcsoft.fr/es-ES/pcsoft.fr.windev/239631-performance-hfsql-239693/read.awp</guid><link>https://forum.pcsoft.fr/es-ES/pcsoft.fr.windev/239631-performance-hfsql-239693/read.awp</link><source url="https://forum.pcsoft.fr/es-ES/pcsoft.fr.windev/239631-performance-hfsql/read.awp">Performance HFSQL</source><title>Re: Performance HFSQL</title></item><item><author>jeanphi.news</author><category>pcsoft.fr.windev</category><comments>https://forum.pcsoft.fr/es-ES/pcsoft.fr.windev/239631-performance-hfsql-239690/read.awp</comments><pubDate>20 May 2020 10:04:49 Z</pubDate><description>Il se trouve que Gurdarr a formulé :&#13;
&gt; VincentRG : Depuis le début j'étais persuadé que vous étiez en client / &#13;
&gt; serveur du c…</description><guid isPermaLink="true">https://forum.pcsoft.fr/es-ES/pcsoft.fr.windev/239631-performance-hfsql-239690/read.awp</guid><link>https://forum.pcsoft.fr/es-ES/pcsoft.fr.windev/239631-performance-hfsql-239690/read.awp</link><source url="https://forum.pcsoft.fr/es-ES/pcsoft.fr.windev/239631-performance-hfsql/read.awp">Performance HFSQL</source><title>Re: Performance HFSQL</title></item><item><author>VincentRG</author><category>pcsoft.fr.windev</category><comments>https://forum.pcsoft.fr/es-ES/pcsoft.fr.windev/239631-performance-hfsql-239686/read.awp</comments><pubDate>20 May 2020 09:01:49 Z</pubDate><description>@Benjamin&#13;
Au sujet des index, j'avais justement précisé ce point dans ma réponse précédente:&#13;
"Je passe régulièrement un coup d…</description><guid isPermaLink="true">https://forum.pcsoft.fr/es-ES/pcsoft.fr.windev/239631-performance-hfsql-239686/read.awp</guid><link>https://forum.pcsoft.fr/es-ES/pcsoft.fr.windev/239631-performance-hfsql-239686/read.awp</link><source url="https://forum.pcsoft.fr/es-ES/pcsoft.fr.windev/239631-performance-hfsql/read.awp">Performance HFSQL</source><title>Re: Performance HFSQL</title></item><item><author>Gurdarr</author><category>pcsoft.fr.windev</category><comments>https://forum.pcsoft.fr/es-ES/pcsoft.fr.windev/239631-performance-hfsql-239682/read.awp</comments><pubDate>19 May 2020 19:14:17 Z</pubDate><description>VincentRG : Depuis le début j'étais persuadé que vous étiez en client / serveur du coup effectivement oublier le SQL en HFSQL en…</description><guid isPermaLink="true">https://forum.pcsoft.fr/es-ES/pcsoft.fr.windev/239631-performance-hfsql-239682/read.awp</guid><link>https://forum.pcsoft.fr/es-ES/pcsoft.fr.windev/239631-performance-hfsql-239682/read.awp</link><source url="https://forum.pcsoft.fr/es-ES/pcsoft.fr.windev/239631-performance-hfsql/read.awp">Performance HFSQL</source><title>Re: Performance HFSQL</title></item><item><author>Der§en</author><category>pcsoft.fr.windev</category><comments>https://forum.pcsoft.fr/es-ES/pcsoft.fr.windev/239631-performance-hfsql-239680/read.awp</comments><pubDate>19 May 2020 18:51:08 Z</pubDate><description>J’ai eu envie moi aussi de faire des test comparatif, mais pas moyen de trouver un lien pour télécharger le client natif pour Wi…</description><guid isPermaLink="true">https://forum.pcsoft.fr/es-ES/pcsoft.fr.windev/239631-performance-hfsql-239680/read.awp</guid><link>https://forum.pcsoft.fr/es-ES/pcsoft.fr.windev/239631-performance-hfsql-239680/read.awp</link><source url="https://forum.pcsoft.fr/es-ES/pcsoft.fr.windev/239631-performance-hfsql/read.awp">Performance HFSQL</source><title>Re: Performance HFSQL</title></item><item><author>bchanudet</author><category>pcsoft.fr.windev</category><comments>https://forum.pcsoft.fr/es-ES/pcsoft.fr.windev/239631-performance-hfsql-239678/read.awp</comments><pubDate>19 May 2020 17:46:16 Z</pubDate><description>VincentRG a écrit : &#13;
&gt; @Benjamin&#13;
&gt; J'ai donc réalisé en plus un test "croisé":&#13;
&gt; 1 - accès SQLite avec les fonctions "H"&#13;
&gt; 2…</description><guid isPermaLink="true">https://forum.pcsoft.fr/es-ES/pcsoft.fr.windev/239631-performance-hfsql-239678/read.awp</guid><link>https://forum.pcsoft.fr/es-ES/pcsoft.fr.windev/239631-performance-hfsql-239678/read.awp</link><source url="https://forum.pcsoft.fr/es-ES/pcsoft.fr.windev/239631-performance-hfsql/read.awp">Performance HFSQL</source><title>Re: Performance HFSQL</title></item><item><author>VincentRG</author><category>pcsoft.fr.windev</category><comments>https://forum.pcsoft.fr/es-ES/pcsoft.fr.windev/239631-performance-hfsql-239671/read.awp</comments><pubDate>19 May 2020 15:49:59 Z</pubDate><description>@Benjamin&#13;
J'ai donc réalisé en plus un test "croisé":&#13;
1 - accès SQLite avec les fonctions "H"&#13;
2 - accès HFSQL avec SQLConnect…</description><guid isPermaLink="true">https://forum.pcsoft.fr/es-ES/pcsoft.fr.windev/239631-performance-hfsql-239671/read.awp</guid><link>https://forum.pcsoft.fr/es-ES/pcsoft.fr.windev/239631-performance-hfsql-239671/read.awp</link><source url="https://forum.pcsoft.fr/es-ES/pcsoft.fr.windev/239631-performance-hfsql/read.awp">Performance HFSQL</source><title>Re: Performance HFSQL</title></item><item><author>jeanphi.news</author><category>pcsoft.fr.windev</category><comments>https://forum.pcsoft.fr/es-ES/pcsoft.fr.windev/239631-performance-hfsql-239656/read.awp</comments><pubDate>19 May 2020 10:36:11 Z</pubDate><description>Après mûre réflexion, VincentRG a écrit :&#13;
&gt; Bonjour,&#13;
&gt;&#13;
&gt; Je vois que ce sujet a été traité quelques fois, mais comme les chos…</description><guid isPermaLink="true">https://forum.pcsoft.fr/es-ES/pcsoft.fr.windev/239631-performance-hfsql-239656/read.awp</guid><link>https://forum.pcsoft.fr/es-ES/pcsoft.fr.windev/239631-performance-hfsql-239656/read.awp</link><source url="https://forum.pcsoft.fr/es-ES/pcsoft.fr.windev/239631-performance-hfsql/read.awp">Performance HFSQL</source><title>Re: Performance HFSQL</title></item><item><author>Gurdarr</author><category>pcsoft.fr.windev</category><comments>https://forum.pcsoft.fr/es-ES/pcsoft.fr.windev/239631-performance-hfsql-239654/read.awp</comments><pubDate>19 May 2020 09:52:30 Z</pubDate><description>Bonjour,&#13;
&#13;
je parlais pour l'éditeur de requête des requêtes que tu enregistres dans ton projet au dessus de classe dans l'édit…</description><guid isPermaLink="true">https://forum.pcsoft.fr/es-ES/pcsoft.fr.windev/239631-performance-hfsql-239654/read.awp</guid><link>https://forum.pcsoft.fr/es-ES/pcsoft.fr.windev/239631-performance-hfsql-239654/read.awp</link><source url="https://forum.pcsoft.fr/es-ES/pcsoft.fr.windev/239631-performance-hfsql/read.awp">Performance HFSQL</source><title>Re: Performance HFSQL</title></item><item><author>bchanudet</author><category>pcsoft.fr.windev</category><comments>https://forum.pcsoft.fr/es-ES/pcsoft.fr.windev/239631-performance-hfsql-239653/read.awp</comments><pubDate>19 May 2020 09:36:30 Z</pubDate><description>Bonjour,&#13;
&#13;
Ne serait-il pas plus "égalitaire" de réaliser les tests SQLite également avec les fonctions HExecuteRequeteSQL() ? …</description><guid isPermaLink="true">https://forum.pcsoft.fr/es-ES/pcsoft.fr.windev/239631-performance-hfsql-239653/read.awp</guid><link>https://forum.pcsoft.fr/es-ES/pcsoft.fr.windev/239631-performance-hfsql-239653/read.awp</link><source url="https://forum.pcsoft.fr/es-ES/pcsoft.fr.windev/239631-performance-hfsql/read.awp">Performance HFSQL</source><title>Re: Performance HFSQL</title></item><item><author>jean.pierre.bloch</author><category>pcsoft.fr.windev</category><comments>https://forum.pcsoft.fr/es-ES/pcsoft.fr.windev/239631-performance-hfsql-239652/read.awp</comments><pubDate>19 May 2020 09:32:43 Z</pubDate><description>De quoi s'agit-il ?&#13;
"options hOptimiseurV1 puis hOptimiseurV2" ????&#13;
&#13;
--&#13;
Bon dev,&#13;
Jean-Pierre</description><guid isPermaLink="true">https://forum.pcsoft.fr/es-ES/pcsoft.fr.windev/239631-performance-hfsql-239652/read.awp</guid><link>https://forum.pcsoft.fr/es-ES/pcsoft.fr.windev/239631-performance-hfsql-239652/read.awp</link><source url="https://forum.pcsoft.fr/es-ES/pcsoft.fr.windev/239631-performance-hfsql/read.awp">Performance HFSQL</source><title>Re: Performance HFSQL</title></item><item><author>VincentRG</author><category>pcsoft.fr.windev</category><comments>https://forum.pcsoft.fr/es-ES/pcsoft.fr.windev/239631-performance-hfsql-239645/read.awp</comments><pubDate>18 May 2020 17:50:00 Z</pubDate><description>Merci pour toutes ces suggestions!&#13;
Pour ma part aussi, il s'agit d'un projet historiquement développé avec une DB HFSQL locale.…</description><guid isPermaLink="true">https://forum.pcsoft.fr/es-ES/pcsoft.fr.windev/239631-performance-hfsql-239645/read.awp</guid><link>https://forum.pcsoft.fr/es-ES/pcsoft.fr.windev/239631-performance-hfsql-239645/read.awp</link><source url="https://forum.pcsoft.fr/es-ES/pcsoft.fr.windev/239631-performance-hfsql/read.awp">Performance HFSQL</source><title>Re: Performance HFSQL</title></item><item><author>Gurdarr</author><category>pcsoft.fr.windev</category><comments>https://forum.pcsoft.fr/es-ES/pcsoft.fr.windev/239631-performance-hfsql-239644/read.awp</comments><pubDate>18 May 2020 16:16:54 Z</pubDate><description>Bonjour,&#13;
&#13;
je pense qu'utiliser une source de données ( fonction LitHFSQL() ) doit induire un traitement en interne entre la va…</description><guid isPermaLink="true">https://forum.pcsoft.fr/es-ES/pcsoft.fr.windev/239631-performance-hfsql-239644/read.awp</guid><link>https://forum.pcsoft.fr/es-ES/pcsoft.fr.windev/239631-performance-hfsql-239644/read.awp</link><source url="https://forum.pcsoft.fr/es-ES/pcsoft.fr.windev/239631-performance-hfsql/read.awp">Performance HFSQL</source><title>Re: Performance HFSQL</title></item><item><author>VincentRG</author><category>pcsoft.fr.windev</category><comments>https://forum.pcsoft.fr/es-ES/pcsoft.fr.windev/239631-performance-hfsql-239639/read.awp</comments><pubDate>18 May 2020 14:32:12 Z</pubDate><description>La mise en page du tableau de benchmarking a un peu sauté, les colonnes de valeur sont:&#13;
1 - nb d'enregistrements requêtés&#13;
2 - …</description><guid isPermaLink="true">https://forum.pcsoft.fr/es-ES/pcsoft.fr.windev/239631-performance-hfsql-239639/read.awp</guid><link>https://forum.pcsoft.fr/es-ES/pcsoft.fr.windev/239631-performance-hfsql-239639/read.awp</link><source url="https://forum.pcsoft.fr/es-ES/pcsoft.fr.windev/239631-performance-hfsql/read.awp">Performance HFSQL</source><title>Re: Performance HFSQL</title></item></channel></rss>
