Bof, murmur c’est un int32/64, 4 a 8 bytes donc.
La solution de rabban, c’est 11.
Apres, sinon, je suis pas DBA donc je vais ptet dire une connerie, mais
C’est pas le principe des index de premacher ce genre de chose ? Ou sinon de faire des foreign key et des jointures et tout, plutot que de generer tout les cas possibles pour en extract un truc apres. Apres, c’est ptet juste du sql/nosql qu’il faut reviser tout betement.
Je croyais que la base etait en local ? Il viens faire quoi l’hebergement la ? Juste hoster un fichier sqlite ?
Je vois pas super bien ce que t’essayes de faire, mais t’es en train de reinventer la roue, l’essieu et le cheval, alors que tu donnes l’impression de vouloir faire une brouette.
Par contre la taille dépend de la position de la catégorie. Du coup tu peux optimiser en mettant les moins utilisées sur les sur les valeurs les plus fortes.
Et en fonction du nombre moyen de catégories par vidéo, la concaténation peut valoir le coup: en utilisant chiffres + lettres tu as 36 caractères, même pas besoin de séparateur.
Le probleme c’est que j’ai 89 categories , mais du coup merci de l’id de mettre les categories les moins utilisées dans les combos sur les valeurs les plus forts et d’optimiser en fonction
je vais test pour voir a combien je descend
@AnA-l en tout cas merci je ne connaissais pas murmur
En fait c’est quoi ton problème? Tu veux diminuer la taille de la base de données pour faciliter le download? Si c’est ca, tu es au courant qu’en HTTP, tu la balance en GZIP ou en Deflate et tout optimisation de la DB elle même sera nullifiée par le fait de que toute façon ca sera envoyé compressé?
Alors attache toi au canal de communication plutôt qu’essayer d’encoder la base de données.
Sinon, inclure une base de données dans une page web, c’est vraiment pas une bonne idée. T’es sur que tu veux pas plutôt faire du chargement sur demande avec une gestion de cache agressive?
Le truc c’est que ca va etre dans un bucket amazon pour limiter les couts donc des pages webs statiques …
Mais apres je me plante peut etre (surement) mais ce genre d’optimisation m’interesse quand meme
En gros tout le site doit etre dans un bucket amazon pour des raisons de couts (la pub rapportant que dalle).
Du coup pour soit je met la db dans le site, soit je genere une page statique par entrée de la db …
@perecil apres si la gestion de cache agressive peut se faire en mode statique dans un bucket je suis preneur de doc …
Bah “une page statique par entree de db”, ou “balancer la DB en JS chez le client”, la reponse c’est:
Ca depend.
Autant j’aime pas faire comme @AnA-l le remarque, et te dire de tout refaire differement, mais il faut quand meme admettre que tu cherches une otpimisation sur un truc qui parait completement con de prime abord. Et comme tu ne files aucune information sur le contexte et peu sur les contraintes, faire un choix est tendu.
on part sur quel nombre d’items dans la DB?
a quelle vitesse cette db va grossir?
est ce que cette meme db va etre modifiee souvent?
Balancer un download de 20MB pour pouvoir faire une recherche pour acceder a une page web, ca me parait completement fou
Pour reference, je viens d’ouvrir ma home twitter, et j’ai pour moins de 7MB de download sur un force refresh/clear cache. Moins de 9MB sur la home de Amazon.co.uk, et c’est blinde d’images. Et je suis sur la grosse connexion du boulot. J’ose pas imaginer ce que ton site ferait sur un mobile.
Nan mais le but c’est de tenir dans un bucket amazon a 1€ par an. Alors qu’avec une homepage free, un pour de php qui tape dans une DB en sqlite, il aurait la meme pour le meme cout et sans faire des trucs alambiqués. Mais si la contrainte du bucket amazon est importante, ben soit.
au lieu de tomber dans le sarcasme, on a toujours zero info sur ton contexte et tes contraintes (a part “ouais la pub ca paye rien”) qui font que tu vas sur du Amazon S3 comme solution. On n’a pas d’idee de ce que tu fais derriere, comment tu le mets en place, ou quoi; la seule info que tu nous donne c’est “je veux generer un id tres petit pour reduire la taille d’une db qui sera embed en JS et download par le client pour pouvoir acceder a des pages web”
Encore une fois, je le repete, la conclusion n’a pas de sens sans le contexte, et notre capacite a pouvoir t’aider est limitee.