Opened 14 years ago
Closed 14 years ago
#17245 closed Bug (duplicate)
IpAddressField not stored effeciently
| Reported by: | harm | Owned by: | nobody |
|---|---|---|---|
| Component: | Database layer (models, ORM) | Version: | |
| Severity: | Normal | Keywords: | |
| Cc: | Triage Stage: | Unreviewed | |
| Has patch: | no | Needs documentation: | no |
| Needs tests: | no | Patch needs improvement: | no |
| Easy pickings: | no | UI/UX: | no |
Description
Django stores IpAddressField as a string: (mysql `ip_joined` char(15) DEFAULT NULL, )
This is not effecient, and in cases where you have a LOT of these this hurts.
Django should use an INT UNSIGNED column instead of char(15). This saves 73% storage.
(difference between a 32GB ram VPS or a 8GB VPS)
mysql provides some nice helpers for this:
mysql> SELECT INET_ATON('10.0.5.9');
-> 167773449
ref: http://dev.mysql.com/doc/refman/5.0/en/miscellaneous-functions.html#function_inet-aton
Note:
See TracTickets
for help on using tickets.
See #326.