问题列表 - 第47489页

WiX:你如何更新数据库?

在我的WiX项目中,我有一个文件数据和一个SQL脚本,它们创建db,创建/更改表插入/更新行等.所有脚本分为三个部分,并通过SqlScript元素执行.我使用ContinueOnError="no"但如果前一个脚本成功执行,则不会回滚.我可以在事务中包装所有脚本并使用try/catch块吗?有没有机会处理来自WiZ的捕获事件?您可以建议制作这样的安装程序吗?

sql wix sql-update

5
推荐指数
1
解决办法
1761
查看次数

具体的MySQL批量插入性能调优

我知道这个问题一直被问到.但是,对于非常具体的情况,这是一个非常具体的问题.希望你能够帮助我.

我运行一个日志数据库,大约有10个表.存储实际日志条目的主表有大约30个字段,其中5个是可搜索的.我说数据库最近变得中等大小,因为我们在该表中达到了2亿条目.其他表存储公共数据,其中最大的一个有4个字段,全部可搜索,有近100万个条目.所有其他表每个包含少于10万条记录.

插入物有尖峰.我每天凌晨2点得到前一天的格式(格式很差的)csv文件,直到上午8点才将它们(大约20个文件,每个10万行)插入到数据库中.然后我在工作日期间得到的选择很少(可能每天约1000个).然后冲洗并重复.

SELECT查询非常简单,因为它们主要由一个或两个GROUP BY语句组成.搜索此数据库的人想要立即获得结果,因此我在主表中有5个多列索引,这有助于我的精确搜索,目前,SELECT性能非常好.到目前为止,没有查询超过0.1秒.有一些报道,但这些生成大约需要10秒钟,这是可以接受的.

目前我有一个C程序,我写的是读取CSV文件中的数据,清理它,并按照每个INSERT查询分批插入1000行.这些INSERT并不完全愚蠢,因为我需要获取公共数据,看看它是否已经存在于其他表中,如果不存在则插入它,如果存在则将其缓存.它还以每秒插入的记录数量的形式提供了性能数据.这个程序非常快,没有将数据发送到数据库,我每秒大约有10万行.当然,这个程序和数据库位于同一台物理计算机上.

现在,我每天获得的数据呈线性增长,INSERT的性能呈对数下降趋势.昨天的数据需要5个半小时才能插入,每秒大约插入400行.

我通过将具有不同配置的前100万行插入到空数据库中来获得一些基准数据,这几乎是我得到的:

MyISAM表:以每秒1500行的速度开始,在插入第100万行InnoDB表时,以每秒对数减少约700行:与MyISAM相同,每秒只有大约100行速度更快InnoDB,主要禁用所有索引table:以每秒2100行开始,每秒减少到1000行.InnoDB使用索引,文件系统安装了数据写回(ext3):与InnoDB相同,只是稍微但几乎不明显更快.

innodb_buffer_pool_size设置为1000MB

避免索引创建不是一种选择,但很明显它对性能有很大影响.但是,我需要更快的插入.如数据所示,随着数据库的增长,插入将花费更长的时间,因此我每天获得的数据越来越大,我需要在插入性能上有一个巨大的飞跃.如果我能够达到每秒10000次插入或更多,那将非常棒.

系统监视器告诉我我的主要资源消耗是磁盘I/O,插入时几乎达到100%.因此,我需要一种超快速的方式来插入数据.我的理论限制是SATA总线,但这仍然很遥远.内存使用量似乎没有那么高,大约20%(或MySQL没有正确使用内存)

要实现这一点,可以在几天内重新创建数据库,然后从阅读器应用程序进行热交换,可以更改操作系统和MySQL中的任何设置,如果需要可以添加内存.如有必要,甚至可以更改数据库结构.

所以我在这里真的很开心.有人知道什么可以帮助我吗?

编辑:我正在考虑在MEMORY表中插入新行,然后在真实表中执行SELECT INTO.希望它只会在插入所有行后更新并刷新索引.我会在星期一试试.以前有人试过这样的事吗?

mysql database linux performance insert

9
推荐指数
2
解决办法
7041
查看次数

平板电脑上的Android Honeycomb UI指南

Android Honeycomb中的UI非常不同.我正在寻找开发人员感兴趣的事情.Google还没有更新它的UI指南,所以我试图通过检查布局来找到这些东西.我主要对图标的尺寸和新的视图类型感兴趣.

操作栏高度为56dp(?android:attr/actionBarSize).现在菜单图标似乎是32 x 32 dp,它们之前是48 x 48 dp.由于它们位于操作栏中,因此它们周围有很多填充物.带填充的菜单图标大小为64 x 56 dp.我需要这个,因为我试图把ProgressBar一个菜单项.

还有什么改变吗?此外,我对一些常见UI模式的大小感兴趣,例如邮件客户端等列表/详细布局的宽度.

