2012-04-03 2 views
0

Je veux calculer la taille dont ma base de données JavaDB aura besoin et donc j'ai besoin de savoir comment char est encodé pour savoir combien d'octets il utilisera sur le disque.Encodage Derby/JavaDB char - taille sur le disque

Est-ce que quelqu'un sait quel encodage de caractères utilise Derby? J'ai lu que Derby utilise Unicode, mais n'a trouvé aucune information sur l'encodage (ni dans le manuel de référence, ni dans les autres pages).

Répondre

0

Je crois que c'est UTF8. Cependant, chaque fois que j'essaie de déterminer l'espace disque que ma base de données utilisera, j'utilise toujours une approche de benchmarking: écrire un petit programme de test qui génère une base de données, en utilisant des exemples de données de test, en essayant d'essayer pour rendre ces données aussi représentatives de votre application que vous le pouvez. Générez suffisamment de données pour être réaliste (par exemple, au moins 10 000 lignes).

Générez un certain nombre de lignes rondes, comme 10 000 ou 100 000 ou 1 000 000. Ensuite, regardez les fichiers de base de données que Derby a créés sur le disque, voyez leur taille, faites un peu de correspondance, et vous comprendrez votre résultat. La bonne chose à propos d'une approche comme celle-ci est qu'elle vous aidera à attraper des erreurs comme: oublier un index secondaire entier, ou ne pas comprendre que votre contrainte UNIQUE ajouté un tas de frais généraux dans les coulisses, ou oublier de compter certains les colonnes que vous pensiez ne pas importer, mais s'est avéré prendre une quantité substantielle d'espace.

Questions connexes