我有一个小型数据库,大约50mb.它是一个复制到远程服务器的主人.我注意到relay-bin文件总数超过5GB.删除它们是否安全?
我有一个矩阵,并寻找一种有效的方法来复制它n次(其中n是数据集中观察的数量).例如,如果我有一个矩阵A.
A <- matrix(1:15, nrow=3)
然后我想要一个表格的输出
rbind(A, A, A, ...) #n times.
显然,有许多方法来构造这样的大矩阵,例如使用for循环apply或类似的函数.然而,对"矩阵复制 - 函数"的调用发生在我的优化算法的核心,在我的程序的一次运行中它被称为数万次.因此,循环,应用类型的函数和类似的东西都不够有效.(这样的解决方案基本上意味着n上的循环执行了数万次,这显然是低效的.)我已经尝试使用普通rep函数,但还没有找到一种方法来排列rep矩阵的输出所需格式.
该解决方案
do.call("rbind", replicate(n, A, simplify=F))
效率太低,因为rbind在这种情况下经常使用.(然后,我的程序总运行时间的大约30%用于执行rbinds.)
有谁知道更好的解决方案?
似乎是一个简单的问题:
我想以某种方式(从内部,最有可能)在一个中进行所有更改,并将它们应用于另一个.反之亦然.听起来很简单,我认为喜欢GIT可以做到这一点,但我们正在使用SVN.
有人做过吗?我不介意它是一个手动过程 - 只有几个外部人员,他们不需要每天更新,每天两到三次.
我相信apache.org会这样做,但我找不到关于他们如何做到这一点的文档.有一些产品在那里做(好吧,一个),但我很想知道是否有人有一个漂亮,干净的方式来做它没有它们.svnsync这样做,只是在一个方向(主从)
很高兴它可以在Windows,Linux或Mac上运行,就像我们拥有它们一样.Windows和Mac首选.
救命!:) :)
[更新]经过12个月的捣乱(最后不需要这个),在我看来,正确的答案是正确的.使用git - 有一个从SVN-A拉出的repo,然后推送到新的git repo,然后从那里推送到SVN-B.应该管用 :)
我在两个数据库之间设置了合并复制,并在两者上使用标识范围.
我想在发布者上向合并表添加特定行(将标识值设置为标识范围之外的内容).当我尝试这个时,我收到以下错误.
插入失败.它与数据库'xxx'中的标识范围检查约束冲突,复制表'dbo.yyy',列'yyy_id'.如果通过复制自动管理标识列,请按如下所示更新范围:对于Publisher,执行sp_adjustpublisheridentityrange; 对于订阅服务器,运行分发代理程序或合并代理程序.
有没有办法强制将特定标识值放入使用标识范围管理的合并复制表?
Microsoft Sync Framework和复制之间有什么区别?哪一个更好?
我目前正在评估以下问题的可能解决方案:
必须在多个客户端之间同步一组数据条目,其中每个客户端可以仅查看(或甚至知道存在)数据的子集.每个客户"拥有"一些元素,并且其他人可以阅读或修改这些元素的决定可能只由所有者做出.为了使这种情况更加复杂,每个元素(以及每个元素修订版)必须具有对所有客户端都相同的唯一标识符.
虽然后者听起来像CouchDB的完美任务(并且基于文档的数据模型完全符合我的需求),但我不确定CouchDB的认证/授权子系统是否能够满足这些要求:虽然应该可以重写写入使用验证功能访问,似乎没有办法授权读取访问.我为此问题找到的所有解决方案都建议通过处理授权的代理(或应用程序层)来路由所有CouchDB请求.
因此,问题是:是否可以实现过滤对数据库的请求的授权层,以便只授予请求客户端具有读访问权限的文档并仍然使用CouchDB的复制机制?简化,这将是某种"选择性复制",其中只复制一些文档而不是整个数据库.
我还要感谢有关复制如何工作的一些详细信息的说明.CouchDB维基甚至"明确指南"都不是那么具体.
我们的开发团队目前正在考虑将我们的搜索系统迁移到Apache Solr,我们非常感谢有关设置的一些建议.我们正在索引大约两亿个数据库行.我们全天增加了大约十万个新行.这些新数据库行必须在收到后的两分钟内进行搜索.
我们不希望索引使搜索者陷入困境,因此我们的想法是在复制设置中让不同的计算机上运行两个Solr服务器.第一个Solr实例将是索引器.它将使用DataImportHandler索引增量并启用自动提交以防止过热的提交率.索引优化将在预定期间进行.第二个Solr实例(从属)将成为主要搜索器,并将其索引存储在RAIDed固态驱动器上.
我们关注的是故障转移.我们的搜索是关键任务.如果主要搜索者因任何原因而失败,我们的搜索服务将自动将查询分流到索引器节点.但索引同样重要.如果索引器死了,我们需要热备故障转移.是否有推荐的方法在Solr复制中自动执行主节点故障转移?我已经开始研究ZooKeeper,但我不确定这是否是最好的方法.
我们在项目中使用Amazon S3作为客户上传文件的存储空间.
出于技术原因,我们使用临时名称将文件上载到S3,然后处理其内容并在处理完文件后重命名该文件.
虽然重命名404 (key not found)的文件已成功上传,但"重命名"操作会一次又一次失败并出错.
亚马逊文档提到了这个问题:
Amazon S3通过在亚马逊数据中心内的多个服务器上复制数据来实现高可用性.如果PUT请求成功,则会安全地存储您的数据.但是,有关更改的信息必须在Amazon S3上复制,这可能需要一些时间,因此您可能会观察到以下行为:
我们实现了一种轮询作为解决方法:重试"重命名"操作,直到成功为止.
投票在20秒后停止.
此解决方法适用于大多数情况:文件在几秒钟内复制.
但有时 - 很少 - 20秒是不够的; S3中的复制需要更多时间.
在Amazon S3上成功进行PUT操作和完全复制之间观察到的最长时间是多少?
Amazon S3是否提供了"绕过"复制的方法?(直接查询'master'?)
replication amazon-s3 eventual-consistency amazon-web-services
我正在考虑针对当前项目的noSQL解决方案,但我对许多这些数据库中的"最终一致性"条款犹豫不决.最终的一致性是否与处理复制滞后的mySQL数据库不同?我过去使用的一种解决方案是使用滞后复制,即在需要立即数据一致性时从主机读取.
但是,我很困惑为什么关系数据库声称具有强大的数据一致性.我想我应该使用交易,这将给我强烈的一致性.假设mySQL复制可能滞后,那么编写应用程序是一个好习惯吗?
在简单的MySQL复制主从配置中,我遇到一个问题,即Master在重启时尝试连接自身作为从属设备.
因此,当我在Master上重启MySQL时,我看到与同一服务器有关的错误试图复制到自身,mysql -e "STOP SLAVE;"每次重启MySQL时我都必须手动运行.
如何在master上禁用slave?
以下是相关部分my.cnf:
## Logging
binlog_format = mixed
log_bin = /var/log/mysql/mysql-bin.log
sync_binlog = 1
pid_file = /var/run/mysqld/mysqld.pid
log_error = /var/log/mysql/error.log
#general_log = 0
#general_log_file = /var/log/mysql/general.log
slow_query_log = 1
slow_query_log_file = /var/log/mysql/slow.log
long_query_time = 3
expire_logs_days = 14
sql_mode = STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION
# sql_mode = ONLY_FULL_GROUP_BY,STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION
## Replication
server_id = 200
## Master Configuration
binlog-do-db = my_db_1
binlog-do-db = my_db_2
binlog-do-db = my_db_3
binlog-do-db = my_db_4
binlog-do-db = my_db_5
binlog-do-db = my_db_6
Run Code Online (Sandbox Code Playgroud)
此外,当我跑步时,我 …