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

36
Понимание «сканирования кучи растрового изображения» и «сканирования индекса растрового изображения»

Я попытаюсь объяснить мои недоразумения на следующем примере. Я не понимал основы из Bitmap Heap Scan Node. Рассмотрим запрос, SELECT customerid, username FROM customers WHERE customerid < 1000 AND username <'user100';план которого таков: Bitmap Heap Scan on customers (cost=25.76..61.62...

36
SQL Server: как отслеживать ход выполнения команды CREATE INDEX?

SQL Server 2014, стандартный выпуск Я читал, что процент_компонента в dm_exec_requests не работает для CREATE INDEX, и на практике, процент_компонента остается на 0. Так что это не помогает. В настоящее время я использую метод ниже, который по крайней мере показывает мне движение (что создание...

36
Как создать представление с помощью SNAPSHOT_MATERIALIZATION в SQL Server 2017?

SQL Server 2017 имеет несколько новых хранимых процедур: sp_refresh_single_snapshot_view - входной параметр для @view_name nvarchar (261), @rgCode int sp_refresh_snapshot_views - параметр ввода для @rgCode int И новые записи в sys.messages: 10149 - Невозможно создать индекс с...

35
Почему MySQL не имеет хеш-индексов на MyISAM или InnoDB?

У меня есть приложение, которое будет выбирать только на равенство, и я думаю, что я должен использовать хеш-индекс над индексом btree. К моему великому сожалению, хеш-индексы не поддерживаются в MyISAM или InnoDB. Что с...

35
Как мне изменить ОПРЕДЕЛИТЕЛЬ ВИДА в Mysql?

Когда я запускаю mysqldump, я получаю сообщение об ошибке: mysqldump: Got error: 1449: The user specified as a definer ('root'@'foobar') does not exist when using LOCK TABLES Это имеет смысл, потому что foobarэто устаревшая машина, которой больше не существует. Как мне изменить определитель всех...

35
Порядок по столбцу должен иметь индекс или нет?

Я добавил в таблицу индексы, которые используются для поиска результата. Я показываю результаты по ASC или DESC заказу. Так что этот столбец должен иметь индекс или нет? У меня есть еще 2 индекса в этой таблице. Как производительность повлияет на создание или отсутствие индекса для этого...

35
Как остановить, отключить и удалить базу данных SQL Server в процессе восстановления?

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

35
Должен ли я использовать много индексов с одним полем вместо конкретных индексов с несколькими столбцами?

Этот вопрос касается эффективности техники индексации SQL Server. Я думаю, что это известно как "пересечение индекса". Я работаю с существующим приложением SQL Server (2008), которое имеет ряд проблем с производительностью и стабильностью. Разработчики сделали несколько странных вещей с...

35
Конструкция USING в предложении JOIN может вводить барьеры оптимизации в определенных случаях?

Мне стало известно, что USINGконструкция (вместо ON) в FROMпредложении SELECTзапросов может в некоторых случаях вводить барьеры оптимизации. Я имею в виду это ключевое слово: ВЫБРАТЬ * Из ПРИСОЕДИНЯЙТЕСЬ К ИСПОЛЬЗОВАНИЮ (a_id) Просто в более сложных случаях. Контекст: этот комментарий к этому...

35
Имеет ли значение порядок столбцов в определении таблицы?

При определении таблицы полезно упорядочить столбцы в логических группах и сами группы по назначению. Логическое упорядочение столбцов в таблице передает смысл разработчику и является элементом хорошего стиля. Это понятно. Однако неясно, оказывает ли логическое упорядочение столбцов в таблице...

35
MySQL установить время UTC в качестве временной метки по умолчанию

Как установить столбец отметки времени, значением по умолчанию которого является текущее время UTC? MySQL использует UTC_TIMESTAMP()функцию для отметки времени UTC: mysql> SELECT UTC_TIMESTAMP(); +---------------------+ | UTC_TIMESTAMP() | +---------------------+ | 2012-07-01 11:36:35 |...

35
Должен ли я добавить произвольный предел длины для столбцов VARCHAR?

Согласно документации в PostgreSQL , нет никакой разницы в производительности между VARCHAR, VARCHAR(n)и TEXT. Должен ли я добавить произвольный предел длины в столбце имени или адреса ? Редактировать: не обман Будет ли поиск по индексу заметно быстрее с char против varchar, когда все значения...

35
В SQL Server, какова цель группировки хранимых процедур?

Одна из самых сложных проблем, с которыми мне приходилось сталкиваться, связана с группами хранимых процедур. Имея хранимую процедуру, usp_DoSomethingAwesomeя могу создать эту процедуру в другой группе, вызвав ее usp_DoSomethingAwesome;2. Я обнаружил это при устранении некоторых проблем с...

35
Как (и почему) TOP влияет на план выполнения?

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

35
Проблема с блокировкой при одновременном удалении / вставке в PostgreSQL

Это довольно просто, но я озадачен тем, что делает PG (v9.0). Начнем с простой таблицы: CREATE TABLE test (id INT PRIMARY KEY); и несколько строк: INSERT INTO TEST VALUES (1); INSERT INTO TEST VALUES (2); Используя мой любимый инструмент запросов JDBC (ExecuteQuery), я подключаю два сеансовых окна...

35
УДАЛИТЬ ПРОТИВ TRUNCATE

Я пытаюсь получить более глубокое понимание о различиях между DELETEи TRUNCATEкомандами. Мое понимание внутренних органов идет примерно так: DELETE-> ядро ​​базы данных находит и удаляет строку из соответствующих страниц данных и всех страниц индекса, где эта строка введена. Таким образом, чем...

35
выбирая, где два столбца находятся в наборе

Это может быть глупый вопрос, и я подозреваю, что я не могу этого сделать, но есть ли в SQL конструкция, которая позволила бы мне сделать что-то вроде следующего: SELECT whatever WHERE col1,col2 IN ((val1, val2), (val1, val2), ...) Я хочу выбрать данные, где два столбца находятся в наборе пар. Я...

35
Как узнать, как далеко находится мой запрос к PostgreSQL?

У меня есть довольно приличное представление о том, сколько строк фактически обработает мой запрос SELECT ... INTO (например, я знаю, сколько из них материализуется). Я понимаю, что Postgres не скажет мне процентную полноту, есть ли способ (скрытый глубоко в журналах, системных таблицах или иным...