InnoDB: Разлика между версии

от Уикипедия, свободната енциклопедия
Изтрито е съдържание Добавено е съдържание
Shokoban (беседа | приноси)
Редакция без резюме
м Може би е по-добре да се вижда, пък макар и непълно.
Ред 17: Ред 17:


InnoDB става продукт на [[Oracle Corporation]] след изкупуването на [[Innobase|Innobase Oy]] през октомври 2005 г. Софтуерът е двойно лицензиран. Разпространява се под [[GNU General Public License]], но може да се включва и в [[лицензен софтуер]].
InnoDB става продукт на [[Oracle Corporation]] след изкупуването на [[Innobase|Innobase Oy]] през октомври 2005 г. Софтуерът е двойно лицензиран. Разпространява се под [[GNU General Public License]], но може да се включва и в [[лицензен софтуер]].

<!--
==Сравнение с MyISAM==
== Сравнение с MyISAM ==

[[MyISAM]] е стандартната алтернатива на InnoDB. Някои от качествата, които ги отличават са следните:
[[MyISAM]] е стандартната алтернатива на InnoDB. Някои от качествата, които ги отличават са следните:


1. InnoDB се възстановява от срив или друго неочаквано прекъсване като преиграва записаната исотрия в лог-файловете. MyISAM трябва изцяло да сканира и да поправи индексите или таблиците, които са били обновени, но не записани на диска. Тъй като достъпът за запис на InnoDB е с фиксирано време, а времето за запис на MyISAM расте с увеличаване на размера на файловете, InnoDB осигурява по-висока достъпност и надеждност при увеличаване на обема на базата данни.
* InnoDB се възстановява от срив или друго неочаквано прекъсване като преиграва записаната исотрия в лог-файловете. MyISAM трябва изцяло да сканира и да поправи индексите или таблиците, които са били обновени, но не записани на диска. Тъй като достъпът за запис на InnoDB е с фиксирано време, а времето за запис на MyISAM расте с увеличаване на размера на файловете, InnoDB осигурява по-висока достъпност и надеждност при увеличаване на обема на базата данни.
2. MyISAM разчита на операционната система за кеширането на четенето и писането към базата данни, докато InnoDB реализира тази функционалност сам в себе си. Променените страници в базата не се изпращат незабавно към операционната система за запис, което прави InnoDB значително по-бърз от MyISAM при някои ситуации.
* MyISAM разчита на операционната система за кеширането на четенето и писането към базата данни, докато InnoDB реализира тази функционалност сам в себе си. Променените страници в базата не се изпращат незабавно към операционната система за запис, което прави InnoDB значително по-бърз от MyISAM при някои ситуации.
3. InnoDB съхранява данните физически сортирани по първичен ключ, докато MyISAM ги съхранява предимно по реда, по който данните биват добавяни. Съхраняването на редовете по реда на първичните ключове се равнява на "клъстеризирания индекс" при MS SQL и на "организираните по индекс таблици" при Oracle. Когато първичния ключ е подреден така, че да съответства на повечето стандартни заявки за търсене, това води до по-добро бързодействие.
* InnoDB съхранява данните физически сортирани по първичен ключ, докато MyISAM ги съхранява предимно по реда, по който данните биват добавяни. Съхраняването на редовете по реда на първичните ключове се равнява на "клъстеризирания индекс" при MS SQL и на "организираните по индекс таблици" при Oracle. Когато първичния ключ е подреден така, че да съответства на повечето стандартни заявки за търсене, това води до по-добро бързодействие.
4. InnoDB не предлага компресия както MyISAM, така че може да се наложи повече кеширане в рам паметта и върху твърдия диск.
* InnoDB не предлага компресия както MyISAM, така че може да се наложи повече кеширане в рам паметта и върху твърдия диск.
5. При опериране в напълно ACID-съвместим режим, InnoDB трябва да прави запис на диска поне един път по време на всяка транзакция, докато може да обединява записите от многобройни конекции. При работа със стандартни твърди дискове или масиви от дискове това ограничава броя на транзакциите до около 200 на секунда.
* При опериране в напълно ACID-съвместим режим, InnoDB трябва да прави запис на диска поне един път по време на всяка транзакция, докато може да обединява записите от многобройни конекции. При работа със стандартни твърди дискове или масиви от дискове това ограничава броя на транзакциите до около 200 на секунда.
When operating in fully ACID-compliant modes, InnoDB must do a flush to disk at least once per transaction, though it will combine flushes for inserts from multiple connections. For typical hard drives or arrays, this will impose a limit of about 200 update transactions per second. Higher transaction rates with maintaining transactional integrity is achievable with InnoDB leveraging ZFS file system with Flash disks, without the need for dedicated array hardware. Other methods include disk controllers with write caching and battery backup to maintain transactional integrity. InnoDB also offers several modes which reduce this effect, naturally leading to a loss of transactional integrity. MyISAM has none of this overhead, but only because it does not support transactions.
-->


{{софтуер-мъниче}}
{{софтуер-мъниче}}

Версия от 10:28, 26 август 2010

Шаблон:Софтуер инфо

InnoDB е една от предпочитаните подсистеми на системата за управление на бази данни MySQL, включвана във всички съвременни дистрибуции на MySQL AB. Основното предимство на InnoDB пред други подсистеми от ниско ниво на MySQL е наличието съвместим с ACID механизъм за транзакции.

InnoDB става продукт на Oracle Corporation след изкупуването на Innobase Oy през октомври 2005 г. Софтуерът е двойно лицензиран. Разпространява се под GNU General Public License, но може да се включва и в лицензен софтуер.

Сравнение с MyISAM

MyISAM е стандартната алтернатива на InnoDB. Някои от качествата, които ги отличават са следните:

  • InnoDB се възстановява от срив или друго неочаквано прекъсване като преиграва записаната исотрия в лог-файловете. MyISAM трябва изцяло да сканира и да поправи индексите или таблиците, които са били обновени, но не записани на диска. Тъй като достъпът за запис на InnoDB е с фиксирано време, а времето за запис на MyISAM расте с увеличаване на размера на файловете, InnoDB осигурява по-висока достъпност и надеждност при увеличаване на обема на базата данни.
  • MyISAM разчита на операционната система за кеширането на четенето и писането към базата данни, докато InnoDB реализира тази функционалност сам в себе си. Променените страници в базата не се изпращат незабавно към операционната система за запис, което прави InnoDB значително по-бърз от MyISAM при някои ситуации.
  • InnoDB съхранява данните физически сортирани по първичен ключ, докато MyISAM ги съхранява предимно по реда, по който данните биват добавяни. Съхраняването на редовете по реда на първичните ключове се равнява на "клъстеризирания индекс" при MS SQL и на "организираните по индекс таблици" при Oracle. Когато първичния ключ е подреден така, че да съответства на повечето стандартни заявки за търсене, това води до по-добро бързодействие.
  • InnoDB не предлага компресия както MyISAM, така че може да се наложи повече кеширане в рам паметта и върху твърдия диск.
  • При опериране в напълно ACID-съвместим режим, InnoDB трябва да прави запис на диска поне един път по време на всяка транзакция, докато може да обединява записите от многобройни конекции. При работа със стандартни твърди дискове или масиви от дискове това ограничава броя на транзакциите до около 200 на секунда.

Шаблон:Софтуер-мъниче