跳至主要內容
  • Hostloc 空間訪問刷分
  • 售賣場
  • 廣告位
  • 賣站?

4563博客

全新的繁體中文 WordPress 網站
  • 首頁
  • 字典,词典这些网站的数据库关系是怎么设计的?如下
未分類
22 3 月 2020

字典,词典这些网站的数据库关系是怎么设计的?如下

字典,词典这些网站的数据库关系是怎么设计的?如下

資深大佬 : python30 24

先说情况在最后再提问题。

比如这个站: https://zidian.51240.com/

一开始是, 三个分类

拼音查字 部首查字 笔画数查字

字典,词典这些网站的数据库关系是怎么设计的?如下

然后分别点击进去后 是一类分类

字典,词典这些网站的数据库关系是怎么设计的?如下

然后再点进去 又是一类分类

字典,词典这些网站的数据库关系是怎么设计的?如下

然后再 点进 字典 进去后才是字的具体含义

点进 组词 进去后 是这个字的各种组词

字典,词典这些网站的数据库关系是怎么设计的?如下

按 拼音 部首 笔画数 查到字后

在字里面又有对应的词,而且这些词都带链接上的,点进去后又会有详情的词。

没什么经历。感觉这些对应关系太复杂了

如果想用 python 采一下,存在 mysql 里不知道怎么设置数据库对应的关系, 用 django 模型设计怎么实现或者最接近这些关系?

不知道有什么好的思路?

大佬有話說 (7)

  • 資深大佬 : raymanr

    我有点怀疑这些网站的后台会用关系型数据库进行实现

    先说明我是个菜鸡, 但是如果让我做我觉得 redis 一类的键值数据库可能更适合

  • 資深大佬 : also24

    如果让我来实现,我更倾向于直接生成这些静态页面。

  • 資深大佬 : InkStone

    几万个条目,十个不到的属性,关系再复杂又怎么样……

  • 資深大佬 : ClericPy

    看标题以为是前缀树, 进来发现我想少了…

  • 資深大佬 : winnerczwx

    猜测……group by pinyin 或静态。不过像这种不会轻易变动的页面静态页面确实更合适

  • 資深大佬 : bwangel

    不一定用 MySQL 。

    这个可以用 ES 。

    创建一个索引,里面的文档结构是

    {
    “character”: “中”,
    “pinyin”: “zhong”,
    “tone”: 1
    }

    查找所有 “一声 zhong 的汉字”

    GET /hanzi/hanzi/_search
    {
    “bool”: {
    “must”: [
    // 下面两句是伪代码
    term tone == 1
    term pinyin == “zhong”
    ]
    }
    }

  • 資深大佬 : bwangel

    同样,词语也可以创建一个文档,然后用 ES 查询就好。

    中国大陆的《汉语大词典》(共 13 册,单字 2.27 万,复词 37.5 万)

    所有的汉字+词语的数量也不是很多,单节点的 ES 就可以很好地满足这个需求了。

文章導覽

上一篇文章
下一篇文章

AD

其他操作

  • 登入
  • 訂閱網站內容的資訊提供
  • 訂閱留言的資訊提供
  • WordPress.org 台灣繁體中文

51la

4563博客

全新的繁體中文 WordPress 網站
返回頂端
本站採用 WordPress 建置 | 佈景主題採用 GretaThemes 所設計的 Memory
4563博客
  • Hostloc 空間訪問刷分
  • 售賣場
  • 廣告位
  • 賣站?
在這裡新增小工具