По вашему запросу ничего не найдено :(
Убедитесь, что запрос написан правильно, или посмотрите другие наши статьи:
img
Apache Cassandra — это программное обеспечение распределенной базы данных с открытым исходным кодом для работы с базами данных NoSQL. Это программное обеспечение использует язык запросов Cassandra - CQL в качестве основы для связи. CQL хранит данные в таблицах, организованных в виде набора строк со столбцами, содержащими пары ключ-значение. Таблицы CQL сгруппированы в контейнеры данных, которые в Cassandra называются пространствами ключей (keyspace). Данные, хранящиеся в одном пространстве ключей, не связаны с другими данными в кластере. Таким образом, вы можете иметь таблицы для разных целей в отдельных пространствах ключей в кластере, и данные не будут совпадать. В этом руководстве вы узнаете, как создать таблицу Cassandra для различных целей, а также как изменять, удалять или очищать таблицы с помощью оболочки Cassandra. Выбор пространства ключей для таблицы Cassandra Прежде чем вы начнете добавлять таблицу, вам нужно определить пространство ключей, в котором вы хотите создать свою таблицу. Есть два варианта сделать это. Вариант 1: команда USE Запустите команду USE, чтобы выбрать пространство клавиш, к которому будут применяться все ваши команды. Для этого в оболочке cqlsh введите: USE keyspace_name; Затем вы можете начать добавлять таблицы. Вариант 2. Укажите имя пространства ключей в запросе Второй вариант — указать имя пространства ключей в запросе на создание таблицы. Первая часть команды перед именами столбцов и параметрами выглядит так: CREATE TABLE keyspace_name.table_name Таким образом, вы сразу же создаете таблицу в заданном пространстве ключей. Базовый синтаксис для создания таблиц Cassandra Создание таблиц с помощью CQL похоже на SQL-запросы. В этом разделе мы покажем вам основной синтаксис для создания таблиц в Cassandra. Основной синтаксис для создания таблицы выглядит следующим образом: CREATE TABLE tableName ( columnName1 dataType, columnName2 dataType, columnName2 datatype PRIMARY KEY (columnName) ); При желании вы можете определить дополнительные свойства и значения таблицы, используя WITH: WITH propertyName=propertyValue; Например, используйте его, чтобы определить, как хранить данные на диске или использовать ли сжатие. Типы первичных ключей Cassandra Каждая таблица в Cassandra должна иметь первичный ключ, что делает строку уникальной. С первичными ключами вы определяете, какой узел хранит данные и как он их разделяет. Существует несколько типов первичных ключей: Простой первичный ключ. Содержит только одно имя столбца в качестве ключа секции, чтобы определить, какие узлы будут хранить данные. Составной первичный ключ. Использует один ключ разделения и несколько столбцов кластеризации, чтобы определить, где хранить данные и как их сортировать в разделе. Составной ключ раздела. В этом случае есть несколько столбцов, которые определяют, где хранить данные. Таким образом, вы можете разбить данные на более мелкие части, чтобы распределить их по нескольким разделам, чтобы избежать горячих точек. Как создать таблицу Cassandra В следующих разделах объясняется, как создавать таблицы с различными типами первичных ключей. Сначала выберите пространство ключей, в котором вы хотите создать таблицу. В нашем случае: USE businesinfo; Каждая таблица содержит столбцы и тип данных Cassandra для каждой записи. Создать таблицу с простым первичным ключом Первый пример — это базовая таблица с поставщиками. Идентификатор уникален для каждого поставщика и будет служить первичным ключом. CQL-запрос выглядит следующим образом: CREATE TABLE suppliers ( supp_id int PRIMARY KEY, supp_city text, supp_email text, supp_fee int, supp_name text, supp_phone int ); Этот запрос создал таблицу с именем supplier с supp_id в качестве первичного ключа для таблицы. Когда вы используете простой первичный ключ с именем столбца в качестве ключа раздела, вы можете поместить его либо в начало запроса (рядом со столбцом, который будет служить первичным ключом), либо в конец, а затем указать имя столбца: CREATE TABLE suppliers ( supp_id int, supp_city text, supp_email text, supp_fee int, supp_name text, supp_phone int PRIMARY KEY(supp_id) ); Чтобы увидеть, находится ли таблица в пространстве ключей, введите: DESCRIBE TABLES; В выводе перечислены все таблицы в этом пространстве ключей, а также та, которую вы создали. Чтобы отобразить содержимое таблиц, введите: SELECT * FROM suppliers; Вывод показывает все столбцы, определенные при создании таблицы. Другой способ просмотреть сведения о таблице — использовать DESCRIBE и указать имя таблицы: DESCRIBE suppliers; В выходных данных отображаются столбцы и настройки по умолчанию для таблицы. Создать таблицу с составным первичным ключом Чтобы запросить и получить результаты, отсортированные в определенном порядке, создайте таблицу с составным первичным ключом. Например, создайте таблицу для поставщиков и всех продуктов, которые они предлагают. Поскольку продукты могут не быть уникальными для каждого поставщика, необходимо добавить один или несколько столбцов кластеризации в первичный ключ, чтобы сделать его уникальным. Схема таблицы выглядит так: CREATE TABLE suppliers_by_product ( supp_product text, supp_id int, supp_product_quantity text, PRIMARY KEY(supp_product, supp_id) ); В этом случае мы использовали supp_product и supp_id для создания уникального составного ключа. Здесь первая запись в скобках supp_product — это ключ раздела. Он определяет, где хранить данные, то есть как система разделяет данные. Следующая запись — столбец кластеризации, определяющий, как Cassandra сортирует данные, в нашем случае — по supp_id. Изображение выше показывает, что таблица была успешно создана. Чтобы проверить детали таблицы, запустите запрос DESCRIBE TABLE для новой таблицы: DESCRIBE TABLE suppliers_by_product; Настройки по умолчанию для порядка кластеризации — по возрастанию (ASC). Вы можете перейти на нисходящий (DESC), добавив следующий оператор после первичного ключа: WITH CLUSTERING ORDER BY (supp_id DESC); Мы указали один столбец кластеризации после ключа раздела. Если вам нужно отсортировать данные с использованием двух столбцов, добавьте еще один столбец в скобки первичного ключа. Создание таблиц с использованием составного ключа раздела Создание таблицы с составным ключом раздела полезно, когда на одном узле хранится большой объем данных, и вы хотите разделить нагрузку на несколько узлов. В этом случае определите первичный ключ с ключом секции, состоящим из нескольких столбцов. Вам нужно использовать двойные скобки. Затем добавьте столбцы кластеризации, как мы делали ранее, чтобы создать уникальный первичный ключ. CREATE TABLE suppliers_by_product_type ( supp_product_consume text, supp_product_stock text, supp_id int, supp_name text, PRIMARY KEY((supp_product_consume, supp_product_stock), supp_id) ); В приведенном выше примере мы разделили данные на две категории: расходные материалы поставщика и продукты, запасаемые на складе, и распределили данные с помощью составного ключа раздела. Примечание. При таком разделении каждая категория продуктов хранится на отдельном узле, а не в одном разделе. Если вместо этого вы используете составной первичный ключ с простым ключом раздела и несколькими столбцами кластеризации, то один узел будет обрабатывать все данные, отсортированные по нескольким столбцам. Удалить таблицу в Cassandra Чтобы удалить таблицу в Cassandra, используйте оператор DROP TABLE. Чтобы выбрать таблицу, которую вы хотите удалить, введите: DESCRIBE TABLES; Найдите таблицу, которую хотите удалить. Используйте имя таблицы, чтобы удалить ее: DROP TABLE suppliers_by_product_type; Запустите запрос DESCRIBE TABLES еще раз, чтобы убедиться, что вы успешно удалили таблицу. Изменить таблицу в Cassandra Cassandra CQL позволяет добавлять или удалять столбцы из таблицы. Используйте команду ALTER TABLE, чтобы внести изменения в таблицу. Добавить столбец в таблицу Перед добавлением столбца в таблицу рекомендуется просмотреть содержимое таблицы, чтобы убедиться, что имя столбца еще не существует. После проверки используйте запрос ALTER TABLE в этом формате, чтобы добавить столбец: ALTER TABLE suppliers_by_product ADD supp_name text; Снова используйте DESCRIBE TABLE, чтобы убедиться, что столбец появился в списке. Удалить столбец из таблицы Подобно добавлению столбца, вы можете удалить столбец из таблицы. Найдите столбец, который вы хотите удалить, с помощью запроса DESCRIBE TABLES. Затем введите: ALTER TABLE suppliers_by_product DROP supp_product_quantity; Примечание. Не указывайте тип данных для столбца, если вы хотите удалить его из таблицы. Вы получите ошибку “SyntaxException: line 1:48 mismatched input ‘text’ expecting EOF (ALTER TABLE suppliers_by_product DROP supp_name [text]…)” Очистить таблицу в Cassandra Если вы не хотите удалять всю таблицу, но вам нужно удалить все строки, используйте команду TRUNCATE. Например, чтобы удалить все строки из таблицы поставщиков, введите: TRUNCATE suppliers; Чтобы убедиться, что в вашей таблице больше нет строк, используйте оператор SELECT. После очистки таблицы изменения становятся постоянными, поэтому будьте осторожны при использовании этого запроса. Итоги В этом руководстве показано, как создавать таблицы в Cassandra для различных целей с использованием простых и составных первичных ключей. Примеры также включали использование составного ключа раздела для распределения данных по узлам. Мы также рассмотрели, как вы можете удалять, изменять и очищать таблицы в Cassandra. Убедитесь, что вы удаляете или вносите изменения в правильные таблицы, чтобы избежать потенциальных проблем.
img
Поговорим про голосовой трафик в классических корпоративных сетях, а именно про его сегрегацию от обычного дата трафика и про включение телефонов в саму КСПД. Обычно, телефоны находятся на столе рядом с компьютером на рабочем стол, подключаются такой же витой парой (UTP), что и компьютер, и тоже используют протокол Ethernet. Для подключения телефона к коммутатору существует две опции – подключение оборудования к свитчу «параллельно», используя два кабеля или же подключив телефон и компьютер «последовательно»: Первый «параллельный» сценарий заработает, но есть несколько больших недостатков – дополнительный кабель и занятый порт на коммутаторе. По этой причине в данный момент большинство IP – телефонов, включая Cisco, имеют маленький коммутатор на 3 порта внутри IP – телефона: Первый порт подключается к коммутатору; Второй порт подключается к компьютеру; Внутренний порт подключает сам телефон; Теперь поговорим о вопросе разделения голосового трафика от любого другого – и мы можем выполнить данную задачу с помощью голосового VLANа. Голосовой VLAN также иногда обозначается как AUX VLAN Посмотрите на схему ниже – это то, как будет выглядеть наше подключение – все компьютеры и обычный трафик будут находиться в VLAN 10, а голосовой трафик мы поместим в VLAN 11. Как это все работает? Между коммутатором и телефоном у нас есть так называемый "транк". Порт на телефоне, который подключается к компьютеру, является портом доступа. Телефона передает весь трафик с компьютера на коммутатор без каких - либо меток, непомеченным. Трафик с самого телефона всегда будет помечаться, и в транке будут разрешены только два вышеупомянутых VLANа. Настройка Если вы уже знакомы с настройкой VLANов, то создание голосового VLANа не составит для вас вообще никакого труда. Давайте настроим порт на коммутаторе, где мы будем использовать VLANы 10 и 11. Сначала мы создаем данные VLANы: MERION-SW1(config)#vlan 10 MERION-SW1(config-vlan)#name DATA MERION-SW1(config-vlan)#exit MERION-SW1(config)#vlan 11 MERION-SW1(config-vlan)#name VOICE MERION-SW1(config-vlan)#exit Теперь настроим интерфейс: MERION-SW1(config)#interface GigabitEthernet 0/1 MERION-SW1(config-if)#switchport mode access MERION-SW1(config-if)#switchport access vlan 10 MERION-SW1(config-if)#switchport voice vlan 11 MERION-SW1(config-if)#exit Мы переключили данный порт в режим доступа и настраиваем его для VLAN 10. Команда switchport voice vlan сообщает коммутатору, чтобы он использовал VLAN 11 как голосовой VLAN. Для того, чтобы телефон понял, какой VLAN нужно использовать, используются два протокола – Cisco Discovery Protocol (CDP) для телефонов Cisco и Link Layer Discovery Protocol (LLDP) для телефонов от других вендоров Проверка работоспособности Для проверки корректности настройки, мы будем использовать команду show interfaces MERION-SW1#show interfaces GigabitEthernet 0/1 switchport Name: Gi0/1 Switchport: Enabled Administrative Mode: static access Operational Mode: static access Administrative Trunking Encapsulation: negotiate Operational Trunking Encapsulation: native Negotiation of Trunking: Off Access Mode VLAN: 10 (DATA) Trunking Native Mode VLAN: 1 (default) Administrative Native VLAN tagging: enabled Voice VLAN: 11 (VOICE) Administrative private-vlan host-association: none Administrative private-vlan mapping: none Administrative private-vlan trunk native VLAN: none Administrative private-vlan trunk Native VLAN tagging: enabled Administrative private-vlan trunk encapsulation: dot1q Administrative private-vlan trunk normal VLANs: none Administrative private-vlan trunk associations: none Administrative private-vlan trunk mappings: none Operational private-vlan: none Trunking VLANs Enabled: ALL Pruning VLANs Enabled: 2-1001 Capture Mode Disabled Capture VLANs Allowed: ALL Protected: false Unknown unicast blocked: disabled Unknown multicast blocked: disabled Appliance trust: none Как видно из вывода выше, VLANы настроились корректно. И теперь посмотрим на статус транка. Вывод скажет нам, что порт не является транком, он покажет какие VLANы в нем используются (то есть, которые мы настроили). Несмотря на то, что он показан как нетранковый, в реальности он все - таки является транком. MERION-SW1#show interfaces GigabitEthernet 0/1 trunk Port Mode Encapsulation Status Native vlan Gi0/1 off negotiate not-trunking 1 Port Vlans allowed on trunk Gi0/1 10-11 Port Vlans allowed and active in management domain Gi0/1 10-11 Port Vlans in spanning tree forwarding state and not pruned Gi0/1 10-11 На этом настройка завершена – для остальных рабочих станций и телефонов данный шаг нужно выполнить точно также, но на других портах коммутатора. Голосовой трафик будет идти в приоритете перед остальным трафиком и это скажется в лучшую сторону на качестве связи.
img
Active Directory, который является службой каталогов играет такую важную роль в структуре ИТ-инфраструктуры большинства организаций. Служба каталогов - это система программного обеспечения, которая хранит, организует и предоставляет доступ к информации в каталоге операционной системы компьютера. В разработке программного обеспечения каталог представляет собой карту между именами и значениями. Это позволяет искать именованные значения, аналогично словарю. Чаще всего используется для представления персонала, материальных или сетевых ресурсов. Коротко говоря: AD - это база данных служб каталогов, а LDAP - один из протоколов, которые вы можете использовать для общения с ней. LDAP - это протокол, а Active Directory - это сервер. Что такое Active Directory? Active Directory - это реализация служб каталогов, которая предоставляет все виды функций, таких как аутентификация, управление группами и пользователями, администрирование политик и многое другое. Active Directory служит единым хранилищем данных для быстрого доступа к данным для всех пользователей и контролирует доступ для пользователей на основе политики безопасности каталога. Active Directory (AD) поддерживает как Kerberos, так и LDAP - Microsoft AD на сегодняшний день является наиболее распространенной системой служб каталогов, используемой сегодня. AD обеспечивает Single-SignOn (SSO) и хорошо работает в офисе и через VPN. AD и Kerberos не являются кроссплатформенными, что является одной из причин, по которой компании внедряют программное обеспечение для управления доступом для управления входами с разных устройств и платформ в одном месте. AD поддерживает LDAP, что означает, что он все еще может быть частью вашей общей схемы управления доступом. Active Directory - это только один пример службы каталогов, которая поддерживает LDAP. Также есть и другие варианты: служба каталогов Red Hat, OpenLDAP, сервер каталогов Apache и другие. А еще Active Directory можено интегрировать с Asterisk Что такое LDAP? LDAP (Lightweight Directory Access Protocol) - это открытый и кроссплатформенный протокол, используемый для аутентификации служб каталогов. LDAP позволяет приложениям взаимодействовать с другими серверами служб каталогов. Это важно, потому что службы каталогов хранят и передают важную конфиденциальную информацию, связанную с пользователями, паролями и учетными записями компьютеров. Как Active Directory и LDAP работают вместе? Active Directory поддерживает LDAP, что означает, что вы можете объединить их, чтобы улучшить управление доступом. Фактически, многие различные службы каталогов и решения для управления доступом могут понимать LDAP, что делает его широко используемым в средах без Active Directory. Что такое аутентификация LDAP? В LDAP v3 есть два варианта аутентификации LDAP - простой и SASL (Simple Authentication and Security Layer). Простая аутентификация допускает три возможных механизма аутентификации: Анонимная аутентификация: предоставляет клиенту анонимный статус для LDAP. Аутентификация без аутентификации: только для целей регистрации, не должна предоставлять доступ клиенту. Аутентификация по имени или паролю: Предоставляет доступ к серверу на основе предоставленных учетных данных - простая аутентификация пользователя или пароля не является безопасной и не подходит для аутентификации без защиты конфиденциальности. Аутентификация SASL связывает сервер LDAP с другим механизмом аутентификации, таким как Kerberos. Сервер LDAP использует протокол LDAP для отправки сообщения LDAP другой службе авторизации. Это инициирует серию ответных сообщений запроса, которые приводят либо к успешной аутентификации, либо к неудачной аутентификации. Важно отметить, что по умолчанию LDAP передает все эти сообщения в виде открытого текста, поэтому любой человек, имеющий сетевой анализатор, может читать пакеты. Вам нужно добавить шифрование TLS или подобное, чтобы сохранить ваши имена пользователей и пароли в безопасности. Что такое запрос LDAP? Запрос LDAP - это команда, которая запрашивает у службы каталогов некоторую информацию. Например, если вы хотите увидеть, в какие группы входит конкретный пользователь, отправьте запрос, который выглядит следующим образом: (&(objectClass=user)(sAMAccountName=yourUserName) (memberof=CN=YourGroup,OU=Users,DC=YourDomain,DC=com)) Синтаксис не очень простой, но в официальном вики можно найти много примеров.
ЛЕТНИЕ СКИДКИ
40%
50%
60%
До конца акции: 30 дней 24 : 59 : 59