标签: database

关于Youtube的观点数

我正在实施一个应用程序来跟踪帖子被查看的次数.但我想保持一种"聪明"的跟踪方式.这意味着,我不想仅仅因为用户刷新浏览器而增加视图计数器.

因此,如果IP和用户代理(浏览器)是唯一的,我决定只增加视图计数器.到目前为止哪个是有效的.

但后来我想.如果Youtube正在这样做,他们有几个视频有数千甚至数百万的视图.这意味着他们在数据库中的视图表将过多地填充IP和用户代理....

这让我假设他们的视频表具有视图的计数器缓存(即views_count).这意味着,当用户点击视频时,将存储IP和用户代理.此外,视频表中的计数器缓存列也会增加.

每次点击视频.Youtube需要查询视图表并计算条目数.这不会大大影响性能吗?

这是他们怎么做的?或者,还有更好的方法?

database database-performance ruby-on-rails-3

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

如何连接其他表相关的多个表

我正在开发一个人们可以出租房屋的网站.我正在使用php 5.2.0和MySQL 5+

出版物存储在这样的表格中

ta_publications
+---+-------------+------+
|id |    name     | date |
+---+-------------+------+
| 1 | name_001    |  ... |
| 2 | name_002    |  ... |
| 3 | name_003    |  ... |
+---+-------------+------+
Run Code Online (Sandbox Code Playgroud)

我有不同的出版物,有"互联网","制作服务","卫星电视"等"功能".

这些功能将来可能会发生变化,我希望能够添加/删除/修改它们,因此我将它们存储在表中的数据库中.

ta_features
+---+-------------+
|id | name        |
+---+-------------+
| 1 | Internet    |
| 2 | Wi-Fi       |
| 3 | satelital tv|
+---+-------------+
Run Code Online (Sandbox Code Playgroud)

与使用下表的出版物有关

ta_publication_features
+---+-------------+----------------+
|id |   type_id   | publication_id |
+---+-------------+----------------+
| 1 |      1      |       1        |
| 2 | …
Run Code Online (Sandbox Code Playgroud)

php mysql sql database database-design

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

为初学者推荐一个好的mongodb /数据库教程?

我是一名设计师; 精通HTML/CSS/JQuery.我对数据库几乎一无所知.我对学习mongodb感兴趣(看起来更简单),但找不到任何从头到尾都能抓住我的手的教程.我发现的大多数教程都教你如何在命令行或他们自己的基于web的shell中使用它.我正在寻找能够告诉我如何使用它实际部署网站的东西.

或者,如果mongodb不适合数据库新手,那么你能推荐一些对我正在寻找的东西有用的数据库教程吗?

database mongodb

5
推荐指数
2
解决办法
8710
查看次数

分割长文件的最佳方法.编程还是SQL?

我有一个GPS信息的数据库表(在MS-Access中),记录了速度,位置(纬度/经度)和车辆每秒的方位.有一个显示时间的字段2007-09-25 07:59:53.问题是此表已合并来自此项目上收集的多个文件的信息.所以,例如,2007-09-25 07:59:53到2007-09-25 08:15:42可能是一个文件,在超过10秒的间隔后,下一个文件将开始,如2007-09 -25 08:15:53到2007-09-25 08:22:12 我需要填充此表中的文件编号字段,并且每个文件的分隔标准将是从上一个和下一个文件的时间间隔超过10秒.我使用C#代码迭代表并将每个记录与下一个记录进行比较,并在间隔超过10秒时更改文件编号.

我的问题是,如果使用编程解决这类问题还是使用SQL查询更好地解决了?我可以将数据加载到像SQL Server这样的数据库中,因此我可以使用的工具没有限制.我只是想知道最好的方法.

如果使用SQL解决这个问题更好,我是否需要使用游标?

