在读的一篇文献中关于RDF的描述:

As we know, RDF data is a set of triples with the form (subject, property, object). This fine-grainedmodel leads to SPARQL queries on RDF data with a large number of joins.

这是一种新颖的提法,看了很多文章,这是第一次有人将RDF看作fine-grained(细粒度)模型,而且这种细粒度特性使得针对RDF数据的SPARQL查询包含大量的join操作。

我对粗细粒度的理解非常有限,在书本上貌似碰到过的。网上搜集了关于这一概念的理解,现在列出,以后还有待自己加深理解之后的补充。

“粒度似乎是根据项目模块划分的细致程度区分的,一个项目模块(或子模块)分得越多,每个模块(或子模块)越小,负责的工作越细,就说粒度越细,否则为粗粒度”--- 我觉得这中理解是最到位的,也是最浅显易懂的。

“粗粒度和细粒度的区别主要是出于重用的目的,像类的设计,为尽可能重用,所以采用细粒度的设计模式,将一个复杂的类(粗粒度)拆分成高度重用的职责清晰的类(细粒度).对于数据库的设计,原责:尽量减少表的数量与表与表之间的连接,能够设计成一个表的情况就不需要细分,所以可考虑使用粗粒度的设计方式。”---首先,关于重用,越复杂粒度越粗重用性应该是越差的,因而我觉得这种说法是正确的;其次,提到了数据库设计,粗细粒度的取舍也是一个关键,可见开篇关于RDF细粒度导致join操作过多是从这方面考虑的。

再列出其他人的观点:

“两个接口
细粒度的查询任务的接口
interface TaskService{
  public List getTaskById(int id);
  public List getTaskByName(String name);
  public List getTaskByAge(int age);

}

那么粗粒度的接口该是什么样的呢?
interface TaskService{
  public List getTask(Person person);
}
person有name,id,age,根据什么查都是这个接口。


粗粒度与细粒度是一个相对的概念,也不是说对所有会涉及到粗粒粒度问题的工作都是一致偏向的。粗粒度和细粒度的区别主要是出于重用的目的。像类的设计,为尽可能重用,所以采用细粒度的设计模式,将一个复杂的类(粗粒度)拆分成高度重用的职责清晰的类(细粒度)。   对于数据库的设计,原则:尽量减少表的数量与表与表之间的连接,能够设计成一个表的情况就不需要细分,所以可考虑使用粗粒度的设计方式。

数据库访问控制的粗细粒度问题:

根据控制对象的粗细程度,访问控制可分为粗粒度和细粒度两种 通常把规定访问整个数据库表或由基本表导出的视图的某个层称为粗粒度的访问控制,而细粒度控制则是把安全控制细化到数据库的行级或列级。

最新文章

  1. boost::function的用法
  2. kmdjs集成uglifyjs2打造极致的编程体验
  3. GitHub上值得关注的iOS开源项目
  4. redis数据类型
  5. asp.net 微信企业号办公系统-流程设计--流程步骤设置-按钮设置
  6. 1、C#基础整理(进制转换的方法)
  7. hdu 3068 最长回文 manacher
  8. newlsip 检查磁盘分区使用情况
  9. Android 编程下 java.lang.NoClassDefFoundError: cn.jpush.android.api.JPushInterface 报错
  10. SVN 使用的简单整理
  11. redis bitcount variable-precision swar算法
  12. netty4.x 传输文件
  13. 外部 Storage Provider - 每天5分钟玩转 Docker 容器技术(149)
  14. 解决在使用gensim.models.word2vec.LineSentence加载语料库时报错 UnicodeDecodeError: 'utf-8' codec can't decode byte......的问题
  15. 马昕璐 201771010118《面向对象程序设计(java)》第十四周学习总结
  16. MySQLSource-Flume
  17. Kotlin入门(6)条件分支的实现
  18. HDU5730
  19. PMP 考试 形式
  20. file: /SourceCache/IOKitUser_Sim/IOKitUser-920.1.11/hid.subproj/IOHIDEventQueue.c, line: 512

热门文章

  1. Win7系统64位环境下使用Apache——Apache2.4版本安装及卸载
  2. Unity3d command line arguments
  3. vim 插件使用
  4. php session在高并发时可能存在的问题。
  5. MpVue解析
  6. 利用aop完成功能权限验证遇到的问题
  7. Linux paste 命令
  8. sapconnector.dll download
  9. [BZOJ5297][CQOI2018]社交网络
  10. django配置静态文件