小编M. *_*irn的帖子

Spark:如何按时间范围加入RDD

我有一个微妙的Spark问题,我无法绕过头.

我们有两个RDD(来自Cassandra).RDD1包含Actions和RDD2包含Historic数据.两者都有一个id可以匹配/加入.但问题是这两个表有一个N:N关系.Actions包含多个具有相同ID的行,因此也是如此Historic.以下是两个表的一些示例日期.

Actions 时间实际上是一个时间戳

id  |  time  | valueX
1   |  12:05 | 500
1   |  12:30 | 500
2   |  12:30 | 125
Run Code Online (Sandbox Code Playgroud)

Historic set_at实际上是一个时间戳

id  |  set_at| valueY
1   |  11:00 | 400
1   |  12:15 | 450
2   |  12:20 | 50
2   |  12:25 | 75
Run Code Online (Sandbox Code Playgroud)

我们如何以某种方式加入这两个表,我们得到这样的结果

1   |  100  # 500 - 400 for Actions#1 with time 12:05 because Historic was in that time at 400
1 …
Run Code Online (Sandbox Code Playgroud)

cassandra apache-spark rdd

14
推荐指数
1
解决办法
2471
查看次数

我对INNODB Lock有什么不对?

我在handels的系统上工作了很多更新,插入和删除请求.这就是为什么我选择INNODB作为我的存储引擎行锁的原因.我们每10分钟更新60,000条记录.我们正在使用Gearman来平衡我们在不同服务器上的工作.代码是PHP,我们使用的是Zend Framework.

所以让我们从我们问题的描述开始.我们正在记录错误,几乎每隔5-20分钟就会发生一次错误.

SQLSTATE[HY000]: General error: 1205 Lock wait timeout exceeded; try restarting transaction
Run Code Online (Sandbox Code Playgroud)

简单扩展"锁定等待超时"对我们没有帮助,因为我们尝试尽快更新.

为了获得更多信息,我做了SHOW INNODB STATUS\G.有一件事让我问 - 黑客是什么?

---TRANSACTION 0 18126657, ACTIVE 54 sec, process no 16154, 
OS thread id 47956454176512 fetching rows, thread declared inside InnoDB 68 mysql tables in use 1, 
locked 1 1204 lock struct(s), heap size 112624, 65338 row lock(s), undo log entries 44 
MySQL thread id 3331522, query id 103362521 [ServerIP] [USER] Updating 
UPDATE userproducts SET lowest_price=16.96, last_lowest_price_update='2012-09-09 20:07:30' WHERE product_id …
Run Code Online (Sandbox Code Playgroud)

php mysql innodb zend-framework gearman

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

调试困了MySQL连接

我想我有一些应用程序问题会减慢我们的整个应用程序,并可能导致损坏和其他问题.
许多正在睡眠的mysql连接都会出现应用程序问题.

SHOW PROCESSLIST;输出:

| 356058234 | Y  | X:39119 | D | Sleep   |  1442 |       | NULL             |
| 356058441 | Y  | X:39126 | D | Sleep   |  1442 |       | NULL             |
| 356059383 | Y  | X:46615 | D | Sleep   |  2049 |       | NULL             |
| 356059389 | Y  | X:46617 | D | Sleep   |  2052 |       | NULL             |
| 356065991 | Y  | X:39267 | D | Sleep …
Run Code Online (Sandbox Code Playgroud)

php mysql linux performance zend-framework

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

PHP不释放我的记忆?

我有以下代码,它从数据库(非常多)接收数据并将它们传递给处理这些数据的函数.这是代码的样子.

for($o=0; $o<$times; $o++)
    {
        echo "Before Data: ".memory_get_peak_usage().PHP_EOL;
        $data = $u->getDataLimit($id, $market, ($o*5000));
        echo "After Data: ".memory_get_peak_usage().PHP_EOL;

        echo "Before Process: ".memory_get_peak_usage().PHP_EOL;
        $feed.= $p->process($data, ($o*5000) , 0, 0);
        echo "After Process: ".memory_get_peak_usage().PHP_EOL;

        $data = null; // or unset($data) doesnt matter.

        echo "After All: ".memory_get_peak_usage().PHP_EOL.PHP_EOL;
    }
Run Code Online (Sandbox Code Playgroud)

这就是输出.

Before Data: 9587976
After Data: 37969952
Before Process: 37969952
After Process: 70166880
After All: 70166928

Before Data: 70166928
After Data: 83876232
Before Process: 83876232
After Process: 118233752
After All: 118233752

Before Data: 118233752
After …
Run Code Online (Sandbox Code Playgroud)

php performance memory-leaks memory-management

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