android ui-guidelines android-3.0-honeycomb

5
推荐指数
1
解决办法
6737
查看次数

71
推荐指数
5
解决办法
18万
查看次数

在GAE中尝试使用Set-Cookie添加标头时出错

我试图在我的项目中包含外部python模块来处理会话.它被命名了gmemsess.py.它尝试在响应中添加Set-Cookie标头,并显示错误:

rh.response.headers.add_header('Set-Cookie','%s=%s; path=/;'%(name,self._sid))
AttributeError: HeaderDict instance has no attribute 'add_header'
Run Code Online (Sandbox Code Playgroud)

我阅读文档,一切似乎都没问题,但它不起作用.为什么会出现此错误?此外,我使用webapp2来管理子域.因为这个可能会出现问题吗?

python session google-app-engine webapp2

3
推荐指数
1
解决办法
2189
查看次数

用python或其他语言生成一个Dex文件

是否可以在运行时使用python,perl或类似语言生成dalvik字节码?

谢谢

python dalvik dex

5
推荐指数
1
解决办法
1660
查看次数

使用JAX-WS将文件保存到Sharepoint Server

我正在尝试使用JAX-WS将文件保存到Sharepoint服务器.Web服务调用报告成功,但文件未显示.

我使用此命令(来自WinXP)生成Java代码以进行JAX-WS调用:

wsimport -keep -extension -Xnocompile http://hostname/sites/teamname/_vti_bin/Copy.asmx?WSDL
Run Code Online (Sandbox Code Playgroud)

我得到了一个Web服务的句柄,我port使用以下方法调用:CopySoap port = null;

if (userName != null && password != null) {
    Copy service = new Copy();
    port = service.getCopySoap();
    ((BindingProvider) port).getRequestContext().put(BindingProvider.USERNAME_PROPERTY, userName);
    ((BindingProvider) port).getRequestContext().put(BindingProvider.PASSWORD_PROPERTY, password);
} else {
    throw new Exception("Holy Frijolé! Null userName and/or password!");
}
Run Code Online (Sandbox Code Playgroud)

我使用以下方法调用了Web服务:

port.copyIntoItems(sourceUrl, destUrlCollection, fields ,
    "Contents of the file".getBytes(), 
    copyIntoItemsResult, copyResultCollection)
Run Code Online (Sandbox Code Playgroud)

sourceUrl和中唯一的URL destUrlCollection等于"主机名/网站/ teamname /技术文档/子文件".

FieldInformationCollection名为的对象fields只包含一个FieldInformation.该FieldInformation对象具有"HelloWorld.txt"作为displayName,internalName和value的值.type属性设置为FieldType.FILE.id属性设置为(java.util.UUID.randomUUID()).toString().

copyIntoItems成功回归的呼吁; …

java sharepoint jax-ws

10
推荐指数
1
解决办法
2960
查看次数

Rails 3 - select_tag helper - array

我有一个问题,我有点不好意思问,但似乎无法搞清楚.

我正在编写一个表单,允许用户过滤信息,以便只查看他们想要的内容.在表单中,我使用select_tag帮助程序作为下拉菜单.选择菜单由一组用户填充.我有以下代码:

<% @users.each do |user| %>
  <%= select_tag "users", options_for_select([user.name]) %> 
<% end %>
Run Code Online (Sandbox Code Playgroud)

这个问题是它为@users数组中的每个user.name生成一个选择菜单.我假设问题是我在@users上使用.each.但是,今天早上我一直在努力解决这个问题,所以我想我只会问......

在使用select_tag帮助程序时,从数组中获取项目以填充到单个标记的正确方法是什么?

谢谢

html-select ruby-on-rails helpers ruby-on-rails-3

5
推荐指数
1
解决办法
5371
查看次数

爆炸功能不是分解字符

我正在寻找一个explode类型函数,它将按字符分解字符串,但如果字符在其中,则还要取一个字符列表来忽略.

例如:

$str = "hello, this is, a test 'some, string' thanks";
explode_func($str, ",", "'");
Run Code Online (Sandbox Code Playgroud)

这会爆炸$str,,但忽略任何,内部'

预期产量:

Array
(
    [0] => hello
    [1] => this is
    [2] => a test
    [3] => thanks
)
Run Code Online (Sandbox Code Playgroud)

另一个例子是:

$str = "hello, this is, a test (some, string) thanks";
explode_func($str, ",", "()");
Run Code Online (Sandbox Code Playgroud)

这会爆炸$str,,但忽略任何,之间(,并)得到相同的输出.

有任何想法吗?

php string explode

0
推荐指数
1
解决办法
311
查看次数

如何在Java中创建GUI

我已经使用Java一段时间了,但我从未创建过GUI - 总是CLI.如何在Java中创建GUI?你能建议一个好的教程/参考吗?

我正在寻找一个简单的GUI,它有两个长文本区域和一些按钮.

java user-interface

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