标签: batch-processing

在本机SQL中对大型INSERT操作进行批量提交?

我有几个大表(188米和144米行)我需要从视图中填充,但每个视图包含几亿行(将伪维度建模数据拉到一个平面形式).每个表上的键超过50个复合字节的列.如果数据在表中,我总是可以考虑使用sp_rename来创建另一个新表,但这不是一个真正的选项.

如果我执行单个INSERT操作,那么该进程会使用大量的事务日志空间,典型地将其归档并引发一些与DBA的麻烦.(是的,这可能是DBA应该处理/设计/架构师的工作)

我可以使用SSIS并使用批量提交将数据流式传输到目标表中(但这确实需要通过网络传输数据,因为我们不允许在服务器上运行SSIS包).

除了使用某种键将进程分成多个INSERT操作以将行分配到不同的批次并进行循环之外的任何其他事情?

sql t-sql sql-server batch-processing

7
推荐指数
2
解决办法
4万
查看次数

使用groovy Sql批量插入?

在模拟预处理语句时如何使用groovy Sql进行批量插入?我发现的所有示例都与以下内容类似,不使用预处理语句.

withBatch  { stmt ->
stmt.addBatch("insert into table (field1,field2) values('value1','value2')")
stmt.addBatch("insert into table (field1,field2) values('value3','value4')")
}
Run Code Online (Sandbox Code Playgroud)

根据此链接http://jira.codehaus.org/browse/GROOVY-3504,无法直接从批处理中使用预准备语句.模拟这个的最佳方法是什么,所以我可以避免编写自己的代码以避免sql注入?

groovy jdbc batch-processing

7
推荐指数
2
解决办法
2万
查看次数

bat函数用于在文件夹和子文件夹中查找文件并对其执行某些操作.

我需要在文件夹和所有子文件夹中找到具有特定文件名的所有文件(例如main.css),然后用它做一些事情(例如重命名,移动,删除,添加文本行等)

windows batch-file find batch-processing

7
推荐指数
2
解决办法
2万
查看次数

使用Avisynth创建多个视频

我有一堆个人文件,我想通过Avisynth运行.但是,AVS文件只能创建一个视频.据我所知,没有办法从命令行声明变量的值.

我知道您可以创建一个生成一堆AVS文件的脚本,然后以某种方式将每个AVS文件转换为视频.但是,由于Avisynth是一个脚本系统,这看起来有点复杂.必须有某种方式通过脚本运行不同的视频,对吗?

做这个的最好方式是什么?提前致谢.

video batch-file batch-processing avisynth

7
推荐指数
1
解决办法
1868
查看次数

使用gdata python客户端在博客上批量发布

我正在尝试将我的所有Livejournal帖子复制到blogger.com上的新博客.我通过使用gdata python客户端附带的略微修改的示例来实现.我有一个json文件,其中包含从Livejournal导入的所有帖子.问题是blogger.com每天发布新博客条目的每日限制 - 50,所以你可以想象我将在一个月内复制1300多个帖子,因为我无法在50次导入后以编程方式输入验证码.

我最近了解到gdata中还有批处理操作模式,但我无法弄清楚如何使用它.谷歌搜索并没有真正帮助.

任何建议或帮助将受到高度赞赏.

谢谢.

更新

为了以防万一,我使用以下代码

#!/usr/local/bin/python
import json
import requests

from gdata import service
import gdata
import atom
import getopt
import sys

from datetime import datetime as dt
from datetime import timedelta as td
from datetime import tzinfo as tz

import time

allEntries = json.load(open("todays_copy.json", "r"))

class TZ(tz):
    def utcoffset(self, dt): return td(hours=-6)

class BloggerExample:
    def __init__(self, email, password):
        # Authenticate using ClientLogin.
        self.service = service.GDataService(email, password)
        self.service.source = "Blogger_Python_Sample-1.0"
        self.service.service = …
Run Code Online (Sandbox Code Playgroud)

python blogger batch-processing gdata-python-client

7
推荐指数
2
解决办法
1442
查看次数

使用ansible添加多个SSH密钥

我编写了一个ansible脚本来从远程服务器中删除SSH密钥:

---
- name: "Add keys to the authorized_keys of the user ubuntu"
  user: ubuntu
  hosts: www
  tasks:
  - name: "Remove key #1"
    authorized_key: user=ubuntu key="{{ item }}" state=absent
    with_file:
     - id_rsa_number_one.pub
  - name: "Remove key #2"
    authorized_key: user=ubuntu key="{{ item }}" state=absent
    with_file:
     - id_rsa_number_two.pub
