2010-07-27 2 views
0

J'ai vérifié différents systèmes de base de données orientés colonne tels que InfiniDB, InfobrightDB et MonetDB. Aucun d'entre eux ne supporte les entiers non signés comme type de stockage de données. Pourquoi? Une solution consiste à stocker tous les entiers non signés de 4 octets dans des entiers signés de 8 octets (Link), mais je pense que cela gaspillerait trop d'espace. Existe-t-il un système de base de données orienté colonne open source prenant en charge les entiers non signés? J'ai déjà vérifié cela (Link) sans aucune chance. Merci beaucoup pour votre temps.Type de données entiers non signés dans un SGBD orienté colonne

Emer

Répondre

2

J'ai trouvé une réponse sur "Comment migrer de SQL Server" (page4) à Infobright.org:

- entiers non signés entiers non signés ont historiquement été sélectionnés par DBAs et les concepteurs de base de données pour fournir capacité pour des valeurs maximales plus grandes pour un champ entier donné que possible avec un entier signé. Lorsque les valeurs négatives n'existent pas dans les données ou ne sont pas autorisés, l'approche de sélection entiers non signés permis logement des valeurs plus élevées tout en sélectionnant les petits types de données dans technologies orientées ligne traditionnelles. Dans le cas d'Infobright, lorsque des octets inutiles existent pour une valeur entière , ils sont "évincés" par les algorithmes de compression inhérents . Pour cette raison, Infobright recommande sélectionner les données de nombres entiers suivants en plus grande de type - par exemple, BIGINT sur INTEGER, ou MEDIUMINT sur SMALLINT - de telle sorte que la valeur maximale de la colonne peut être logé encore dans le choix type de données. Infobright ne subit pas les conséquences de sur l'espace gaspillé à "sur-dactylographier" ses colonnes.

0

MySQL prend en charge des entiers non signés comme un type de colonne

+2

MySQL n'est pas une base de données orientée colonne, de sorte qu'il ne s'applique pas à la question. –

Questions connexes