Национальный цифровой ресурс Руконт - межотраслевая электронная библиотека (ЭБС) на базе технологии Контекстум (всего произведений: 634840)
Контекстум
Руконтекст антиплагиат система

Cassandra. Полное руководство. Распределенные данные в масштабе веба (4000,00 руб.)

0   0
Первый авторХьюитт
АвторыКарпентер Дж.
ИздательствоМ.: ДМК Пресс
Страниц402
ID794515
АннотацияИз этой книги вы узнаете, как система управления базами данных Cassandra справляется с обработкой сотен терабайтов данных, работая в нескольких ЦОДах и сохраняя высокую доступность. Во втором издании, дополненном и охватывающем версию Cassandra 3.0, вы найдете технические детали и практические примеры, которые помогут запустить эту систему в боевых условиях. Авторы демонстрируют достоинства нереляционного дизайна Cassandra, уделяя особое внимание моделированию данных. Издание предназначено для разработчиков, администраторов баз данных и архитекторов, работающих с «большими данными» и стремящихся решить проблему масштабирования.
ISBN978-5-97060-453-3
УДК004.73:004.65Apache Cassandra
ББК32.972.134
Хьюитт, Э. Cassandra. Полное руководство. Распределенные данные в масштабе веба / Дж. Карпентер; Э. Хьюитт .— 2-е изд. — Москва : ДМК Пресс, 2017 .— 402 с. — ISBN 978-5-97060-453-3 .— URL: https://rucont.ru/efd/794515 (дата обращения: 26.04.2024)

Предпросмотр (выдержки из произведения)

