我从我的数据库创建了一个平面表并在其上定义了一个 solr 核心。
到目前为止效果很好。
我的问题是我的表有两个层次结构。所以当扁平化时它太大了。
让我们考虑以下示例场景
我的桌子是
School
Students (1:n with school)
Teachers(1:n with school)
编辑:考虑到我的示例中的所有表都有两列:我想索引和搜索的名称和描述,搜索是用户生成的对这些列的自由文本搜索。
现在,每所学校都有很多学生和老师,但每个学生/老师都有另一个多值字段。即下表
studentHobbies - 1:N with students
teacherCourses - 1:N with teachers
我的主要实体是学校,我想在结果中得到什么。扁平化对我没有多大帮助,而且非常昂贵。
编辑查询问题
当您按学校名称查询平面表时,如我所述,如果学校有 300 名学生、300 名教师、300 名有 300 名教师课程、300 名学生爱好,那么您将获得 81 亿行(300*300*300*300) . 搜索学校名称将检索 8.1 B 行。
你能指导我如何在 data-config.xml 中定义 1:n:n 关系吗
谢谢。