如何设计搜索引擎数据库

Leshami
博客专家认证
2010-01-22 05:01:34
需要设计一个搜索引擎数据库用于存放一些文章的信息及关键字,一旦有文章更新则更新文章中的信息及关键字段,搜索引擎在内存中完成所有的文章关键字段搜索,并且在此期间不允许有其他的操作,比如说文章的更新等等。
在此列出两个表:
Info Table
Document ID Key max 10-digit integer
Search ID max 10-digit integer
Symbol varchar(?) stock symbol
Country varchar(3)
PID varchar(?) performance ID
Sector Code max 5-digit integer
Ind Code max 10-digit integer industry code
Language varchar(2)
Report Year max 4-digit integer
Report Quarter max 1-digit integer
Call Date varchar(10) “yyyy/mm/dd”
Editor ID 5-digit integer

Words Table:
WordID int identity
Word varchar(30) ?
TranscriptID int referenced TranscriptID from Info Table


Info Table:用于存放文章的基本信息,Words Table用于存放文章的关键字段。
假定关键字段如下: stock market quote price exchange,Mutual Fund, Hedge Fund, ETF Investment Research这些字段将存储在Words Table,并且有一个DocumentID与Info Table进行关联。
1.Words Table中列可能非常多,过亿后数据查询性能将非常低,该如何设计。(SQL版本为标准版)
2.关键字如何存储比较好,比如stock market quote price exchange是否需要进行拆分为单个的单词来存储,还是保存为短语比较好?另外,如果使用全文索引,性能如何?
3.搜索期间不允许其他的操作,使用何种锁,事物级别更好?

...全文
218 2 打赏 收藏 转发到动态 举报
写回复
用AI写文章
2 条回复
切换为时间正序
请发表友善的回复…
发表回复
--小F-- 2010-01-22
  • 打赏
  • 举报
回复
排它锁?
独占锁?
--小F-- 2010-01-22
  • 打赏
  • 举报
回复
执行使用全文索引

27,579

社区成员

发帖
与我相关
我的任务
社区描述
MS-SQL Server 应用实例
社区管理员
  • 应用实例社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