Логическая оптимизация
Сложные отчеты, требующие обработки гигабайтов данных, не могут быть построены используя только средства оптимизации хранения и доступа. Если предположить, что скорость чтения с жесткого диска составляет 60 Мб/с, то даже на простое чтение 1Гб данных потребуется около 15 секунд времени и это при одном-единственном пользователе, а при многопользовательском доступе такая ситуация совершенно неприемлема.
Путь построения подобных приложений заключается в разумном проектировании базы данных и повышении избыточности хранимой информации. На практике избыточность можно разделить на два типа:
Путь логической оптимизации бесконечен и очень увлекателен. В "правильно" спроектированной базе данных легко ориентироваться, любые отчеты могут быть построены с помощью выборок, не требуя использования алгоритмов обработки исходных данных.
Основными инструментами являются пользовательские функции, триггеры и временные таблицы (или виды). При этом как "сырые" данные, так и созданные наборы функционалов должны быть разбиты на части, проиндексированы и кластеризованы. При соблюдении этих условий PostgreSQL становится настоящим косматым мамонтом и пройдет по любому бездорожью, преодолев все препятствия и обеспечивая потрясающую производительность и надежность Ваших информационных систем.
Путь построения подобных приложений заключается в разумном проектировании базы данных и повышении избыточности хранимой информации. На практике избыточность можно разделить на два типа:
- дублирование данных,
- хранение функционалов данных.
Путь логической оптимизации бесконечен и очень увлекателен. В "правильно" спроектированной базе данных легко ориентироваться, любые отчеты могут быть построены с помощью выборок, не требуя использования алгоритмов обработки исходных данных.
Основными инструментами являются пользовательские функции, триггеры и временные таблицы (или виды). При этом как "сырые" данные, так и созданные наборы функционалов должны быть разбиты на части, проиндексированы и кластеризованы. При соблюдении этих условий PostgreSQL становится настоящим косматым мамонтом и пройдет по любому бездорожью, преодолев все препятствия и обеспечивая потрясающую производительность и надежность Ваших информационных систем.
Comments