gpt4 book ai didi

无模式数据存储设计

转载 作者:行者123 更新时间:2023-12-04 06:32:59 25 4
gpt4 key购买 nike

我正在寻找实现无模式数据存储设计的方法。但是,通常在 NoSQL 学校的上下文中使用无模式一词。我对 NoSQL 的可扩展性优势不感兴趣。一个例子是 friend 馈送方式(如 Bret Taylor 的博客中所解释的)。您能否指出一些其他资源或设计示例/案例研究,其主要目标是进行灵活/无模式设计(我什至可以为此牺牲性能)?

最佳答案

我不是 100% 确定你的用例,你能分享更多关于你想要做什么的信息吗?
当您说您对“NoSQL”不感兴趣时​​,这是否意味着您必须在关系数据库之上实现所有内容? (哪一个?)

有几种方法可以使关系模式更加灵活:

  • EAV/Entity-Attribute-Value 设计,其中一张表存储有关系统中所有“实体”/对象的公共(public)信息,一张表包含有关这些实体可以具有的属性的信息,一张表存储(entity_id,attribute_id,value)。见 http://en.wikipedia.org/wiki/Entity-attribute-value_model例如。
  • “瘦表”,其中您有宽表,每种列类型有一列(一个 varchar 列、一个 blob 列、一个 int 列等),然后只填充与您要存储的值类型匹配的列。当您只想存储不同类型的值而不是动态更改属性时,这是有道理的。可用于将属性存储在 EAV 模式中。
  • 存储“三元组”数据:语义网的人们已经花费了大量时间研究如何最好地存储由主体-关系-客体三元组组成的 RDF 数据。有“真正的”RDF 存储具有自己的查询语言,但其中一些可以使用关系数据库作为存储后端。如果这听起来像是要走的路,请看这里:http://www.w3.org/2003/01/21-RDF-RDB-access/ - “在关系数据库中存储 rdf”的简单 Google 查询应该指向几个 Triplestore有效映射到关系数据库的实现。

  • 希望这可以帮助!

    关于无模式数据存储设计,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5160196/

    25 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com