4511
правок
Irina (обсуждение | вклад) |
Irina (обсуждение | вклад) Нет описания правки |
||
Строка 81: | Строка 81: | ||
== Применение == | == Применение == | ||
'''Миграция данных в системах хранения''' | '''Миграция данных в системах хранения''' | ||
Обычно большой сервер, хранящий данные, состоит из нескольких дисков, соединенных в сеть, называемую сетью хранения данных. Для удовлетворения высокого спроса, особенно в случае мультимедийных данных, обычно практикуется репликация объектов данных в рамках системы хранения. У дисков обычно имеются ограничения на объем хранимых данных, а также на количество клиентов, которые могут одновременно обращаться к данным с одного диска. Было разработано несколько алгоритмов аппроксимации для сопоставления известной потребности в данных с конкретной схемой расположения данных для максимально продуктивного их использования [под использованием понимается максимальное количество клиентов, которые могут быть назначены диску, содержащему нужные им данные] [4, 8, 14, 15]. Для этого они вычисляют не только количество копий каждого элемента, которые необходимо создать, но и схему расположения, определяющую точное подмножество элементов на каждом диске. Эта задача является NP-полной, однако для нее существуют схему аппроксимации с полиномиальным временем выполнения [4, 8, 14]. Если известен относительный спрос на данные, алгоритм вычисляет почти оптимальную схему. | |||
По мере изменения потребности в данных со временем системе необходимо создавать новое расположение. Для удовлетворения высокого спроса на популярные объекты необходимо динамически создавать новые копии и размещать их на разных дисках. Задача миграции данных заключается в вычислении конкретного графика для множества дисков, позволяющего преобразовать изначальную схему расположения в целевую. Миграция должна выполняться насколько возможно быстро, поскольку во время ее выполнения эффективность системы будет ниже оптимальной. | |||
'''Мгновенный обмен сообщениями и широковещательная передача''' | |||
Задачу миграции данных можно рассматривать как обобщение задач мгновенного обмена сообщениями и широковещательной передачи. Последние играют важную роль в разработке протоколов коммуникаций в сетях различных типов и были многократно исследованы (см., например, [6, 7] и ссылки в этих работах). Задача мгновенного обмена сообщениями выглядит следующим образом. Пусть имеется n человек, и у каждого человека имеется элемент сообщения («слух»), которым он или она желает поделиться со всеми остальными. Коммуникация обычно выполняется поэтапно, и на каждом этапе любой человек может связываться не более чем с одним другим человеком. Некоторые модели коммуникаций допускают полный обмен всеми слухами, известными каждому человеку, на одном этапе. Возможно наличие графа коммуникаций, ребка которого обозначают, между какими парами людей допускается непосредственная коммуникация на каждом этапе. В задаче широковещательной передачи одному человеку необходимо передать слух каждому другому человеку. Задача миграции данных обобщает эти две задачи тремя способами: (1) каждый слух необходимо передать только некоторому подмножеству людей; (2) одному человеку могут быть известны несколько слухов; (3) один и тот же слух изначально может быть известен нескольким людям. | |||
== Открытые вопросы == | |||
Задача миграции данных является NP-полной в силу редукции задачи раскраски ребер. Однако для этой задачи неизвестны доказательства неаппроксимируемости. На данный момент лучший коэффициент аппроксимации достаточно высок (6:5 + o(1)), и было бы любопытно сузить разрыв между гарантией аппроксимации и неаппроксимируемостью. | |||
Еще один открытый вопрос заключается в объединении задач размещения и миграции данных. Этот вопрос изучали Хуллер и др. [9]. Пусть даны изначальное расположение и новая модель спроса. Задача заключается в поиске серии перемещений данных, которая может быть выполнена за определенное число этапов и обеспечивает наилучшее возможное расположение для имеющейся модели спроса. Они показали, что одноэтапная миграция является NP-полной задачей, и предложили эвристический алгоритм для ее решения. Эксперименты показали, что последовательное многократное выполнение одноэтапной миграции дает высокий практический результат. В дальнейшем было бы любопытно получить нетривиальные алгоритмы аппроксимации для этой задачи. | |||
Еще одно перспективное направление будущих исследований – миграция данных в гетерогенной системе хранения. Большинство исследований миграции данных были посвящены главным образом гомогенным системам хранения и предполагали, что все диски имеют одни и те же фиксированные свойства, а все сетевые соединения – одну и ту же фиксированную пропускную способность. Однако на практике крупные системы хранения могут быть гетерогенными. Например, диски могут иметь разные свойства, поскольку добавляются со временем из-за возросшего спроса на емкость памяти. Лу и др. [13] изучали случай с различной пропускной способностью дисков, связанной с разной нагрузкой. Они использовали подход на базе теории управления для генерации адаптивных коэффициентов миграции данных, обеспечивающих минимальное снижение качества предоставления услуги. Этот алгоритм значительно уменьшает время задержки для клиентов по сравнению с предыдущими схемами. Однако теоретических границ эффективности миграции данных представлено не было. Коффман и др. [ ] изучали случай, в котором каждый диск i может одновременно обрабатывать pi передач, и предложили алгоритмы аппроксимации. В некоторых статьях [2, 12] рассматривался случай с гетерогенной длиной элементов данных (однако сама система при этом была гомогенной) т были предложены алгоритмы аппроксимации для этой задачи. | |||
== Экспериментальные результаты == | |||
Голубчик и др. [ ] провели обширное исследование эффективности алгоритмов миграции данных при различных изменениях схем доступа пользователей. Они сравнивали алгоритм 9,5-аппроксимации [ ] и несколько других эвристических алгоритмов. Некоторые из этих эвристических алгоритмов не могут предоставить константные гарантии аппроксимации, для других алгоритмов такие гарантии вообще неизвестны. Алгоритм Хуллера и др. [ ] имеет коэффициент 9,5 в наихудшем случае, однако в экспериментах количество необходимых раундов превышало нижнюю границу менее чем в 3,25 раз. | |||
Они также сформулировали проблему соответствия, в которой вычисляется сопоставление дисков в исходном расположении с дисками в целевом расположении, обеспечивающее минимальное количество изменений. Как показали их эксперименты, хорошее решение задачи соответствия может повысить эффективность алгоритмов миграции данных в 4,4 раза по сравнению с плохим решением. | |||
== Ссылка на код == | |||
http://www.cs.umd.edu/projects/smart/data-migration/ | |||
== См. также == | |||
* [[Широковещательная передача в геометрических радиосетях]] | |||
* [[Детерминированная широковещательная передача в радиосетях]] | |||
== Литература == | |||
Специальный случай задачи миграции данных изучали Андерсон и др. [ ] и Холл и др. [ ]. Они предположили, что имеется граф переносов данных, вершины которого соответствуют дискам, а ориентированные ребра – каждой обозначенной операции перемещения (создание новых копий элементов данных не допускается). Вычисление графика перемещения данных в точности соответствует задаче раскраски ребер графа переноса. Теперь можно применить алгоритмы раскраски ребер мультиграфов для расчета графика миграции, поскольку каждый класс цветов представляет сопоставление в графе, которое можно спланировать одновременно. Вычисление решения с минимальным количеством этапов является NP-полной задачей, однако для раскраски ребер разработано несколько эффективных алгоритмов аппроксимации. Задача становится сложнее при наличии ограничений на пространство диска. Холл и др. [ ] показали, что в предположении, что на каждом диске имеется один свободный элемент памяти, можно очень разработать эффективные аппроксимации с константным коэффициентом. Такие алгоритмы используют не более 4\Л/4] цветов и не более n/3 обходных вершин, либо не более цветов 6 \Л/4] – без обходных вершин. | |||
Большинство результатов задачи миграции данных получены для полудуплексной модели. Еще одна интересная модель коммуникаций – полнодуплексная модель, в которой каждый диск может на каждом этапе выступать в качестве отправителя и получателя одного элемента. Существует алгоритм (4 + o(1))-аппроксимации для полнодуплексной модели [10]. | |||
1. Anderson, E., Hall, J., Hartline, J., Hobbes, M., Karlin, A., Saia, J., Swaminathan, R., Wilkes, J.: An experimental study of data migration algorithms. In: Workshop on Algorithm Engineering (2001) | |||
2. Coffman, E., Garey, M., Jr., Johnson, D., Lapaugh, A.: Scheduling file transfers. SIAM J. Comput. 14(3), 744-780 (1985) | |||
3. Golubchik, L., Khuller, S., Kim, Y., Shargorodskaya, S., Wan., Y.: Data migration on parallel disks. In: 12th Annual European Symposium on Algorithms (ESA) (2004) | |||
4. Golubchik, L., Khanna, S., Khuller, S.,Thurimella, R., Zhu, A.: Approximation algorithms for data placement on parallel disks. In: Symposium on Discrete Algorithms, pp. 223-232. Society for Industrial and Applied Mathematics, Philadelphia (2000) | |||
5. Hall, J., Hartline, J., Karlin, A., Saia, J., Wilkes, J.: On algorithms for efficient data migration. In: SODA, pp. 620-629. Society for Industrial and Applied Mathematics, Philadelphia (2001) | |||
6. Hedetniemi, S.M., Hedetniemi, S.T., Liestman, A.: A survey of gossiping and broadcasting in communication networks. Networks 18,129-134 (1988) | |||
7. Hromkovic, J., Klasing, R., Monien, B., Peine, R.: Dissemination of information in interconnection networks (broadcasting and gossiping). In: Du, D.Z., Hsu, F. (eds.) Combinatorial Network Theory, pp. 125-212. Kluwer Academic Publishers, Dordrecht (1996) | |||
8. Kashyap, S., Khuller, S.: Algorithms for non-uniform size data placement on parallel disks. In: Conference on FST&TCS Conference. LNCS, vol. 2914, pp. 265-276. Springer, Heidelberg (2003) | |||
9. Kashyap, S., Khuller, S., Wan, Y-C., Golubchik, L.: Fast reconfiguration of data placement in parallel disks. In: Workshop on Algorithm Engineering and Experiments (2006) | |||
10. Khuller, S., Kim, Y., Malekian, A.: Improved algorithms for data migration. In: 9th International Workshop on Approximation Algorithms for Combinatorial Optimization Problems (2006) | |||
11. Khuller, S., Kim, Y., Wan, Y.-C.: Algorithms for data migration with cloning. SIAM J. Comput. 33(2), 448-461 (2004) | |||
12. Yoo-Ah Kim. Data migration to minimize the average completion time. J. Algorithms 55,42-57 (2005) | |||
13. Lu, C., Alvarez, G.A., Wilkes, J.: Aqueduct:online data migration with performance guarantees. In: Proceedings of the Conference on File and Storage Technologies (2002) | |||
14. Shachnai, H., Tamir, T.: Polynomial time approximation schemes for class-constrained packing problems. J. Sched. 4(6) 313-338(2001) | |||
15. Shachnai, H., Tamir, T.: On two class-constrained versions of the multiple knapsack problem. Algorithmica 29(3), 442-467 (2001) | |||
16. Shannon, C.E.: A theorem on colouring lines of a network. J. Math. Phys. 28,148-151 (1949) | |||
17. Shmoys, D.B., Tardos, E.: An approximation algorithm for the generalized assignment problem. Math. Program. 62(3), 461^74(1993) | |||
18. Vizing,V.G.: On an estimate of the chromatic class of a p-graph (Russian). Diskret. Analiz. 3, 25-30 (1964) |
правок