【发布时间】:2019-09-30 03:27:00
【问题描述】:
我有一个大约 7000 万行的 Postgres 表。我以前从未处理过如此大量的数据。
我的数据是 Stock 选项,其中复合键是这样的: AAPL.US,其中 AAPL ( apple ) 是股票的符号,US 是股票交易的地区。
当尝试使用复合键(例如
)进行自定义查询时SELECT * FROM stock_prices WHERE composit LIKE '%.US'
它非常慢,实际上通常只是因为它太长而崩溃。最好至少 10-15 分钟。
我正在尝试找到一种方法来索引该进程,因为它看起来可以被固定。
总共 7000 万行只有大约 70 个左右不同的“区域”。
我试过用这种方式索引“复合键”,但效果不大
CREATE INDEX idx_composit ON stock_prices(composit);
至少可以说,对数据集的任何查询都非常慢,所以我这样做的目的是能够以更好的方式“组织”我的数据以进行后续查询,这样任何简单的查询都不会花费 ~15分钟+++ / 崩溃。
【问题讨论】:
-
尝试以下页面:PostgreSQL LIKE 查询性能变化stackoverflow.com/questions/1566717/…
标签: postgresql indexing