【发布时间】:2009-11-04 10:22:52
【问题描述】:
假设您有一些非常大的 (100k+) 对象可用,并且可以以 20 多种语言提供这些数据(例如名称)。在 SQL 数据库中存储/处理这些数据的有效方法是什么。
这样做的明显方法看起来像这样 - 但是,还有其他更有意义的方法吗?我有点担心性能。
CREATE TABLE "object" (
"id" serial NOT NULL PRIMARY KEY
);
CREATE TABLE "object_name" (
"object_id" integer NOT NULL REFERENCES "object" ("id")
"lang" varchar(5) NOT NULL,
"name" varchar(50) NOT NULL
);
就用法而言,使用只会选择一种语言,这将导致object_name 表上的潜在大连接。
无论是否过早优化,我都对其他方法感兴趣,如果只是让自己安心,那么显而易见的解决方案并不是一个非常愚蠢的解决方案。
要阐明实际模型要复杂得多。这只是目前确定的模式。
【问题讨论】:
标签: sql database performance internationalization translation