当使用编程(例如C#)解决这个问题时,当需要根据更新的DataSet更新20000+记录时,更新表的有效方法是什么?我使用DataAdapter.Update()方法,似乎需要很长时间才能更新表(大约30分钟左右).

c# sql database ado.net

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

Mysql查询求和十进制数

我试图总结我的小数记录,例如

我的表中有一个名为cash的列,其值为40.33,30.00,77.22.如何创建总结这些记录的查询?我正在努力使用SUM(cash),ROUND(SUM(cash),2)但没有结果.

SELECT cash FROM `enrolled 
Run Code Online (Sandbox Code Playgroud)

返回行.

SELECT ROUND(SUM(cash),2)`
Run Code Online (Sandbox Code Playgroud)

返回0行.

mysql database sum

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

无法通过UUID RAW查找数据库中的行(32)

我有下表:

create table Mike_Test
( Id          raw(32)      default sys_guid() not null primary key,
  Value        varchar2(80) not null unique
);
Run Code Online (Sandbox Code Playgroud)

我现在插入此表:

INSERT INTO Mike_Test (VALUE) VALUES ('Blah');
Run Code Online (Sandbox Code Playgroud)

我可以确认那里有一个新行:

select * from Mike_Test;
Run Code Online (Sandbox Code Playgroud)

我明白了:

08364fc81419429d83c9bcedb24a9a57    Blah
Run Code Online (Sandbox Code Playgroud)

现在我尝试用以下方法选择该行:

select * from Mike_Test WHERE ID='08364fc81419429d83c9bcedb24a9a57';
Run Code Online (Sandbox Code Playgroud)

但是,我得到零行和零错误.我究竟做错了什么?

sql database oracle oracle11g

5
推荐指数
2
解决办法
3620
查看次数

什么数据库足以记录应用程序?

我正在编写一个带有nodeJS的Web应用程序,其他应用程序可以使用它来存储日志,稍后可以在Web界面中访问,也可以由提供API的应用程序本身访问.与Graylog2类似,但架构免费.

我已经尝试过couchDB,其中每个文档都是一个日志文档,但由于我没有真正使用修订版,在我看来我并没有使用它的所有功能.除此之外,我认为如果日志超出限制,那么在couchDB中管理将非常困难.

我真正想要的是一大堆日志,可以对其进行排序,过滤,搜索和封顶.然后访问它的最后一个事件.它应该是无架构的,写入它应该是非阻塞的.

我正在考虑使用Cassandra(我真的不熟悉它),因为这里说的要点.MongoDB在这里似乎也很好,因为Graylog2在mongoDB中使用,在这里它有一些关于它的好点.

我已经看过这个问题,但对答案不满意.

编辑:由于某些原因我不能在生产中使用Cassandra,现在我正在尝试使用MongoDB.

使用mongoDB的另一个原因:http://www.slideshare.net/WombatNation/logging-app-behavior-to-mongo-db

更多编辑:

它类似于graylog2,但我想要的不同之处在于,而不是有一个消息字段,有客户端定义的文件,这就是为什么我希望它没有架构,因此,我可能需要查询用户定义的字段.我们可以在SQL上构建它,但查询用户定义的字段将重新发明轮子.文件也一样.

从技术上讲,我正在寻找的是最终获得丰富的统计数据,或者简单的调试以及我们无法从日志中获取的许多其他内容.

database logging couchdb cassandra nosql

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

在Yii 1.x中无法在迁移中使用模型

使用迁移来插入或更改表结构对我来说没有问题.但是,我有一个问题是使用模型更改表中的数据.我的想法是做那样的事情:

public function up()
{
    $models = MyModel::model()->findAll();
    foreach ($models as $variable) {
        $variable->property = str_replace('.', ',', $variable->property);
        $variable->save();
    } 
}
Run Code Online (Sandbox Code Playgroud)

看来,我无法导入模型,因为我遇到了以下错误:

*** applying m111010_084827_convert_point_2_comma
PHP Error[2]: include(MyModel.php): failed to open stream: No such file or directory
Run Code Online (Sandbox Code Playgroud)

如果我之前尝试导入模型:

$modelClass = Yii::import('application.models.*');
Run Code Online (Sandbox Code Playgroud)

然后错误是:

*** applying m111010_084827_convert_point_2_comma
exception 'CDbException' with message 'The table "{{mymodel}}" for active record class "MyModel" cannot be found in the database.' in C:\...\yii\framework\db\ar\CActiveRecord.php:2276
Run Code Online (Sandbox Code Playgroud)

问题出在哪儿?我究竟做错了什么?我该如何以正确的方式导入迁移模型?或者我可能应该用SQL命令替换字符串?

php database migration data-migration yii

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

在Oracle中建议加密的方法是什么?

我需要Oracle /安全专家的帮助.

我将在Oracle DB中创建加密/解密函数.我打算dbms_cryptoAES256.我知道我应该将密钥文件存储在O/S中并使用它来读取它utl_file.

这是一个好主意吗?这种方法有什么问题吗?例如,如果密钥文件被函数的10个调用者同时读取,那么utl_file是否会出现问题?还有其他建议吗?

我确信这是一件非常普遍的事情.有谁知道我在哪里可以找到这样做的好样品?

由于这与安全相关,我更愿意遵循其他人遵循的标准.

database security oracle cryptography utl-file

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

通知客户更新的最佳方式?

好吧,在服务器端有一个桌面应用程序,用于将一些信息插入数据库(新闻,图像等),我有客户端从数据库收集这些信息并将它们存储到本地XML中.

因此,每个客户端从数据库下载新闻并显示它们.

问题是我如何通知客户有更新.

我的解决方案

我想使用像UpdateID这样的数据库,并且每次数据更新到数据库UpdateID都应该是Incremented +1,然后每个客户端都应该在其XML中有一个属性UpdateID,并检查他们的UpdateID是否与Server UpdateID匹配,如果不是这样的话一个新的更新.在每次成功更新时,客户端都应将服务器UpdateID放入其XML UpdateID中.

那么有没有更好的方法来实现这一目标?

PS:我正在使用的数据重新呈现层是WCF服务

c# database notifications

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