Интернет журныл о промышленности в Украине

Exa проти Tera

Приставку Exa (exa - 1018) в назві нового спеціалізованого сімейства продуктів Exadata, анонсованого компаніями Oracle і HP на OracleWorld у вересні 2008 року, можна розглядати як виклик виробникам, які працюють в сегменті апаратного і програмного забезпечення для сховищ даних і систем бізнес-аналітики Приставку Exa (exa - 1018) в назві нового спеціалізованого сімейства продуктів Exadata, анонсованого компаніями Oracle і HP на OracleWorld у вересні 2008 року, можна розглядати як виклик виробникам, які працюють в сегменті апаратного і програмного забезпечення для сховищ даних і систем бізнес-аналітики.

У неологізм Exadata нескладно вловити схожість з назвою компанії Teradata (tera - це всього лише 1012), ось уже понад 20 років поставляє подібні системи. Крім того, продукт сімейства Exadata - HP Oracle Database Machine - машина баз даних - конкурує з рішеннями компаній, які недавно вступили на цей шлях, наприклад Netezza, Greenplum і Datallegro. Про особливості першого в історії Oracle апаратного продукту розповідає Марк Таунсенд, віце-президент, відповідальний за розробку нових версій Oracle Database.

Чим викликана потреба в створенні власної апаратно-програмної платформи, адже, за винятком одного епізоду, Oracle завжди підкреслювала, що є виключно софтверної компанією?

Якщо перевести на звичайну мову, то доводиться визнати - традиційні рішення для сховищ даних, що складаються з універсальних серверів і систем зберігання, одночасно і «слабкі», і «тупуватий». Їх органічна слабкість в тому, що вони не забезпечують системний баланс між потенційною продуктивністю двох співучасників процесу: серверів і систем зберігання. Відомо, що потужність серверів за законом Мура стає дедалі більше, а диски стають ширшими і дешевше, але при цьому незмінно зберігається «пляшкове горло» у вигляді систем введення / виводу. Щоб хоч якось це горло розширити і забезпечити достатню пропускну здатність, доводиться збільшувати число SAN-адаптерів і встановлювати додаткові комутатори SAN, але його природа зберігається. Ще одна слабкість в тому, що навіть дорогі дискові масиви через їхню недостатню власної обчислювальної потужності теж виявляються нездатними надати адекватну пропускну здатність для сотень встановлених в них дисків. Під впливом цих факторів реальна продуктивність дисків штучно знижується, вона стає нижчою за ту, яку вони в змозі забезпечити. Таким чином, ефективність роботи дисків обмежується інтерфейсом Fibre Channel Loop і процесорними можливостями масиву зберігання даних.

На «слабкість» накладається ще й «тупість», тобто традиційні пристрої зберігання оперують з битами і байтами, «нічого не знаючи» про те, що вони насправді зберігають, і не вміють працювати осмислено. Наприклад, маючи справу з базою даних, вони не враховують її специфіку - вони працюють з даними з бази точно так же, як з файлами, блоками. А це означає, що коли базі даних потрібні стовпці і рядки, їй у відповідь приходять блоки даних, а не результат самого запиту. Традиційні засоби зберігання не в змозі виділити конкретні стовпці і рядки, що містяться в запиті, тому, обробляючи дані від імені бази даних, вони повертають масу непотрібних даних, які не мають ніякого відношення до запиту, забиваючи баластом і без того перевантажені канали.

Потрібно було знайти альтернативний вихід з положення, що створилося, тому з метою подолання зазначених недоліків і тупості і була створена HP Oracle Database Machine, в основу якої покладено «розумне» (brainy) програмне і потужне апаратне забезпечення. Розумне ПО ділиться на два типи: СУБД Oracle 11.1 на сервері баз даних і нове ПЗ, яке базується на основі частин ядра Oracle 11.1 і розміщується на комп'ютерах осередків Exadata. Програмне забезпечення осередків добре виконує операції повного сканування (full scan), проектування (projection) і об'єднання (join) і повертає сервера бази даних не блоки даних, а результат виконання запиту або підзапиту. Коли ж сервера потрібно вибрати рядки за індексом, йому будуть передаватися блоки даних. Робота з системою зберігання йде, як правило, через ASM (Automatic Storage Manager).