...
Run Code Online (Sandbox Code Playgroud)

将每个文件添加为不同的任务是荒谬的,所以我尝试使用with_fileglob:

  - name: "Remove all keys at once"
    authorized_key: user=ubuntu key="{{ item }}" state=absent
    with_fileglob:
      - /Users/adamatan/ansible/id_rsa*.pub
Run Code Online (Sandbox Code Playgroud)

但这会失败,如下所示:

失败:[www.example.com] =>(项目= /用户/ adamatan/ansible/id_rsa_one.pub)=> { "失败":真, "项目": "/Users/adamatan/ansible/id_rsa_one.pub" } msg:指定了无效密钥:/Users/adamatan/ansible/id_rsa_one.pub

使用唯一任务成功删除了相同的密钥文件,但当它是a的一部分时失败fileglob. …

ssh ssh-keys batch-processing ansible ansible-playbook

7
推荐指数
1
解决办法
6008
查看次数

Celery用一批消息执行任务

我想向芹菜发送消息,当它到达时,让我们说100条消息,我希望芹菜批量执行它们.如果我想批量提交到数据库,这是一种常见的情况.

为了这个目的,谷歌搜索我发现这个链接:用芹菜做批次:http: //celery.readthedocs.org/en/latest/reference/celery.contrib.batches.html

我的问题是,在示例中没有明显的方法来将数据提交给任务

例如,假设我们逐一提交一些消息:

task.apply_async((message,), link_error=error_handler.s())
Run Code Online (Sandbox Code Playgroud)

然后我们有以下任务实现:

@celery.task(name="process.data", base=Batches, flush_every=100, flush_interval=1)
def process_messages(requests):
   for request in requests:
       print request /// how I can take the message data submitted in my task for process?
Run Code Online (Sandbox Code Playgroud)

有没有其他方法来实现芹菜批次?谢谢

python batch-processing celery

7
推荐指数
1
解决办法
1589
查看次数

在实时网络服务器中进行批处理和排队

添加了服务器设计我需要一个Web服务器,它将传入的请求路由到后端工作者,每0.5秒对它们进行一次批处理,或者当它有50个http请求时,以先发生者为准.在python/tornado或任何其他语言中实现它的好方法是什么?

我的想法是将传入的请求发布到rabbitMQ队列,然后以某种方式将它们一起批处理,然后再发送到后端服务器.我无法弄清楚的是如何从rabbitMq队列中选择多个请求.有人能指出我正确的方向或建议一些替代的apporach?

python queue webserver batch-processing

7
推荐指数
1
解决办法
611
查看次数

Kinesis Lambda消费者最小批量大小

我正在使用AWS Lambda(node.js)作为AWS Kinesis Consumer.我可以看到您可以设置最大批量大小,但我想知道是否可以设置最小批量大小.这样我就可以确保每个lambda将处理至少50(或任何数量)的记录.

我希望有一个最小批量大小,因为lambda使用者将建立与RDS MySQL实例的连接,并且我试图保持较低的并发连接数.

如果没有可以设置最小值的配置功能,那么任何解决方法的想法都将受到赞赏.

谢谢.

batch-processing amazon-web-services node.js amazon-kinesis aws-lambda

7
推荐指数
1
解决办法
1014
查看次数

下面的for循环和函数如何加速应用?

我有以下for循环:

for j in range(len(list_list_int)):
    arr_1_, arr_2_, arr_3_ = foo(bar, list_of_ints[j])
    arr_1[j,:] = arr_1_.data.numpy()
    arr_2[j,:] = arr_2_.data.numpy()
    arr_3[j,:] = arr_3_.data.numpy()
Run Code Online (Sandbox Code Playgroud)

我想将其应用于foo多处理,主要是因为要花费大量时间才能完成。我尝试使用funcy的 chunks方法批量进行此操作

for j in chunks(1000, list_list_int):
    arr_1_, arr_2_, arr_3_ = foo(bar, list_of_ints[j])
    arr_1[j,:] = arr_1_.data.numpy()
    arr_2[j,:] = arr_2_.data.numpy()
    arr_3[j,:] = arr_3_.data.numpy()
Run Code Online (Sandbox Code Playgroud)

但是,我越来越list object cannot be interpreted as an integer。使用多处理应用foo的正确方法是什么?

iteration numpy batch-processing python-3.x funcy

7
推荐指数
1
解决办法
212
查看次数