小编jjf*_*ine的帖子

在Berkeley DB中优化性能

几天前我刚开始玩Berkeley DB所以我试图看看在尽可能快地存储数据时是否有一些我一直缺失的东西.

以下是有关数据的一些信息: - 它有512个字节的块 - 块按顺序排列 - 块将按FIFO顺序删除 - 如果我因为电源故障而丢失一些数据,只要整个数据库不是'破了

在阅读了一堆文档之后,看起来像Queue db正是我想要的.

但是,在尝试了一些测试代码后,我的最快结果大约是每秒1MByte,只需循环通过DB-> put with DB_APPEND set.我也尝试过使用交易和批量看跌期权,但这些都放慢了速度,所以我没有追求它们很长时间.我插入了在我的飞思卡尔i.MX35开发板上的NANDFlash芯片上创建的新数据库.

由于我们希望每秒至少获得2MB的写入速度,我想知道是否有一些我错过的可以提高速度的东西,因为我知道我的硬件可以写得比这更快.

berkeley-db

6
推荐指数
1
解决办法
4664
查看次数

如何知道何时使用不平衡分区重新分区/合并RDD(可能不进行重排)?

我正在从s3加载数万个gzip压缩文件,用于我的火花工作.这导致一些分区非常小(10个记录)和一些非常大(10000个记录).分区的大小非常好地分布在节点之间,因此每个执行器似乎在聚合中处理相同数量的数据.所以我不确定我是否有问题.

我怎么知道是否值得重新分区或合并RDD?这些中的任何一个都可以在不拖沓数据的情况下平衡分区吗?此外,RDD不会被重用,只是映射然后加入另一个RDD.

apache-spark

6
推荐指数
1
解决办法
4131
查看次数

用Qt进行GUI编程中的单身人士EVIL?

我刚刚开始我的第一个相当大的Qt项目,它将主要是一堆带按钮,标签小部件和Qwt Plots的屏幕.Qt Quarterly 27中描述的面板堆栈模式对我的应用来说似乎相当不错.我的每个屏幕都是一个封装在Panel中的QWidget,它由QStackedWidget显示/隐藏.但是,它为每个Panel 使用单例模式,因此它们不会在应用程序启动时立即创建,因此不会创建多个屏幕.

所以我开始编码.让面板堆工作.添加了一些代码,以便动态更新小部件不会一直动态更新.让我的历史堆栈/后退按钮适用于面板.一切似乎都很好,但我有一个唠叨的担忧:

  1. 我的代码闻起来.

我无法与这里发布的任何仇恨以及关于单身人士模式的博客争论.我想我得到了它,我编写的代码确实让我觉得所有样板线和全局对象都有点脏.但我确实不必担心在切换到屏幕之前是否已经实例化屏幕并将其添加到我的历史堆栈中.我只是说切换到那个屏幕,它被添加到我的历史堆栈中,并且魔术起作用.

从我所读到的,还有一些案例,单身人士是值得的.这是特殊情况吗?神奇的屏幕切换/历史堆栈让我觉得"是",但是我要创建的不同单身类的绝对数量让我想到"不,不,不,不".

我想正义的人并弄清楚如何获得Singleton模式了我的代码,现在这样我就不必在以后做.但我不想摆脱我的所有单身人士课程,只是为了摆脱我的单身人士课程,因为他们是EVIL [需要引证].

任何输入都非常感谢!

singleton qt design-patterns

4
推荐指数
1
解决办法
1806
查看次数

有没有一种简单的方法可以找到哪些其他函数可以从源代码中调用某个函数?

我有一个函数,由我的代码库中的其他4个函数显式调用.然后,在我的代码中,至少有10个其他函数调用这些函数中的每一个.我知道我可以手动将这些函数调用中的一个跟踪到我的程序的主函数(它有30个函数调用),但似乎这对计算机来说是一个更好的工作.我只是想知道哪个函数main()正在调用这个隐藏函数.

有谁知道任何可以帮助的软件?

此外,使用调试器是不可能的.那太简单了.该软件仅在手持设备上运行.

c language-agnostic

2
推荐指数
1
解决办法
169
查看次数