Série de didacticiels Apache IoTDB-5: Résumé des problèmes courants (1)

Dans le passé, j'ai recueilli beaucoup de commentaires de chacun dans le processus de son utilisation. Aujourd'hui, je vais énumérer quelques problèmes communs pour fournir des références à plus de gens. Vous pouvez scanner le code QR d'un groupe d'échange pour entrer dans le groupe.

Le texte est de 1974 mots et le temps de lecture prévu est de 5 minutes.

Problème commun

Résumé: problèmes de démarrage, problèmes de connexion, charge excessive, problèmes de nom de chemin, regroupement par syntaxe, perte de précision et métadonnées vides.

Problème de démarrage

Se produit généralement dans les fenêtres, vous pouvez vérifier s'il y a des espaces dans le chemin, si le chemin est trop long, etc.

Le client ne peut pas se connecter au serveur

Le journal des exceptions est lié aux économies, aux champs manquants, etc. Ce sont toutes des incompatibilités de version. Il est nécessaire de s'assurer que le client et le serveur sont de la même version majeure, telle que 0.9.x ou 0.10.x.

Référence spécifique:

https://blog.csdn.net/qiaojialin/article/details/106258371

La charge du système est trop lourde

La charge du système IoTDB est trop importante. Vous serez invité à désactiver le paramètre enable_parameter_adapter. La désactivation de ce paramètre présente un risque d'explosion de la mémoire et vous devez ajuster manuellement les paramètres. Méthode de réglage simple:

memtable_size_threshold = tsfile_size_threshold

= Mémoire allouable * 50% / nombre de groupes de stockage / 4 (avec données hors service)

= Mémoire allouable * 50% / nombre de groupes de stockage / 2 (pas de données en désordre)

Dans le fichier de configuration 0.10.0, il y a un guide de réglage des paramètres pour le paramètre enable_parameter_adapter, vous pouvez vous y référer.

Problème de nom de chemin

0.8, 0.9 Il existe différents degrés de prise en charge des noms de chemin. La règle de dénomination la plus courante est que la règle de dénomination commence par des lettres et des traits de soulignement et se compose de lettres, de chiffres et de traits de soulignement. Les autres caractères spéciaux, tels que ¥ # & -, ne sont pris en charge que dans la version 0.10.0. En ce qui concerne la dernière couche, nous avons déjà trouvé une solution de guillemets. Ce n'est pas un problème d'écrire cela en 0.10.0, mais les en-têtes renvoyés par la requête peuvent ne pas être uniformes. Ce problème sera complètement résolu dans la version 0.11.0 ou 0.10.1. J'écrirai une introduction d'article distinct à ce moment-là.

La syntaxe de group by est incorrecte

Les versions antérieures à 0.9 et 0.10 ont une syntaxe group by différente. Vous devez faire attention à la version d'IoTDB.

La syntaxe de 0.9 est group by (1d, 2017-11-03 00:00:00, [2017-11-01 00:00:00, 2017-11-07 23:00:00]);

La syntaxe de 0.10 est group by ([2017-11-01 00:00:00, 2017-11-07 23:00:00), 3h, 1d);

Pour plus de détails, reportez-vous à l'article précédent: Syntaxe SQL de base

réinitialisation de la connexion par paire

La connexion est instable, vous pouvez utiliser SessionPool, qui dispose d'un mécanisme de reconnexion.

timeout pour établir une connexion

N'oubliez pas de fermer l'ensemble de résultats interrogé avec SessionPool. Si vous oubliez de le fermer, la connexion sera toujours occupée. La façon de fermer est sessionPool.close (SessionDataSetWrapper).

Problèmes liés à MQTT

En plus de l'exemple de client java mqtt, d'autres clients mqtt doivent définir l'ID client, ce qui permettra l'utilisation d'un ID client vide dans la version 0.11.0.

0.10.0 et les versions antérieures autorisent l'accès anonyme, ce qui a été corrigé dans la version 0.11.0-SNAPSHOT.

Perte d'exactitude des données

L'utilisation de RLE et TS_2DIFF pour Float et Double a une perte de précision. Deux décimales sont réservées par défaut et arrondies selon la troisième place, qui peut être contrôlée par le paramètre float_precision.

L'encodage Gorilla est recommandé pour les nombres à virgule flottante, sans perte.

La version 0.9 éclate la mémoire

Besoin de définir merge_interval_sec sur 0.

Les métadonnées sont vides après le redémarrage

Ce problème s'est produit dans la version 0.9.2 et les versions antérieures. Les métadonnées ne seront pas perdues, mais la mémoire est vidée après avoir rencontré le journal des erreurs lors du redémarrage. Il peut être mis à niveau vers 0.9.3 ou 0.10.0, et il peut être résolu en redémarrant.

Quatre étapes pour rencontrer des problèmes

premier pas

Essayez la nouvelle version, peut-être que la nouvelle version conviendra (auparavant, j'aime toujours trouver une ancienne version à utiliser lorsque je télécharge le logiciel, maintenant je veux juste utiliser la dernière version après avoir commencé à créer le logiciel ...)

Deuxième étape

Effectuez des opérations via le client. Si une exception se produit, le code d'erreur sera inclus dans l'exception. Vous pouvez obtenir le code d'erreur via getStatusCode, puis vérifier ce lien:

http://iotdb.apache.org/zh/UserGuide/V0.10.x/Client/Status%20Codes.html

Cette méthode peut vous aider à identifier les problèmes grammaticaux, les problèmes de version, etc.

troisième étape

Recherchez dans la liste des problèmes Github. Si vous ne l'avez pas, vous pouvez la créer. Essayez de décrire clairement vos opérations et problèmes spécifiques. Si vous disposez d'un journal des erreurs, vous pouvez le publier.

https://github.com/apache/incubator-iotdb/issues

Les questions posées sur github recevront essentiellement des commentaires dans un délai d'un jour ou deux. Il convient de noter qu'il est préférable de donner des commentaires sur la solution une fois qu'elle est résolue et de donner d'autres références.

la quatrième étape

Pour nous contacter, vous pouvez contacter l'auteur et m'ajouter sur WeChat en bas du compte officiel.

Pour résumer

Le logiciel est utilisé. Plus il y a de commentaires de votre part, plus l'IoTDB est facile à utiliser. Merci pour les utilisateurs qui sont dans la phase de croissance rapide de l'IoTDB. Le prochain article présentera le réglage.

Bienvenue dans une star: https://github.com/apache/incubator-iotdb

Je suppose que tu aimes

Origine blog.csdn.net/qiaojialin/article/details/107171511
conseillé
Classement