З іншого боку, для того щоб забезпечити доступ до баз даних, що містить сотні терабайт даних, одного розуму недостатньо - потрібно підтримати «розумне» програмне забезпечення продуктивною (brawny) обладнанням, здатним прискорити виконання SQL-запитів і операцій введення / виводу шляхом застосування «грубої сили ». Симбіоз brainy і brawny - ключ до параметрів продуктивності, які демонструє сімейство продуктів Exadata.

Які якості Exadata ви вважає принципово новими?

Основних якостей, що відрізняють сімейство продуктів Exadata від відомих систем, три. Перше - інтелектуальна система зберігання, що дозволяє переміщати істотно менше даних при виконанні запитів. Це призводить до меншого завантаження каналу між серверами бази даних і пристроями зберігання. Друге - Exadata використовує поєднання технології Infiniband з прямим доступом в пам'ять (Remote Direct Memory Access). Можливість такого поєднання забезпечується за рахунок пропускної здатності каналів, в п'ять і більше разів вищою, ніж у звичайного каналу типу Fibre Channel. І третя відмінність - оригінальна конструкція системи комутації (I / O Fabric), заснована на паралельній архітектурі і володіє надійністю і здатністю до масштабування. Можна сказати, що ми підвищили коефіцієнт корисної дії системи роботи з даними, оптимізувавши звернення до дисків - вони організовані так, щоб у міру можливості зменшити час очікування, марно витрачається при довільному доступі, і наблизити процес читання до послідовного.

Що, на вашу думку, є найістотнішим в конструкції, що забезпечує Exadata ці якості?

Я вважаю, що від відомих пристроїв HP Oracle Database Machine відрізняє, перш за все, поєднання модульної конструкції з системною організацією.

Машина баз даних складається з кластера СУБД (Database GRID) і розумної системи зберігання Storage GRID, Storage Grid зібрана з вже готових до застосування осередків, кожна з яких складається з 12 дисків, сервера HP Proliant DL180 G5 і програмного забезпечення Exadata Storage Server. Диски приєднані до «розумному» контролеру з 512 Kбайт кеш-пам'яті, 8 Гбайт оперативної пам'яті і подвійному інтерфейсу InfiniBand. Існує два варіанти осередку Exadata, один на дисках SAS, інший на дисках SATA. Для оптимізації зберігання застосовуються технології компресії, що збільшують максимальний обсяг в два-три рази. Інтерфейс InfiniBand забезпечує взаємодію з вузлами кластера Real Application Cluster (RAC). Архітектура HP Oracle Database Machine підтримує будь-який рівень продуктивності. Оскільки кожна з осередків автономна, для збільшення обсягу можна просто додавати додаткові осередки Exadata. Істотно, що при такому розширенні ємність і продуктивність зростають лінійно.

Окремі осередки об'єднуються в єдину систему за допомогою HP Oracle Database Machine. Фізично це стандартна стійка 42U, де 14 серверів зберігання Exadata доповнюються вісьмома HP Proliant DL360 G5 Oracle Database 11g, на яких працює база даних, крім того, є вся необхідна інфраструктура InfiniBand для зв'язку між серверами бази даних і системою зберігання Exadata. Параметри стійки Database Machine залежать від типу дисків - якщо це диски SAS, то обсяг даних доходить до 21 Тбайт, а швидкість операцій введення / виводу до 14 Гбайт / с, якщо ж SATA, то - 46 Тбайт і 10,5 Гбайт / с. Крім цього, кожна стійка Database Machine є будівельним блоком для створення сховищ. Кількість стійок може нарощуватися, а між собою вони зв'язуються за допомогою InfiniBand. Продуктивність Database Machine істотно підвищується за рахунок обробки даних в режимі Smart Scan.

Як співвідносяться можливості Exadata з продуктами прямих конкурентів?

Не вдаючись в порівняння окремих показників, я хочу зупинитися на самому істотному - на спадкоємності. У нас гідні конкуренти, компанія Teradata на ринку вже давно, і свого часу її вирішення випередили загальний рівень розвитку індустрії на роки, інші вийшли на ринок зовсім недавно, але їх рішення втілили в собі досягнення останніх років, наприклад перспективну конструкцію MapReduce. Однак усіх їх об'єднує те, що їх підходи є пропрієтарними. Якщо ви захочете впровадити щось із спектру продуктів, пропонованого даними постачальниками, то вам потрібно починати все з нуля, в тому числі підготовку фахівців. А в особі сімейства продуктів Exadata ми пропонуємо методику роботи з даними, яка давно знайома тисячам фахівців. Ви отримуєте нову якість без надмірних інвестицій. Яким би не було привабливим те чи інше рішення
з технічної точки зору, не можна не брати до уваги готовність споживачів.