Cassandra._Полное_руководство._Распределенные_данные_в_масштабе_веба.pdf
Стр.5
Стр.7
Стр.8
Стр.9
Стр.10
Стр.11
Стр.12
Стр.13
Стр.14
Cassandra._Полное_руководство._Распределенные_данные_в_масштабе_веба.pdf
УДК 004.73:004.65Apache Cassandra ББК 32.972.134 К26 К26 Cassandra. Полное руководство. 2-е изд. / пер. с англ. А. А. Слинкина. – М.: ДМК Пресс, 2017. – 400 с.: ил. Карпентер Д., Хьюитт Э. ISBN 978-5-97060-453-3 Из этой книги вы узнаете, как система управления базами данных Cassandra справляется с обработкой сотен терабайтов данных, работая в нескольких ЦОДах и сохраняя высокую доступность. Во втором издании, дополненном и охватывающем версию Cassandra 3.0, вы найдете технические детали и практические примеры, которые помогут запустить эту систему в боевых условиях. Авторы демонстрируют достоинства нереляционного дизайна Cassandra, уделяя особое внимание моделированию данных. Издание предназначено для разработчиков, администраторов баз данных и архитекторов, работающих с «большими данными» и стремящихся решить проблему масштабирования. УДК 004.73:004.65Apache Cassandra ББК 32.972.134 Authorized Russian translation of the English edition of Cassandra: The Definitive Guide, 2nd Edition. This translation is published and sold by permission of O’Reilly Media, Inc., which owns or controls all rights to publish and sell the same.’ Все права защищены. Любая часть этой книги не может быть воспроизведена в какой бы то ни было форме и какими бы то ни было средствами без письменного разрешения владельцев авторских прав. Материал, изложенный в данной книге, многократно проверен. Но поскольку вероятность технических ошибок все равно существует, издательство не может гарантировать абсолютную точность и правильность приводимых сведений. В связи с этим издательство не несет ответственности за возможные ошибки, связанные с использованием книги. ISBN 978-1-491-93366-4 (анг.) ISBN 978-5-97060-453-3 (рус.) © 2016 Jeff Carpenter, Eben Hewitt © Оформление, издание, перевод, ДМК Пресс, 2017
Стр.5
Содержание Предисловие..................................................... 14 Предисловие..................................................... 16 Вступление. ...................................................... 18 Глава.1..За.пределами.реляционных.баз.данных...... 25 Что не так с реляционными базами данных? .................................................. 25 Краткий обзор реляционных баз данных ......................................................... 30 РСУБД: великие и не очень ............................................................................. 31 Масштаб веба .............................................................................................................. 39 Восхождение NoSQL ............................................................................................... 40 Резюме .......................................................................................................................... 42 Глава.2..Введение.в.Cassandra.............................. 44 Краткая презентация Cassandra ........................................................................... 44 Cassandra в 40 словах .......................................................................................... 44 Распределенная и децентрализованная ....................................................... 45 Эластичная масштабируемость ...................................................................... 46 Высокая доступность и отказоустойчивость ............................................. 47 Настраиваемая согласованность .................................................................... 48 Теорема CAP Брюера .......................................................................................... 51 Строковая база ...................................................................................................... 56 Высокая производительность ......................................................................... 58 Как появилась Cassandra? ...................................................................................... 58 История версий .................................................................................................... 60 Подходит ли Cassandra для моего проекта? .................................................... 67 Крупное развертывание ..................................................................................... 67 Много операций записи, статистика, анализ ............................................. 67 Территориальная разнесенность .................................................................... 68 Быстро эволюционирующие приложения .................................................. 68 Резюме .......................................................................................................................... 70 Глава.3..Установка.Cassandra................................ 71 Установка из дистрибутива Apache .................................................................... 71
Стр.7
Содержание  7 Распаковка дистрибутива ................................................................................. 71 Что внутри? ........................................................................................................... 72 Сборка из исходного кода ...................................................................................... 73 Дополнительные цели сборки ......................................................................... 75 ОС Windows ........................................................................................................... 76 ОС Linux ................................................................................................................. 77 Запуск сервера ...................................................................................................... 77 Остановка Cassandra ........................................................................................... 79 Другие дистрибутивы Cassandra ......................................................................... 80 Запуск оболочки CQL ............................................................................................. 81 Простые команды cqlsh ........................................................................................... 82 cqlsh Help ................................................................................................................ 82 Описание окружения в cqlsh ........................................................................... 84 Создание пространства ключей и таблицы в cqlsh .................................. 84 Запись и чтение данных в cqlsh ...................................................................... 88 Резюме .......................................................................................................................... 89 Глава.4..Язык.Cassandra.Query.Language................. 90 Реляционная модель данных ................................................................................ 90 Модель данных Cassandra ...................................................................................... 91 Кластер .................................................................................................................... 95 Пространства ключей ......................................................................................... 95 Таблицы ................................................................................................................... 95 Столбцы .................................................................................................................. 97 Типы данных в CQL ................................................................................................. 99 Числовые типы данных ..................................................................................... 99 Текстовые типы данных ...................................................................................100 Типы времени и идентификации .................................................................101 Прочие простые типы данных .......................................................................103 Коллекции .................................................................................................................104 Пользовательские типы ........................................................................................107 Вторичные индексы ...............................................................................................110 Резюме ........................................................................................................................112 Глава.5..Моделирование.данных..........................113 Построение концептуальной модели данных ...............................................113 Проектирование реляционной базы данных .................................................115 Различия в проектировании для РСУБД и Cassandra .........................115 Определение запросов в приложении .............................................................119
Стр.8
8  Содержание Построение логической модели данных .........................................................120 Логическая модель данных отеля ................................................................122 Логическая модель данных о бронировании ...........................................124 Построение физической модели данных ........................................................126 Физическая модель данных отеля ...............................................................127 Физическая модель данных о бронировании ..........................................128 Материализованные представления ...........................................................129 Оценка и уточнение ...............................................................................................131 Вычисление размера раздела .........................................................................132 Оценка места, занятого на диске ..................................................................133 Разбиение больших разделов ........................................................................134 Определение схемы базы данных ......................................................................135 DataStax DevCenter ..........................................................................................138 Резюме ........................................................................................................................139 Глава.6..Архитектура.Cassandra. ..........................140 Центры обработки данных и стойки ................................................................140 Сплетни и обнаружение отказов .......................................................................142 Осведомители ...........................................................................................................144 Кольца и маркеры ...................................................................................................145 Виртуальные узлы ..................................................................................................147 Разделители ..............................................................................................................147 Стратегии репликации ..........................................................................................148 Уровни согласованности ......................................................................................149 Запросы и узлы-координаторы ..........................................................................150 Таблицы в памяти, файлы SSTable и журналы фиксаций ........................151 Кэширование ............................................................................................................154 Вручение напоминаний ........................................................................................154 Облегченные транзакции и Paxos .....................................................................156 Надгробья ..................................................................................................................157 Фильтры Блума .......................................................................................................158 Уплотнение ................................................................................................................159 Антиэнтропия, исправление и деревья Меркла ...........................................160 Многоступенчатая событийно-ориентированная архитектура (SEDA) ..... 162 Диспетчеры и службы ...........................................................................................164 Демон Cassandra .................................................................................................164 Движок хранения ...............................................................................................164 Служба хранения ...............................................................................................165 Прокси хранения ................................................................................................165
Стр.9
Содержание  9 Служба обмена сообщениями .......................................................................166 Диспетчер потоков данных ............................................................................166 Сервер транспортного протокола CQL ......................................................166 Системные пространства ключей ......................................................................167 Резюме ........................................................................................................................169 Глава.7..Настройка.Cassandra..............................170 Диспетчер кластера Cassandra ............................................................................170 Создание кластера ..................................................................................................171 Узлы-распространители .......................................................................................175 Разделители ..............................................................................................................176 Разделитель Murmur3Partitioner .................................................................176 Разделитель RandomPartitioner ....................................................................176 Разделитель OrderPreservingPartitioner ....................................................176 Разделитель ByteOrderedPartitioner ...........................................................177 Осведомители ...........................................................................................................178 Простой осведомитель .....................................................................................178 Осведомитель на основе файла свойств ....................................................178 Сплетничающий осведомитель с файлом свойств .................................179 Осведомитель, догадывающийся о стойках .............................................179 Облачные осведомители .................................................................................180 Динамический осведомитель ........................................................................180 Конфигурация узлов ..............................................................................................181 Маркеры и виртуальные узлы ............................................................................181 Сетевые интерфейсы ........................................................................................182 Хранение данных ...............................................................................................183 Параметры JVM и протоколирования .......................................................185 Добавление узлов в кластер ................................................................................185 Динамическое присоединение к кольцу .........................................................187 Стратегии репликации ..........................................................................................188 Стратегия SimpleStrategy ................................................................................189 Стратегия NetworkTopologyStrategy...........................................................190 Изменение коэффициента репликации ..........................................................191 Резюме ........................................................................................................................192 Глава.8..Клиенты...............................................193 Hector, Astyanax и другие устаревшие клиенты ...........................................193 Драйвер DataStax для Java ..................................................................................194 Настройка среды разработки .........................................................................195
Стр.10
10  Содержание Кластеры и точки контакта ............................................................................195 Сеансы и пулы соединений ............................................................................197 Объекты Statement ............................................................................................199 Политики ..............................................................................................................207 Метаданные .........................................................................................................211 Отладка и мониторинг .....................................................................................215 Драйвер DataStax для Python .............................................................................217 Драйвер DataStax для Node.js .............................................................................218 Драйвер DataStax для Ruby ................................................................................219 Драйвер DataStax для C# .....................................................................................219 Драйвер DataStax для C/C++ ............................................................................220 Драйвер DataStax для PHP .................................................................................222 Резюме ........................................................................................................................222 Глава.9..Чтение.и.запись.данных..........................223 Запись .........................................................................................................................223 Уровни согласованности при записи ..........................................................224 Путь записи в Cassandra ..................................................................................226 Запись файлов на диск .....................................................................................228 Облегченные транзакции ................................................................................230 Пакеты ...................................................................................................................233 Чтение .........................................................................................................................235 Уровни согласованности при чтении ..........................................................236 Путь чтения в Cassandra ..................................................................................238 Исправление на этапе чтения ........................................................................241 Запросы по диапазону, упорядочение и фильтрация ............................241 Функции и агрегаты .........................................................................................244 Разбиение на страницы ....................................................................................249 Упреждающее выполнение .............................................................................252 Удаление .....................................................................................................................252 Резюме ........................................................................................................................254 Глава.10..Мониторинг.........................................255 Протоколирование .................................................................................................255 Динамическое наблюдение за журналом ..................................................257 Изучение журналов...........................................................................................258 Мониторинг Cassandra средствами JMX ........................................................259 Подключение к Cassandra через JConsole .................................................261 Краткий обзор MBean-объектов ...................................................................264
Стр.11
Содержание  11 MBean-объекты Cassandra ...................................................................................267 MBean-объекты, относящиеся к базе данных ..........................................270 MBean-объекты, относящиеся к сети .........................................................275 MBean-объекты, относящиеся к метрикам ...............................................276 MBean-объекты, относящиеся к потокам..................................................277 MBean-объекты, относящиеся к службам .................................................278 MBean-объекты, относящиеся к безопасности .......................................278 Мониторинг с помощью nodetool ......................................................................278 Получение информации о кластере ............................................................279 Получение статистики .....................................................................................282 Резюме ........................................................................................................................284 Глава.11..Обслуживание.....................................285 Проверка исправности ..........................................................................................285 Базовое обслуживание ..........................................................................................286 Сброс на диск ......................................................................................................286 Очистка .................................................................................................................287 Исправление ........................................................................................................288 Переиндексирование ........................................................................................293 Перемещение маркеров ...................................................................................294 Добавление узлов ....................................................................................................294 Добавление узлов в существующий центр обработки данных ..........294 Добавление центра обработки данных в кластер ...................................296 Обработка отказа узла ...........................................................................................297 Ремонт узлов .......................................................................................................298 Замена узлов ........................................................................................................299 Исключение узлов .............................................................................................300 Переход на новую версию Cassandra ................................................................303 Резервное копирование и восстановление .....................................................305 Создание снимка ................................................................................................306 Удаление снимка ................................................................................................307 Включение инкрементного резервного копирования ...........................307 Восстановление из снимка .............................................................................308 Утилиты для работы с файлами SSTable ........................................................309 Средства обслуживания .......................................................................................310 DataStax OpsCenter ...........................................................................................310 Netflix Priam .........................................................................................................313 Резюме ........................................................................................................................313
Стр.12
12  Содержание Глава.12..Настройка.производительности..............314 Управление производительностью ...................................................................314 Постановка целей ..............................................................................................314 Мониторинг производительности ...............................................................316 Анализ проблем с производительностью ..................................................317 Трассировка .........................................................................................................318 Методика настройки .........................................................................................322 Кэширование ............................................................................................................322 Кэш ключей ..........................................................................................................323 Кэш строк .............................................................................................................323 Кэш счетчиков ....................................................................................................324 Параметры, управляющие сохранением кэшей ......................................324 Таблицы в памяти ...................................................................................................325 Журналы фиксаций ................................................................................................326 Файлы SSTable .........................................................................................................328 Вручение напоминаний ........................................................................................329 Уплотнение ................................................................................................................330 Параллелизм и многопоточность ......................................................................333 Сеть и тайм-ауты .....................................................................................................335 Параметры JVM.......................................................................................................337 Память ...................................................................................................................337 Сборка мусора .....................................................................................................338 Утилита cassandra-stress ........................................................................................340 Резюме ........................................................................................................................343 Глава.13..Безопасность......................................344 Аутентификация и авторизация ........................................................................345 Аутентификация по паролю ...........................................................................345 Использование класса CassandraAuthorizer .............................................350 Ролевое управление доступом ......................................................................351 Шифрование .............................................................................................................352 SSL, TLS и сертификаты .................................................................................353 Шифрование трафика между узлами .........................................................354 Шифрование трафика между клиентами и узлами ..............................357 Безопасность на уровне JMX ..............................................................................358 Обеспечение безопасности доступа через JMX ......................................358 MBean-объекты, относящиеся к безопасности .......................................360 Резюме ........................................................................................................................360
Стр.13
Содержание  13 Глава.14..Развертывание.и.интеграция..................361 Планирование развертывания кластера .........................................................361 Оценка размера кластера ................................................................................361 Выбор экземпляров ...........................................................................................363 Хранилище ...........................................................................................................364 Сеть .........................................................................................................................365 Развертывание в облаке ........................................................................................366 Amazon Web Services .........................................................................................367 Microsoft Azure ....................................................................................................369 Google Cloud Platform ......................................................................................370 Интеграция ................................................................................................................370 Apache Lucene, SOLR и Elasticsearch ..........................................................371 Apache Hadoop ....................................................................................................371 Apache Spark ........................................................................................................372 Резюме ........................................................................................................................380 Предметный.указатель.......................................381
Стр.14

Облако ключевых слов *


* - вычисляется автоматически
Антиплагиат система на базе ИИ