Salesforce 小知识:大量“子记录”的处理方法
大量“子记录”的存放
例子:系统中导入了很多“联系人”(Contact)记录,它们没有具体所属的“客户”(Account)记录。那么我们就要将它们作为“子记录”临时保存在一个Account记录下。
问题:当保存Contact和Account的关系时,系统会同时锁定这两条记录。那么如果要利用多线程同时保存大量的Contact记录到同一个Account记录下,很有可能会出错。
解决方案:
- 尽可能的在同一个Account记录下保存少于10000条子记录。
- 如果要同时导入大量的Contact记录,那么就在系统中创建同样多的Account记录,然后在代码中将这些Contact记录分别添加到不同的Account记录中。这样,在保存的时候,这些记录可以被多线程分别保存,避免了同一条记录被锁定导致其他记录保存错误的风险。
大量记录的所有者
例子:系统中导入了很多记录,每条记录都要有一个所有者(Owner)。
问题:如果将这些记录暂时赋值给同一个用户作为所有者,那么系统会计算所有记录的共享权限等。而如果此用户本身有着复杂的权限设定、角色设定等,那么对这些记录的权限计算也会非常复杂,从而会给系统的运行效率带来影响。
解决方案:
- 在导入记录的时候,尽量将记录都设定给正确的用户作为所有者。这样,该记录的权限计算只需要进行这一次,避免了将来重新设定所有者带来的权限的重新计算。
- 如果必须将大量的数据临时赋值给同一个用户作为所有者,那么选择拥有简单的权限设定、角色设定的用户,从而降低了对这些记录的权限计算的复杂度。
Salesforce 小知识:大量“子记录”的处理方法的更多相关文章
- Salesforce 小知识 - 必需字段
将字段定义为"必需" 当我们为对象设置字段的属性时,我们需要让某些字段在建立记录的时候必需有值,比如定义一个"地址"对象,那么必须填入"邮编" ...
- Salesforce小知识:累计汇总字段类型
累计汇总字段类型的定义 Salesforce中可以在两个对象之间建立关系.一个对象的某一条记录可以有若干条相关联的其他对象记录. 累计汇总字段可以将这些相关联的记录中的某些字段值汇总起来,显示给用户. ...
- Salesforce小知识:在简档中设置Visualforce页面的权限
简档(Profile)中的 Visualforce 页面访问权限 在Salesforce中,对于自定义的简档,可以设置"Visualforce 页面访问"的权限. Visualfo ...
- 猫猫学iOS之小知识之_xcode插件的删除方法_自己主动提示图片插件KSImageNamed有时不灵_分类或宏之类不能自己主动提示,
猫猫分享,必须精品 原创文章.欢迎转载. 转载请注明:翟乃玉的博客 地址:http://blog.csdn.net/u013357243 一:解决解决自己主动提示图片插件KSImageNamed有时不 ...
- AJ学IOS 之小知识之_xcode插件的删除方法_自动提示图片插件KSImageNamed有时不灵_分类或宏之类不能自动提示,
AJ分享,必须精品 一:解决解决自动提示图片插件KSImageNamed有时不灵_分类或宏之类不能自动提示 其实,插件神马的我们自己也能写,并没有想象中的那么难,不过目前我们还是先解决当前问题 在做微 ...
- djangoRestFrameWork的小知识
djangoRestFrameWork的小知识 重写序列化器的save方法 有时候,.create()和.update()方法名称可能没有意义.例如,在联系表格中,我们可能没有创建新实例,而是发送了电 ...
- salesforce 零基础开发入门学习(十)IDE便捷小知识
在这里介绍两个IDE的便捷开发的小知识. 一) 本地调试 由于salesforce代码只能提交以后才能调试,所以很多时候调试代码很麻烦.新版增加了一个特性:即可以在本地调试相关的代码或者查看相关代码运 ...
- 记录一下学习Android的小知识
目前要设计即时通讯的整体架构,包括服务端.Android.IOS.PC.平板等等系统,所以需要研究一下手机的实现方式,开始从Android入手,偶尔在这记录下小知识. ADT: 1.页面功能请求结构, ...
- 关于Excel做表小知识记录
关于Excel做表小知识记录 最近使用Excel做了一系列的报表,觉得这是个很神奇的东西哈哈哈,以前我可是一想到Excel就开始头疼的人... 能用代码或者SQL语句解决的问题绝不会愿意留在Exce ...
随机推荐
- [Swift]LeetCode91. 解码方法 | Decode Ways
A message containing letters from A-Z is being encoded to numbers using the following mapping: 'A' - ...
- [Swift]LeetCode115. 不同的子序列 | Distinct Subsequences
Given a string S and a string T, count the number of distinct subsequences of S which equals T. A su ...
- [Swift]LeetCode219. 存在重复元素 II | Contains Duplicate II
Given an array of integers and an integer k, find out whether there are two distinct indices i and j ...
- [Swift]LeetCode740. 删除与获得点数 | Delete and Earn
Given an array nums of integers, you can perform operations on the array. In each operation, you pic ...
- [Swift]LeetCode815. 公交路线 | Bus Routes
We have a list of bus routes. Each routes[i]is a bus route that the i-th bus repeats forever. For ex ...
- [Swift]LeetCode869. 重新排序得到 2 的幂 | Reordered Power of 2
Starting with a positive integer N, we reorder the digits in any order (including the original order ...
- ubuntu(版本14.04)部署Core环境
遇到问题: 参照官方文档敲完命令之后 出现了提示的问题Unable to lpcate package... ,随后参照官方文档解决方案,又出现了如下问题: 提示找不到依赖的Runtime,在尝试过很 ...
- hdfs创建删除文件和文件夹
在 hadoop 中,基于 Linux 命令可以给 hdfs 创建文件和文件夹,或者删除文件和文件夹 创建文件的命令为: hadoop fs -touch /file.txt 创建文件夹的命令为: h ...
- python获取当前运行程序的名字
import os filename = os.path.abspath(__file__) print filename 打印结果: E:\bluedon\test.py
- Python内置函数(40)——map
英文文档: map(function, iterable, ...) Return an iterator that applies function to every item of iterabl ...