简体   繁体   English

SQL Data Services数据库设计准则

[英]SQL Data Services database design guidelines

I've been playing around lately with SQL Data Services. 我最近一直在使用SQL Data Services。 Although (or perhaps because) I can knock out a well-structured relational database in my sleep, I'm struggling to get my head round how to design a performant database in an environment that has (for example) no enforcement of referential integrity and no indexes on columns other than the primary key. 尽管(或者也许是因为)我可以在睡眠中敲除结构良好的关系数据库,但我仍在努力弄清如何在(例如)不强制执行引用完整性和环境的环境中设计高性能数据库。除主键外,列上没有索引。

Does anyone know of any guidelines? 有人知道任何准则吗?

Maybe a place to start would be how to create a many-to-many join that can be traversed from either side in a performant manner, even with vast numbers of rows entities? 也许一个开始的地方是如何创建一个多对多联接,即使有大量的 实体,该联接也可以以一种高性能的方式从任何一侧遍历?

Well, the solution I went for in the end was: stop using SQL Data Services. 好吧,我最后寻求的解决方案是:停止使用SQL Data Services。 It's so half-baked that it's barely worth using at the moment anyway. 半生不熟,以至于现在几乎不值得使用。

It seems the phrases that are being used are: 似乎正在使用的短语是:

  • Spread your data out amongst many containers for best performance 将数据分散到多个容器中以获得最佳性能

  • Modeling your data via Entities 通过实体对数据建模

  • Process your queries in parallel for best performance 并行处理查询以获得最佳性能

  • Caching data in the service hosted middle tier 在服务托管的中间层中缓存数据

This would imply that we have to start thinking like OO modellers rather than in a relational mind-set. 这意味着我们必须开始像OO建模人员那样思考,而不要以关系思维定势。 Performance seems to rely on the ability to massively parallelise an object query in a smiliar way to creating a LINQ query that can take advantage of parallelisation. 性能似乎依赖于以一种轻松的方式大规模并行化对象查询的能力,以创建可以利用并行化优势的LINQ查询。

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM