由买买提看人间百态

boards

本页内容为未名空间相应帖子的节选和存档,一周内的贴子最多显示50字,超过一周显示500字 访问原贴
Programming版 - Tag的实现
... ?
相关主题
Question about Base Tag...Tagged 内推 web/app automation engineer (转载)
Question about using ctags in gvimphp网站还是最容易被hack.
问个ctags的问题有人用spacemacs吗
如何下载网络页面,不包含,
如何正确使用WebGrid
请教一个初级问题GAN是不是DL里面最活跃的领域?
组里一个资深人士今天严肃地对我说请教一个microarray问题
Anyone uses Jade?军版悬案求助:万能的军版求问个数学问题
现在Google,Facebook等如何manage software release的?CNN 能对输入的image做patch normalization么?
相关话题的讨论汇总
话题: tag话题: table话题: article话题: tagid话题: 棋谱
进入Programming版参与讨论
1 (共1页)
a*****g
发帖数: 19398
1
我看好多网站有 Tag 功能.
这个在数据库里面是怎么实现的?是不是就是有个 field,然后把所有 Tag值都存里
面.
w***g
发帖数: 5958
2
什么样的tag?

【在 a*****g 的大作中提到】
: 我看好多网站有 Tag 功能.
: 这个在数据库里面是怎么实现的?是不是就是有个 field,然后把所有 Tag值都存里
: 面.

a*****g
发帖数: 19398
3
我有一些围棋的棋谱,想加些 Tag 字符

存里

【在 w***g 的大作中提到】
: 什么样的tag?
a*****g
发帖数: 19398
4
比如这个
http://www.101weiqi.com/questionlib/

【在 w***g 的大作中提到】
: 什么样的tag?
w***g
发帖数: 5958
5
create table tag (article_id int, text char(1000));
然后显示的时候select text from tag where article_id = xxx.

【在 a*****g 的大作中提到】
: 我有一些围棋的棋谱,想加些 Tag 字符
:
: 存里

L*****e
发帖数: 8347
6
不要把所有tag值放进一个field里,一个field一个值。。。
棋谱一个table(棋谱ID以及其它),tag一个table(带两个fields: tagId, tagName)
然后一个table来associate棋谱和tags
create table TagedQiPu(QipuId INT, TagId INT)

【在 a*****g 的大作中提到】
: 我看好多网站有 Tag 功能.
: 这个在数据库里面是怎么实现的?是不是就是有个 field,然后把所有 Tag值都存里
: 面.

W***o
发帖数: 6519
7
前几天我做过一个类似的tagging system
对应的关系是一篇文章对应多个tag,一个tag 也可以对应多个文章(or whatever
entry)
我用的hibernate里面的@ManyToMany 做的
基本思路是利用一个intermediate table保存: (article_id, tag_id)
另外两个table分别是article, tag
article table:
article_id, title, author, .....
tag table:
tag_id, tag_name, ....
当你调用某个article_id的时候,retrieve all the tags associated with it.
写过一遍,觉得不是很难,用hibernate或其他orm工具,都不用写sql

【在 a*****g 的大作中提到】
: 我看好多网站有 Tag 功能.
: 这个在数据库里面是怎么实现的?是不是就是有个 field,然后把所有 Tag值都存里
: 面.

g*****g
发帖数: 34805
8
俺实现的系统,用的Cassandra,就是tag name:value做key,后面无数的entry key都
在一列上。
如果记录多可以考虑一下。
W***o
发帖数: 6519
9
请教一下:
value 是棋局id?那 entry key 是啥?
我好奇,还没鼓捣过cassandra (囧)

【在 g*****g 的大作中提到】
: 俺实现的系统,用的Cassandra,就是tag name:value做key,后面无数的entry key都
: 在一列上。
: 如果记录多可以考虑一下。

N********n
发帖数: 8363
10

这样设计数据库面试会秒FAIL的。

【在 a*****g 的大作中提到】
: 我看好多网站有 Tag 功能.
: 这个在数据库里面是怎么实现的?是不是就是有个 field,然后把所有 Tag值都存里
: 面.

相关主题
组里一个资深人士今天严肃地对我说Tagged 内推 web/app automation engineer (转载)
Anyone uses Jade?php网站还是最容易被hack.
现在Google,Facebook等如何manage software release的?有人用spacemacs吗
进入Programming版参与讨论
N********n
发帖数: 8363
11

正解。

【在 L*****e 的大作中提到】
: 不要把所有tag值放进一个field里,一个field一个值。。。
: 棋谱一个table(棋谱ID以及其它),tag一个table(带两个fields: tagId, tagName)
: 然后一个table来associate棋谱和tags
: create table TagedQiPu(QipuId INT, TagId INT)

g*****g
发帖数: 34805
12
Think of it as a multimap, commonly seen in wide column DB.

【在 W***o 的大作中提到】
: 请教一下:
: value 是棋局id?那 entry key 是啥?
: 我好奇,还没鼓捣过cassandra (囧)

w***g
发帖数: 5958
13
竟然都做过。看来经验确实不是吹出来的。不过楼主的情况我觉得上个drupal或者
wordpress就行了。自己从头做太太麻烦。

【在 g*****g 的大作中提到】
: 俺实现的系统,用的Cassandra,就是tag name:value做key,后面无数的entry key都
: 在一列上。
: 如果记录多可以考虑一下。

n*w
发帖数: 3393
14
用关系数据库的话,我会加个PK(articleid,tagid)。
c***d
发帖数: 996
15
tag系统的关键是处理好scope, normalization和aggregation的关系。做的好的话是一
个用户可以自定义的元数据管理系统。

【在 a*****g 的大作中提到】
: 我看好多网站有 Tag 功能.
: 这个在数据库里面是怎么实现的?是不是就是有个 field,然后把所有 Tag值都存里
: 面.

c********1
发帖数: 421
16
听起来很有料的样子,具体展开说说?多谢

【在 c***d 的大作中提到】
: tag系统的关键是处理好scope, normalization和aggregation的关系。做的好的话是一
: 个用户可以自定义的元数据管理系统。

H****S
发帖数: 1359
17
Google hibernate faceted search

【在 a*****g 的大作中提到】
: 我看好多网站有 Tag 功能.
: 这个在数据库里面是怎么实现的?是不是就是有个 field,然后把所有 Tag值都存里
: 面.

1 (共1页)
进入Programming版参与讨论
... ?
相关主题
CNN 能对输入的image做patch normalization么?请教一个初级问题
有人set up过 多个node的Cassandra 么? (转载)组里一个资深人士今天严肃地对我说
本版现在主题就是战啊。。。Anyone uses Jade?
why python现在Google,Facebook等如何manage software release的?
Question about Base Tag...Tagged 内推 web/app automation engineer (转载)
Question about using ctags in gvimphp网站还是最容易被hack.
问个ctags的问题有人用spacemacs吗
如何下载网络页面,不包含,
如何正确使用WebGrid
相关话题的讨论汇总
话题: tag话题: table话题: article话题: tagid话题: 棋谱