AskOverflow.Dev

AskOverflow.Dev Logo AskOverflow.Dev Logo

AskOverflow.Dev Navigation

  • 主页
  • 系统&网络
  • Ubuntu
  • Unix
  • DBA
  • Computer
  • Coding
  • LangChain

Mobile menu

Close
  • 主页
  • 系统&网络
    • 最新
    • 热门
    • 标签
  • Ubuntu
    • 最新
    • 热门
    • 标签
  • Unix
    • 最新
    • 标签
  • DBA
    • 最新
    • 标签
  • Computer
    • 最新
    • 标签
  • Coding
    • 最新
    • 标签
主页 / server / 问题

问题[indexing](server)

Martin Hope
Rino Bino
Asked: 2020-09-29 09:59:39 +0800 CST

在 RDS 上创建 Postgres 索引比较弱的 linux 主机慢得多

  • 3

背景:

  • Postgres 10.9
  • DB 在开发主机上作为 docker 容器运行。(t3.large,gp2 500GB 存储空间)
  • DB 在 RDS 中运行,用于暂存和生产。(m5.2xlarge,gp2 1TB 存储)

一切都很好,很长一段时间都是这样,而且我的 db alter 时间似乎总是在 prod/staging 与 dev 中更快(如预期的那样)。

问题/问题:

我有一个特定的索引创建,它在 RDS(更强大)中比在本地开发主机上花费的时间长 20 倍。我在过去几年中看到的所有其他案例,RDS 主机都更快,因为它具有更强的计算能力和更高的 I/O 速度。

  • 实例之间的数据和模式是相同的。使用 pg_dump + pg_restore 每晚用新数据加载开发数据库。
  • 与我数据库中的其他表相比,该表相对较大(3000 万行)(大多小于 100 万行)

这是一个简单的索引操作:

CREATE INDEX idx_email_records_created ON email_records(created_at);

在本地 linux 开发盒上:

db=> CREATE INDEX idx_email_records_created ON email_records(created_at);
CREATE INDEX
Time: 68523.557 ms (01:08.524)

在 RDS 主机上:

db=> CREATE INDEX idx_email_records_created ON email_records(created_at);
CREATE INDEX
Time: 1490902.929 ms (24:50.903)

我检查了所有正常的东西: CPU 负载(在所有情况下都免费),内存(在所有情况下都免费)。锁定/表使用等

开发主机每晚都会使用新的 prod db 克隆恢复,因此行数没有差异。

