为全文搜索执行索引编制的最有效方法是什么?
我使用mongodb,但我认为这在这个问题的背景下并不那么重要
我正在考虑使用进一步索引存储draft.js输出的两种方法:
JSON.stringify
之后存储块并存储所有"文本"每个块的属性作为分隔文档属性中的纯文本(或sql的表列)。因此,纯文本将只用于索引,其余的工作将由字符串化/解析的JSON完成。听起来不必要地复杂,诚实。如果您已经遇到过这种情况,可能您对如何存储和索引此数据有一些准确的建议?
这里有一些具体的例子:
文字示例:
<p>First line of text</p>
<h1>A header</h1>
<p>text and one <strong>BOLD</strong> word</p>
Draft.js输出:
{
"entityMap":{
},
"blocks":[
{
"key":"4vno8",
"text":"First line of text",
"type":"unstyled",
"depth":0,
"inlineStyleRanges":[
],
"entityRanges":[
],
"data":{
}
},
{
"key":"dr3c5",
"text":"A header",
"type":"header-one",
"depth":0,
"inlineStyleRanges":[
],
"entityRanges":[
],
"data":{
}
},
{
"key":"c5ndf",
"text":"text and one BOLD word",
"type":"unstyled",
"depth":0,
"inlineStyleRanges":[
{
"offset":13,
"length":4,
"style":"BOLD"
}
],
"entityRanges":[
],
"data":{
}
}
]
}
答案 0 :(得分:0)
保存原始块时,请执行您需要的任何索引。原始块中的文本部分非常简单,因此您可以使用任何编程语言进行处理。