Там какие-либо причины состоят в том, чтобы копировать таблицу в той же базе данных?

Что показывает маршрут, в то время как он работает по сравнению с не работой?

Что-нибудь в разоблачении журналов?

Что wireshark показывает для потока трафика?

0
задан 10 June 2010 в 10:39
4 ответа

Я не знаю специально для MySQL, но много механизмов DB (Oracle, например) могут разделить таблицы. Это смотрит немного как то, к чему Вы обращаетесь. Partitionning может помочь действиям, когда Вы знаете, что будете работать большую часть времени только с подмножеством данных.

Тем не менее будьте очень осторожны. Если не сделанный правильно, разделы могут ухудшить действия. Хороший раздел мог быть записями, архивируемыми каждый год, ключ к разделу мог быть годом записи.

0
ответ дан 5 December 2019 в 17:40

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

0
ответ дан 5 December 2019 в 17:40

По причинам производительности, да, который был бы быстрее.
На самом деле это то, как таблицы MERGE, где используется несколько лет назад.
У Вас было бы несколько таблиц как member_1, member_2... и таблица-участник, которая будет механизмом СЛИЯНИЯ.
Вы запросили бы отдельные таблицы, когда Вы знали, что данные, которые Вы ищете, были бы там: например, если member_2 сделал, чтобы участники зарегистрировали на сайт 6 месяцев или ealier, и это - поиск, который Вы хотите выполнить.
Или Вы искали бы на таблице MERGE, когда необходимо сделать, поиск на целой таблице или разделение таблицы не были тем, что было необходимо. Например, где фамилией участника является Smith.

Необходимо быть осторожными при использовании СЛИЯНИЯ, если Вы планируете использовать его для производительности, потому что, в то время как оно может помочь части времени, оно могло бы причинить боль в других случаях.

Сказав, что РАЗДЕЛЕНИЕ является более новой технологией и делает много для Вас.
Посмотрите, может ли это помочь Вам.

0
ответ дан 5 December 2019 в 17:40

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

Вы затем имели бы то, что мы могли бы назвать базовой таблицей, которая будет partinioned в 48 других таблиц, один для каждого состояния.

В зависимости от Вашего определения раздела эта базовая таблица, на ВЫБОР, "знает", какую таблицу запросить против того, чтобы иметь необходимые информационные данные в зависимости от того, какое состояние запрашивается. Это похоже на интеллектуальный интерфейс, который Вы могли бы запросить, и запрос просто перенаправляется к правильной базовой таблице, не сообщая пользователю об этой базовой таблице.

Осторожный здесь, я абсолютно не говорю о создании ПРЕДСТАВЛЕНИЙ, но разделении таблиц данных, который очень отличается.

В конце, деля использовал этот путь, должен получить лучшую производительность.

Теперь, мы сталкиваемся с 5 000 000 таблиц данных строк здесь. Это не должно повреждать производительность очень, если ИНДЕКСЫ подходят для потребностей запроса. Необходимо, возможно, искать оптимизацию ИНДЕКСОВ сначала. Впоследствии, если некоторые проблемы производительности все еще присутствуют, рассматривают разделение Вашей таблицы на основе отличительного значения.

Here's some details about partitioning database tables in SQL Server, это могло бы дать Вам некоторые указания что касается MySQL. И here's an interesting article about performance partitioning in MySQL.

0
ответ дан 5 December 2019 в 17:40

Теги

Похожие вопросы