Работа с Couchbase SDK

{title}

SDK или Software Development Kit - это группа инструментов, которые позволяют нам иметь ряд элементов, облегчающих нашу жизнь при разработке приложений на определенной платформе, например, если мы хотим создать приложение для Android, у нас есть SDK, который включает в себя IDE, несколько эмуляторов устройств, а также классы и базовые проекты, которые нам понадобятся.
В случае таких инструментов, как Couchbase, у нас также есть SDK, которые облегчают нашу жизнь, в отличие от других, этот SDK делится на несколько частей в зависимости от языка, который мы хотим, чтобы каждый разработчик мог выбирать то, что ему интересно, по модульному принципу.
Инструменты, которые вы должны включить, - это несколько, но, пожалуй, больше всего нас интересуют модули и классы, которые позволяют нам устанавливать соединения и методы, которые дают нам возможность взаимодействовать с нашими структурами данных в Couchbase .

Поведение SDK


Первое, что мы должны понять, это то, как Couchbase SDK ведет себя в целом, это позволит нам увидеть преимущества, которые он нам предлагает, и то, как мы можем в полной мере использовать технологии, которые он нам предоставляет.
Как это работает

Когда мы инициализируем клиента с помощью API, создается постоянное соединение с кластером Couchbase, таким образом, когда происходит изменение в нем, то есть узел удаляется или добавляется, и выдается сообщение в формате JSON, которое Получено нашим клиентом. Этот подход отличает Couchbase от большинства реляционных и нереляционных систем баз данных, существующих на рынке, поскольку он избегает использования центральной точки для концентрации коммуникаций.
Следовательно, эта операция предотвращает образование узкого места в тот момент, когда существует большое количество запросов между различными клиентами, которые мы создали в наших приложениях. Это делает, например, структуру кластера Couchbase с 4 узлами, которая может обрабатывать до 1 миллиона запросов или операций в секунду, что очень впечатляет, если принять во внимание, что это число встречается только в приложениях промежуточного использования.
vBucket

Кроме того, связь между клиентом и кластером не является прямой, но используется структура, называемая vBucket, которая является виртуальным хранилищем информации, которая позволяет выполнять операции, а затем передает их в кластер без необходимости вмешательства разработчика. Поэтому независимо от того, сколько узлов будет всегда одинакового количества vBuckets, значительно снижается сложность разработки наших приложений.

Основные операции


Когда мы сталкиваемся с таким движком, как Couchbase, первое, что мы думаем как разработчики, это как сделать CRUD, и если мы запомним эти аббревиатуры, они соответствуют четырем основным действиям любого приложения: создание, чтение, обновление и удаление. Это позволяет нам полностью контролировать реестр, документ или систему значений ключей в Couchbase .
Эти операции выполняются благодаря API, предлагаемому движком, но для доступа к нему нам необходимо включить и установить SDK на поддерживаемом языке и по нашему предпочтению, поскольку с этим мы можем создавать различные экземпляры клиентов, которые позволяют нам общаться с кластерами.
Хотя Couchbase предлагает инструмент связи через консоль, он не совместим с языками программирования, прежде чем мы решим, что SDK не нужен, если у нас есть этот интерфейс.

Где взять нужный SDK?


Чтобы получить нужный языковой SDK, мы просто перейдем на официальную страницу Couchbase в разделе с открытым исходным кодом по следующей ссылке. Здесь мы предлагаем необходимую информацию в дополнение к перечислению каждого SDK .
У каждого есть раздел загрузки и документации, который даст нам первоначальное представление о том, как мы можем начать работать с каждым из них, поскольку есть несколько, которые мы можем перейти непосредственно к тому, который нас интересует. Давайте посмотрим, как выглядит список на следующем изображении:

{title}

Поддерживаемые языки


Мы знаем, что в технологическом мире существует большое количество языков программирования, поэтому никто не может стремиться поддерживать их все, однако Couchbase предлагает довольно широкий список поддержки, давайте посмотрим, что мы можем использовать:
  • Ява
  • .net
  • Node.js
  • PHP
  • питон
  • рубин
  • C / C ++