А за ціновими показниками?

Наше рішення не тільки дешевше унікальних систем від Teradata, але, швидше за все, воно дешевше і того, що пропонують нові учасники ринку паралельних СУБД. Що ж стосується програм, то важко припустити, що у наших покупців немає ліцензійного ПЗ від Oracle, так ось - ці ж є ліцензія на використання і на HP Oracle Database Machine

Якщо зазирнути в майбутнє, на що, на вашу думку, вплине конвергенція серверів і систем зберігання?

Саме конвергенція. Діюча парадигма передбачає зберігання даних окремо від їх обробки. У підсумку на кожному етапі неминучі витрати, плюс наявність вузького горла між етапами. Так можна було жити, поки обсяги даних були невеликі, але при виході на петабайтного обсяги ця ідеологія вже не виправдовує себе. Не меншим бар'єром стає «тупість» систем, вони як і раніше працюють не з інформацією, а з даними. Про який управлінні життєвим циклом інформації (Information Lifecycle Management) можна говорити, якщо відповідні технології «не розуміють», з чим вони працюють, і переміщують дані, керуючись загальними міркуваннями. Використання технологій типу Smart Scan і їй подібних відкриває можливість для повноцінного управління інформацією на всіх етапах її життя, що надзвичайно важливо в сучасних умовах, коли номенклатура засобів зберігання постійно розширюється і покриває діапазон від швидких накопичувачів на флеш-пам'яті до дисків на два і більше терабайт .

архітектура exadata

Апаратне середовище HP Oracle Database Machine (див. Малюнок) можна розглядати як систему, побудовану за принципом grid. Кожна осередок зберігання Exadata - це самостійний сервер, на якому зберігаються дані і працює управляє програмне забезпечення. В архітектурі HP Oracle Database Machine можна використовувати як поодинокі сервери баз даних (Single instance Database), так і кілька серверів, об'єднаних в кластер (RAC Database). Між собою сервери і осередки об'єднані інтерфейсом InfiniBand. Масив осередків Exadata, який використовується спільно декількома базами даних, називається областю (Exadata Realm). Розподіл на області забезпечує ізоляцію і, відповідно, захист кожного окремо взятого набору баз даних. Є механізми для безпечного переміщення дисків і групи осередків з однієї області в іншу. На малюнку представлена ​​одна така область.

Щоб максимально використовувати можливості системи зберігання Exadata, СУБД Oracle Database 11g була значно вдосконалена. Це перш за все стосується розподілу функцій між серверами і осередками Exadata. Сервер бази даних і Exadata Storage Server Software взаємодіють між собою по протоколу iDB (Intelligent Database), реалізованому на рівні ядра бази даних і прозоро отображающему операції з базою на операції в Exadata. Крім традиційної функції передачі блоків даних, iDB використовує архітектуру передачі функцій. Даний протокол застосовується також для передачі на виконання SQL-операцій нижчестоящим осередкам Exadata і повернення результатів виконання запиту ядру бази. Замість того щоб повертати блоки даних, осередки Exadata повертають тільки стовпці і рядки, відповідні SQL-запиту. Взагалі кажучи, iDB здатний безпосередньо записувати блоки даних на диск і зчитувати їх, діючи як традиційний устрій зберігання, але при необхідності проявляє свій «інтелект» і повертає сервера тільки необхідні дані, що істотно прискорює роботу і зменшує трафік.

Основні компоненти архітектури Exadata

Чим викликана потреба в створенні власної апаратно-програмної платформи, адже, за винятком одного епізоду, Oracle завжди підкреслювала, що є виключно софтверної компанією?
Які якості Exadata ви вважає принципово новими?
Що, на вашу думку, є найістотнішим в конструкції, що забезпечує Exadata ці якості?
Як співвідносяться можливості Exadata з продуктами прямих конкурентів?
А за ціновими показниками?