it-консалтинг и аутсорсинг
что мы делаем контакты блог

ZFS – маленький паровозик, который не смог

Федор Костылев 17.08.2016

72231702JS050_Technology_Le
Джонатан Шварц

HFS+ – чудовищная файловая система. Нам понадобится пяток статей, чтобы описать только крупнейшие ее недостатки. К счастью, уже через 18 месяцев мы получим APFS – новую и со всех сторон прекрасную файловую систему, про которую мы даже немного рассказывали.

Но HFS+ уже почти двадцать лет! Неужели Apple так долго не могла понять, что пришла пора замене? Вовсе нет, просто предыдущая попытка оказалась… Не совсем удачной.

Эта статья – адаптация ZFS: The other new Apple file system that almost was—until it wasn’t

cw20v1-zfs-zs3-ba-01-2267391

С начала 2000-х компания Sun разрабатывала файловую систему ZFS, которой суждено было стать эталоном в мире себе подобных. Она принесла бы проверки целостности данных, сжатие и дедупликацию, контрольные суммы, снэпшоты и массу других, не менее полезных, функций.

Имя новой разработки не было создано аббревиацией чего-либо. “ZFS” официально никак не расшифровывается, автор проекта Джефф Бонвик (Jeff Bonwick) выбрал его, потому что “звучало круто”.

Уже в 2006 Apple начинает портировать файловую систему на Mac OS X. Не намереваясь изменять своим принципам, компания проводила перенос в обстановке абсолютной секретности. Но Джонатан Шварц (Jonathan Schwartz), тогда глава Sun, был введен в курс дела. Возможно – из юридической необходимости, возможно просто из вежливости. Уже через неделю, на WWDC, Apple анонсирует ZFS как новую файловую систему в Mac OS X, рассказывал прессе Шварц, видимо, стремясь поднять доверие к своей компании.

Но Apple никуда не торопилась. На 2007 WWDC о ZFS говорили мало, и только когда было необходимо. Да, ZFS будет в версии Mac OS X 10.5 для разработчиков, более-менее, будет доступна только для чтения и вообще “стоит снизить ожидания”.

Steve-Jobs-previews-OS-X-Leopard-Mac-Pro-WWDC-2006

К 2008 дела пошли в гору. ZFS упоминали в презентациях, раздавали на дисках для разработчиков и хвастались ей на странице нового Mac OS X Server. Ее так долго ждали и вот, казалось, она здесь, уже так близко. Наконец-то!

В 2009 вышла OS X 10.6 Snow Leopard, и только тщательно прочесав Apple.com можно было найти редкое незатертое упоминание ZFS. Версии причин произошедшего расходятся, но прежде чем мы поговорим о них, немного контекста:

Sun умирала. После провалившихся попыток партнерства с IBM и HP, Oracle подобрала устаревающую компанию без особых надежд. Процесс приобретения, продолжавшийся почти год, особенно навредил Sun, подорвав доверие к будущему компании. Несмотря на известную крепкую дружбу (о ней чуть ниже) между главой Oracle Ларри Элисоном (Larry Ellison) и Стивом Джобсом, неуверенность вокруг слияния компаний повлияла на внедрение ZFS.

21

Тем временем, Sun уже с середины 2007 находилась в постоянных судебных тяжбах с NetApp из-за ZFS и прочих подобных технологий. И хотя дело явно было возбуждено безосновательно, оно все равно представляло риск для Apple. Ведь, сделав файловую систему основной в Mac OS X, потребуется несколько лет, чтобы извлечь ее оттуда без вреда для пользователей.

Но, пожалуй, самую важную роль сыграл синдром NIH (Not Invented Here, “Сделано не у нас”). Apple всегда предпочитала создавать свои решения вместо использования уже существующих технологий, и здесь, вероятно, случилось то же самое. ZFS предназначалась для серверов, а не ноутбуков – и уж точно не для телефонов, планшетов и часов. Где-то наверху компании менеджеры могли справедливо решить, что пусть даже ZFS и работала в тестовом режиме на iPhone, лучше будет начать с нуля, чем адаптировать чужую файловую систему.

На удивление, на этом приключения ZFS еще не закончились. Главный архитектор ZFS в Apple уволился, а проект был заморожен, но на верхних уровнях еще шли переговоры о возрождении переноса файловой системы. Apple получила бы возмещение убытков и полную поддержку для интеграции ZFS. Sun, в свою очередь, получила бы доступ к Apple File Protocol (AFP, с которым, по иронии судьбы, нам придется попрощаться с приходом APFS). Но намного важнее было бы новое, основанное на ZFS, оборудование Sun для хранения данных. Оно стало бы естественным сервером и резервным хранилищем для миллионов устройств Apple по всему миру.

Мучительный и изнуряющий процесс приобретения Sun наконец-то завершился. Сделка Apple-ZFS была представлена Ларри Элисону, главе не только Oracle но, теперь, и Sun тоже. -Я вам расскажу про ведение бизнеса с моим лучшим другом Стивом Джобсом, поговаривают, сказал он тогда. Я не веду бизнеса с моим лучшим другом Стивом Джобсом.

И на этом-то все и закончилось.

larry_ellison-4e8f5c2-intro
Ларри Элисон

Сегодня ZFS используется в нескольких линейках оборудования для хранения данных, но в Apple ей так закрепиться и не удалось. Часть сообщества открытой версии ZFS, OpenZFS, поддерживают порт для Mac OS X, но с официальной поддержкой от Apple это не сравнится.

А нам остается только ждать APFS, надеяться и помнить, что для файловой системы день релиза – это только начало пути.