Также есть место для мобильных платформ, подобных перечисленным ниже.
  • IOS
  • Android
  • .NET
  • PhoneGap
  • Sync Gateway
Это позволяет Couchbase иметь одну из самых широких баз поддержки современных технологий, что также облегчает жизнь разработчика, поскольку мы можем, например, использовать Python SDK и iOS для создания приложений для двух платформ.

Пример установки SDK в Python


Мы покажем небольшой пример того, как выполнить установку SDK в Python, этот язык является одним из самых популярных, поэтому он служит центральным примером для этой демонстрации, но сначала мы должны выполнить эти два требования:
1 - У нас должен быть установлен сервер Couchbase, для этого мы можем обратиться к руководству по первым шагам для достижения этой цели.
2 - У нас должен быть установлен Python 2.6 или выше в нашей системе, в нашем случае у нас есть Python 2.7, как мы видим на рисунке:

{title}

$config[ads_text5] not found
Теперь, когда у нас есть требования, мы используем менеджер пакетов Python, pip для установки, для этого в нашей консоли мы пишем следующее:
 pip install couchbase 
При выполнении команды мы должны получить следующий вывод на консоль:

{title}


В конце концов, если нет сообщений об ошибках, это означает, что наша установка была правильной, в случае возникновения ошибки мы должны обратиться к документации нашего SDK, чтобы решить эту проблему.
Операции CRUD

После того, как процесс установки одного из доступных SDK продемонстрирован, пришло время посмотреть, как выполнить 4 базовых действия, которые мы упомянули выше, для этих примеров мы будем использовать несколько языков, поэтому рекомендуется просто адаптироваться к соответствующему синтаксису используемого нами., Цель состоит в том, чтобы увидеть, как Couchbase значительно облегчает нам разработку наших приложений независимо от используемого языка.

$config[ads_text5] not found

Подключиться к серверу


Первое, что мы должны сделать, это подключиться к серверу, для этого мы можем использовать метод подключения Python или просто, если мы используем C # в экземпляре, мы можем определить, куда подключиться, как мы видим на следующем рисунке:

{title}


Как мы видим, даже если формы немного отличаются, на заднем плане это тот же код, так как мы используем конструктор класса для определения сервера и хоста в случае Python, в C # мы создаем объект с хостом, а затем определяем ведро в другом объекте.

Создавать и редактировать


После того, как мы увидели операцию подключения, давайте посмотрим на те операции, которые являются ключом для вставки данных в нашу структуру или изменения существующих, для этого мы будем использовать в случае с Python метод add () и метод replace (), первый из которых создает новая запись, а вторая обновляет существующую запись. Давайте посмотрим на следующем рисунке, как будет выглядеть исходный код для этих операций:

$config[ads_text6] not found

{title}


Как мы видим, мы просто передаем ключ в этом сообщении, а затем значение, которое он будет хранить, настолько просто, насколько эффективно.

Проконсультируйтесь и удалите


Если мы хотим прочитать ключ, например, сообщение, которое мы добавили в предыдущем примере, мы можем использовать метод GET, это вернет объект, который содержит желаемую запись, в случае отсутствия в соответствии с языком мы получим пустое значение или оболочка, чтобы мы могли обработать это исключение.
В случае удаления ключа или записи мы должны только вызывать метод remove (), указывающий ключ, который мы хотим удалить из нашей структуры, чистым и эффективным способом, которым мы можем выполнить эту миссию. Посмотрим на следующем рисунке ниже, как выполнить эти две операции с точки зрения C # :

{title}


Если мы посмотрим, мы использовали объект, называемый bucket, для выполнения этих действий, этот объект - тот, который мы определяем в примере подключения, и который выбирает vBucket, которым владеет наш узел, для хранения наших записей.
На этом мы завершили этот урок, так как видим, что Couchbase - не только один из самых современных и мощных движков баз данных NoSQL на рынке, но и очень удобный для разработчиков, и этот фактор мы должны учитывать, когда собираемся использовать этот тип структур, поскольку, если есть поддержка языка, на котором мы будем работать, мы будем на шаг впереди все время.