Администраторы базы данных

15
Индекс не используется с `= any ()`, но используется с `in`

Таблица tимеет два индекса: create table t (a int, b int); create type int_pair as (a int, b int); create index t_row_idx on t (((a,b)::int_pair)); create index t_a_b_idx on t (a,b); insert into t (a,b) select i, i from generate_series(1, 100000) g(i) ; Индекс не используется с anyоператором:...

15
Каковы накладные расходы для varchar (n)?

Я хотел спросить значение этого фрагмента в документации Postgres относительно varchar(n)типа: Требование к памяти для короткой строки (до 126 байт) составляет 1 байт плюс фактическая строка, которая включает пробел в случае символа. Более длинные строки имеют 4 байта служебной информации вместо 1....

15
Счетчик SQL Server 2014 (DISTINCT x) игнорирует вектор плотности статистики для столбца x

Для a, COUNT(DISTINCT)который имеет ~ 1 миллиард различных значений, я получаю план запроса с агрегатом хешей, который оценивается в ~ 3 миллиона строк. Почему это происходит? SQL Server 2012 дает хорошую оценку, так что это ошибка в SQL Server 2014, о которой я должен сообщить в Connect? Запрос и...

15
PostgreSQL Рекурсивная Глубина Потомка

Мне нужно вычислить глубину потомка от его предка. Когда запись имеет object_id = parent_id = ancestor_id, она считается корневым узлом (предком). Я пытался запустить WITH RECURSIVEзапрос с PostgreSQL 9.4 . Я не контролирую данные или столбцы. Схема данных и таблиц поступает из внешнего источника....

15
Метрики, чтобы доказать или опровергнуть необходимость дополнительных администраторов баз данных?

В настоящее время у нас есть 2 DBA, я и еще один парень, и мы оба чувствуем потребность в дополнительном ресурсе (или двух). Я несколько раз беседовал с моим непосредственным руководителем по этой теме, но у меня возникают трудности с продажей идеи. Совсем недавно наш менеджер поделился с нами, что...

15
Как получить конкретный объект из массива jsonb в PostgreSQL?

У меня есть поле с именем 'user', которое содержит массив json, который выглядит примерно так: "user": [{ "_id" : "1", "count" : "4" }, { "_id" : "3", "count": "4"}] Теперь я хочу запрос как: select count from tablename where id = "1" Я не могу получить конкретное поле countиз массива объектов json...

15
Резервные копии журнала транзакций: последовательные или параллельные?

Мы используем SQL Server 2012 Standard Edition. Мне также довелось использовать сценарии Олы Хелленгрен, чтобы обеспечить более простую и гибкую среду для резервного копирования и обслуживания. Этот вопрос не столько о сценариях Олы, сколько о лучшей практике. Я понимаю, что окончательный ответ...

15
Более новая версия SQL Server менее стабильна?

Наш архитектор баз данных сказал нашему клиенту, что SQL Server 2014 - плохой выбор по сравнению с 2012 годом, поскольку в нем отсутствуют преимущества производительности и стабильности, которые есть у 2012 года. Все, что я прочитал, противоречит этому. Аарон Бертран говорит, что все наоборот, и...

15
План выполнения с несколькими отсутствующими индексами

Если вы выполните запрос с «Включить фактический план выполнения», план также предложит отсутствующие индексы. Детали индекса находятся внутри MissingIndexesтега в XML. Есть ли ситуация, когда план включает несколько предложений по индексам? Я пробовал разные sql-запросы, но не смог найти ни одного...

15
Можно ли дефрагментировать системные таблицы SQL Server?

У нас есть несколько баз данных, в которых создается и удаляется большое количество таблиц. Из того, что мы можем сказать, SQL Server не выполняет никакого внутреннего обслуживания системных базовых таблиц , что означает, что они могут со временем стать очень фрагментированными и раздутыми по...

15
Почему мой запрос EXISTS выполняет сканирование индекса вместо поиска индекса?

Я работаю над оптимизацией некоторых запросов. Для запроса ниже SET STATISTICS IO ON; DECLARE @OrderStartDate DATETIME2 = '27 feb 2016'; DECLARE @OrderEndDate DATETIME2 = '28 feb 2016'; SELECT o.strBxOrderNo , o.sintOrderStatusID , o.sintOrderChannelID , o.sintOrderTypeID , o.sdtmOrdCreated ,...

15
База данных «заморожена» на ALTER TABLE

Наша производственная среда просто замерла сегодня утром на некоторое время, изменяя таблицу, фактически добавляя столбец. Оскорбляющий SQL:ALTER TABLE cliente ADD COLUMN topicos character varying(20)[]; * Для входа в нашу систему требуется выбрать из той же таблицы, чтобы никто не мог войти во...

15
Как SQL Удалить, используя подзапрос

Следующий код был добавлен одним из наших разработчиков для удаления дублирующихся записей из таблицы: DELETE SubQuery FROM ( SELECT ID ,FK1 ,FK2 ,CreatedDateTime ,ROW_NUMBER() OVER(PARTITION BY FK1, FK2 ORDER BY CreatedDateTime) AS RowNumber FROM Table ) AS SubQuery WHERE RowNumber > 1 При...

15
УДАЛИТЬ строки, на которые нет ссылок в другой таблице

У меня есть две таблицы в базе данных PostgreSQL 9.3: Таблица link_replyимеет внешний ключ, which_groupуказывающий на таблицу link_group. Я хочу удалить все строки, из link_groupкоторых не существует связанных строк link_reply. Звучит достаточно просто, но я боролся с этим. Будет ли что-то простое,...

15
Хранимая процедура базы данных с «режимом предварительного просмотра»

Довольно распространенным шаблоном в приложении базы данных, с которым я работаю, является необходимость создания хранимой процедуры для отчета или утилиты, которая имеет «режим предварительного просмотра». Когда такая процедура выполняет обновления, этот параметр указывает, что результаты действия...

15
Как проверить наличие символов, отличных от Ascii

Каков наилучший способ проверить наличие в поле VARCHAR символов, отличных от Ascii? CHAR(1)через CHAR(31)и CHAR(127)через CHAR(255). Я попытался использовать PATINDEXи столкнулся со следующей проблемой. Проверка нижнего диапазона работала правильно. SELECT * FROM mbrnotes WHERE PATINDEX('%[' +...

15
Двоичный путь в настройках pgAdmin

Я установил PostgreSQL, потому что мне нужно восстановить большой .backupфайл, который я получил для загрузки на другую платформу (это 38 миллионов строк, что, по-видимому, было слишком большим для человека, чтобы экспортировать его любым другим способом). Когда я пытаюсь «восстановить» в pgAdmin...

15
Безопасно ли добавлять новый узел в кластер Cassandra во время ремонта?

Я готовлюсь к расширению существующего кластера Cassandra. У меня запланирован ремонт на повторяющейся основе. Нужно ли отключать исправления при добавлении нового узла в кластер, или я могу загрузить новые узлы, пока исправления выполняются в другом месте...

15
Удаление столбцов в PostgreSQL 9.6 и побочные эффекты для функций SQL с CTE

Если бы у меня была таблица с 3 столбцами - скажем, A, B и D - и мне пришлось бы ввести новую - скажем, C, чтобы заменить текущую позицию D. Я бы использовал следующий метод: Введите 2 новых столбца как C и D2. Скопируйте содержимое D в D2. Удалить D. Переименуйте D2 в D. Новый порядок будет A, B,...