我检查了 max_parallel 并尝试了类似ALTER TABLE email_records SET (parallel_workers = ##);但似乎没有任何区别的东西。

任何帮助表示赞赏

postgresql indexing amazon-rds
  • 1 个回答
  • 643 Views
Martin Hope
cilap
Asked: 2020-04-12 06:20:03 +0800 CST

如何阻止像谷歌这样的爬虫索引gitlab?

  • 1

如何阻止任何爬虫访问 gitlab 上的任何内容?

应该有一个 robots.txt 或类似的东西告诉不要爬行。这将是很好的第一步。

但更重要的是,我如何告诉 gitlab 只允许经过身份验证的访问?例如

https://gitlab.yourdomain.com/可公开访问

还

https://gitlab.yourdomain.com/explore可公开访问

如果两个 URL 都受到身份验证的保护,则爬虫甚至无法获取任何内容。但是如何用 gitlab CE 配置呢?

更清楚地说,除了登录对话框之外,其他任何东西都应该是公开可见的。如何用 gitlab CE 管理这个?

authentication indexing gitlab
  • 2 个回答
  • 1272 Views
Martin Hope
Remiz
Asked: 2010-03-20 11:45:37 +0800 CST

MySQL:具有高更新频率的非常大集合的表组织

  • 2

我在选择我的 MySQL 模式应用程序时面临两难境地。所以在我开始之前是一张我的数据库非常简化的图片:

这里的架构:http: //i43.tinypic.com/2wp5lxz.png

一句话:对于每个客户,应用程序收集文本数据并将标签附加到收集的每个数据中。

作为每个表的使用的近似值,这是我所期望的:

  • 客户:~5000,不应该快速增长
  • 数据:每位客户 500 万,大客户可能翻倍或三倍。
  • 标签:〜1000,相当固定的大小
  • data_tag :每个客户轻松上亿。每个数据都可以标记很多。

收集过程是永久性的,这意味着大约每 15 分钟就会有新数据出现并被标记,这需要非常持续的索引刷新。

我的很多查询都是特定日期之间的 DATA SELECT COUNT 并用特定 CUSTOMER 上的特定 TAG 标记(很少会涉及多个客户)。

情况就是这样,你可以想象在这种数据量的情况下,我在数据组织和索引方面面临挑战。同样,它是我的结构的一个非常简约和简化的版本。我的问题是,它更好吗:

  1. 坚持这个模型并管理疯狂的索引优化?(这涉及 data_tag 表中可能有数十亿行)
  2. 更改架构并为每个客户使用一张数据表和一张 data_tag 表?(这涉及在我的数据库中有 5000 个表)

我在复制的 MySQL 5.0 专用服务器(四核,8Go 内存)上运行所有这些。我只使用 InnoDB,我还有另一台运行 Sphinx 的服务器。所以知道这一切,我迫不及待地想听听你对此的看法。

谢谢。


编辑

感谢您的回答,我意识到这个数字有多疯狂。所以这里是更新的更现实的表格用法(基于只是一个基本机架空间盒的实际服务器)。

  • 客户:2000(固定)
  • 数据:每个客户 100 万(固定,归档旧数据。而且非常不公平:有些客户有几千,最大的 500 万)
  • 标签:1000(固定)
  • data_tag :每个客户约 3 或 5 百万(取决于数据,也很不公平)。

谢谢你。

performance mysql scaling indexing
  • 3 个回答
  • 1237 Views
Martin Hope
Sean
Asked: 2010-03-05 05:20:44 +0800 CST

Mysql auto_increment 重置而不重建索引?

  • 3

必须有一种方法可以在不重建整个索引的情况下重置表上的 auto_increment 值。我有一个包含超过 20 亿行的表,其中意外插入了将近 42 亿行的 ID。根据过去的经验,我知道尝试将 auto_increment 值设置回应有的值将迫使 mysql 重建整个索引,这在这种大小的表上可能需要 24 小时。老实说,我不敢相信这只是默认情况下的“工作方式”。完全不需要重建整个表索引,因为您想更改此值。

必须有办法。但我在任何地方都找不到。想法请!

(重建索引,我知道 myisamchk 可以比 mysql 进程本身快 100 倍。但我不能告诉 mysql 在更改自动增量 ID 后使用 myisamchk 而不是自己来重建索引。必须有一种方法!!!)

mysql database indexing
  • 1 个回答
  • 2197 Views
Martin Hope
Stewart Robinson
Asked: 2010-02-11 07:23:25 +0800 CST

我是否需要在 sql server 2008 的不同表中将作为 FK 的列索引到 PK ?

  • 1

我有一个查询相当繁重的表。我加入的列是另一个表中 PK 的 FK。此列似乎通过表扫描占用了查询时间,这使我相信 SQL Server 将无法使用远程表上的索引,并且需要它自己的源表上的索引。

我很确定我是对的,但如果 SQL Server 2008 天才能够涉足这一点,那就太好了。

sql-server-2008 indexing database-performance
  • 2 个回答
  • 86 Views
Martin Hope
Parag
Asked: 2010-01-08 12:14:46 +0800 CST

如何防止搜索引擎将特定网址编入索引

  • 0

我有一个不想编入索引的网址:

http://www.mysite.com/moduleA?param=secretkey

所以当我用谷歌搜索“mysite.com”时,我不希望上面的链接出现在搜索结果中。

但是,以下网址是公开查看的一部分:

www.mysite.com/moduleA
www.mysite.com/moduleA?id=12345
www.mysite.com/moduleA/somepage.html

这可以做到吗?robots文件可以用于此吗?

search url indexing robots.txt
  • 1 个回答
  • 134 Views
Martin Hope
xanadont
Asked: 2009-09-22 07:09:53 +0800 CST

让 Google 自定义搜索为您的网站编制索引

  • 3

我刚刚实施了这个网站。我正在尝试让 Google 自定义搜索为我的网站工作,但我做不到。我做了几件事:

  • 在控制面板中添加了“ http://www.saferoutesga.org ”作为站点,并使用“包括此页面链接到的所有部分站点”选项设置“从该页面动态提取链接并将它们添加到我的搜索引擎”。
  • 明确地给它一个页面来索引: http: //www.saferoutesga.org/Sitemap
  • 设置站点地图文件并注册它: http: //www.saferoutesga.org/sitemap.axd

我唯一要做的就是上面的第二个项目符号。您会看到是否使用了网站页脚中包含的搜索栏。如果可以的话,我想避免明确索引每一页。此外,我不想记得在每次更新后手动重新索引。

我究竟做错了什么?

indexing
  • 1 个回答
  • 265 Views
Martin Hope
pufferfish
Asked: 2009-07-02 05:42:53 +0800 CST

在 Ubuntu 上索引 PDF 文件

  • 5

我正在 Ubuntu 中寻找一种解决方案,该解决方案可以索引 PDF(和 ps?)文件以供以后搜索。

标准是:

  1. 兼容性:通常提取文本会有所不同,具体取决于用于创建 PDF 的软件。一些PDF也可以被“锁定”,我想应该尊重这一点。
  2. 搜索功能:通配符、正则表达式、“模糊”匹配。
  3. 搜索速度

在我的情况下,我想索引一个学术期刊文章的文件夹,因此要求它始终如一地工作,无论是什么软件创建了 PDF。我已经在使用参考管理器,所以不想替换它。

例如:一个好的 Beagle 前端和一个允许它索引 PDF 的插件将是完美的。

ubuntu pdf indexing
  • 3 个回答
  • 4747 Views
Martin Hope
ceejayoz
Asked: 2009-07-01 06:23:18 +0800 CST

Googlebot 请求中的奇数查询字符串

  • 2

谷歌的索引机器人(编辑:是的,它是谷歌,IP 解析)似乎正在向我们的主页添加任意查询字符串。

xx.xxx.xx.xxx - - [30/Jun/2009:10:14:37 -0400] "GET /?key=61680 HTTP/1.1" 200 3334 "-" "Mozilla/5.0 (compatible; Googlebot/2.1; +http://www.google.com/bot.html)"
xx.xxx.xx.xxx - - [30/Jun/2009:10:16:58 -0400] "GET /?term=byron HTTP/1.1" 200 3184 "-" "DoCoMo/2.0 N905i(c100;TB;W24H16) (compatible; Googlebot-Mobile/2.1; +http://www.google.com/bot.html)"

知道这些是什么意思吗?

mobile-devices google indexing seo search-engine
  • 3 个回答
  • 1150 Views
Martin Hope
SuperCoolMoss
Asked: 2009-06-07 03:42:05 +0800 CST

具有代理标识键的聚集索引的填充因子的正确值

  • 8

我有一个大表,它有一个带有标识主键的聚集索引。我正在确定此表的填充因子的正确值,以最大程度地减少页面拆分。我们使用每天运行的脚本来维护索引,该脚本会测量碎片并采取适当的措施。该表包含可变长度列。

我的第一个想法是将其设置为 100(因为记录应该只写入表的末尾),但我认为对可变长度列的更改也可能导致页面拆分,所以我现在转向 90。

任何建议表示赞赏。

sql-server indexes indexing
  • 2 个回答
  • 3443 Views

Sidebar

Stats

  • 问题 205573
  • 回答 270741
  • 最佳答案 135370
  • 用户 68524
  • 热门
  • 回答
  • Marko Smith

    新安装后 postgres 的默认超级用户用户名/密码是什么?

    • 5 个回答
  • Marko Smith

    SFTP 使用什么端口?

    • 6 个回答
  • Marko Smith

    命令行列出 Windows Active Directory 组中的用户?

    • 9 个回答
  • Marko Smith

    什么是 Pem 文件,它与其他 OpenSSL 生成的密钥文件格式有何不同?

    • 3 个回答
  • Marko Smith

    如何确定bash变量是否为空?

    • 15 个回答
  • Martin Hope
    Tom Feiner 如何按大小对 du -h 输出进行排序 2009-02-26 05:42:42 +0800 CST
  • Martin Hope
    Noah Goodrich 什么是 Pem 文件,它与其他 OpenSSL 生成的密钥文件格式有何不同? 2009-05-19 18:24:42 +0800 CST
  • Martin Hope
    Brent 如何确定bash变量是否为空? 2009-05-13 09:54:48 +0800 CST
  • Martin Hope
    cletus 您如何找到在 Windows 中打开文件的进程? 2009-05-01 16:47:16 +0800 CST

热门标签

linux nginx windows networking ubuntu domain-name-system amazon-web-services active-directory apache-2.4 ssh

Explore

  • 主页
  • 问题
    • 最新
    • 热门
  • 标签
  • 帮助

Footer

AskOverflow.Dev

关于我们

  • 关于我们
  • 联系我们

Legal Stuff

  • Privacy Policy

Language

  • Pt
  • Server
  • Unix

© 2023 AskOverflow.DEV All Rights Reserve