Хранилище данных Snowflake Cloud - Ограничения лучших практик базы данных - PullRequest
0 голосов
/ 27 апреля 2020

Есть ли ограничение на количество схем и объектов безопасности, которые вы можете иметь в одной базе данных Snowflake, и будет ли снижение производительности с тысячами этих объектов?

Поможет ли разделение данных на несколько баз данных повысить производительность?

Ответы [ 2 ]

0 голосов
/ 29 апреля 2020

Нет никаких жестких ограничений на мои знания. Наш опыт показывает, что существуют серьезные проблемы с производительностью, когда у вас более тысячи объектов безопасности (пользователей, ролей, схем). У нас есть несколько случаев поддержки по этому поводу. До сих пор нам удавалось выработать некоторые моменты, которые влияют на производительность:

  • Проблемы с производительностью усугубляются, когда объекты безопасности сильно меняются. Существует некоторый тип кеша, который очень помогает, если объекты безопасности меняются не часто.
  • Проблемы с производительностью усугубляются, когда сложен график безопасности. Само количество пользователей / ролей менее важно, чем их отношения (например, пользователь А имеет разрешение на 1000 ролей, каждая из них имеет разрешение на 100 других ролей)
  • Использование нескольких баз данных не имеет никакого эффекта (кроме предыдущего точка).
  • Масштабирование хранилища имеет ограниченный эффект, поскольку вы можете компенсировать «отставание» в запросах DCL / DDL, ускоряя выполнение запросов DQL / DML.
  • Производительность облачной защиты функции сильно различаются - вы можете иметь среднее значение 200 мс на один запрос в одной базе данных в течение нескольких дней, а затем оно возрастает до среднего значения 500 мс и остается там в течение нескольких дней.

Интересно, что служба поддержки постоянно говорит нам, что мы являемся единственным клиентом, испытывающим подобные проблемы.

0 голосов
/ 29 апреля 2020

Ограничений нет, но у вас будет снижение производительности на уровне облачных сервисов, если у вас много схем. Какой у вас вариант использования? Зачем вам нужно создавать так много схем?

...