首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >广告平台时间序列数据

广告平台时间序列数据
EN

Database Administration用户
提问于 2013-05-16 18:06:24
回答 1查看 637关注 0票数 0

我试图弄清楚如何存储时间序列数据的广告平台,我正在工作。

基本上,我想知道一些存储数十亿行数据的策略/解决方案,这样我就可以轻松地搜索它(表上大约有6-8个索引),并根据查询获得快速计数。

我用mySQL引擎尝试了tokuDB,这看起来非常快,但当行数达到500万至80万行时,执行计数查询的速度非常慢。

我在研究一些noSQL替代方案,但由于我希望能够搜索这些数据,这可能不是最好的解决方案。我在用dynamoDB。我要把数据存储在很多地方,才能对所有的数据进行查询。

我要存储的是数据库中发生的每次点击AD时的一行。这个表会增长很快,特别是当这个站点变得很大的时候。

另一种解决方案是将每个广告客户的这些数据分开。这意味着每个广告商将有他们自己的表,在那里他们的所有数据进入。这意味着它将更小,计数查询将更快。我甚至可以把它分成广告商和月。

我的目标是让广告商能够以分页的方式搜索和显示他们所有的点击。如果他们愿意的话,他们应该能够在一个时间段之间获得数据,并通过大约5-8个其他索引进行过滤。

EN

回答 1

Database Administration用户

发布于 2014-04-06 16:33:35

你试过狮身人面像搜索(http://sphinxsearch.com/)吗?它是搜索引擎,但不只是搜索引擎。它可以非常快地通过组,订单,过滤器查询。Mysql应该适合使用每个表和每个主机切分的快速写入。

您可以将sphinx索引拆分为几个部分,并使用分布式搜索:

http://sphinxsearch.com/docs/2.2.2/distributed.html

分区是手动完成的。你应该

  • 在不同的服务器上安装狮身人面像程序的几个实例(索引器和搜索程序);
  • 使实例索引(并搜索)数据的不同部分;
  • 在一些搜索实例上配置一个特殊的分布式索引;
  • 并查询此索引。

当searchd收到对分布式索引的查询时,它执行以下操作:

  • 连接到配置好的远程代理;
  • 发出查询;
  • 顺序搜索配置的本地索引(当远程代理正在搜索时);
  • 检索远程代理的搜索结果;
  • 将所有结果合并在一起,删除重复的结果;
  • 将合并的结果发送给客户端。
票数 1
EN
页面原文内容由Database Administration提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://dba.stackexchange.com/questions/42365

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档