couchbase - RIP Tutorial · PDF file from: couchbase It is an unofficial and free couchbase...

Click here to load reader

  • date post

    27-Jan-2021
  • Category

    Documents

  • view

    1
  • download

    0

Embed Size (px)

Transcript of couchbase - RIP Tutorial · PDF file from: couchbase It is an unofficial and free couchbase...

  • couchbase

    #couchbase

  • 1

    1: couchbase 2

    2

    Examples 2

    2

    2: C # SDK 3

    3

    Examples 3

    3

    4

    SDK 5

    3: Java SDK 6

    Examples 6

    SDK 6

    6

    6

    TTL (Time To Live) 7

    4: couchbase SSL SDK 8

    8

    Examples 8

    couchbase java sdk 8

    10

  • Около You can share this PDF with anyone you feel could benefit from it, downloaded the latest version from: couchbase

    It is an unofficial and free couchbase ebook created for educational purposes. All the content is extracted from Stack Overflow Documentation, which is written by many hardworking individuals at Stack Overflow. It is neither affiliated with Stack Overflow nor official couchbase.

    The content is released under Creative Commons BY-SA, and the list of contributors to each chapter are provided in the credits section at the end of this book. Images may be copyright of their respective owners unless otherwise specified. All trademarks and registered trademarks are the property of their respective company owners.

    Use the content presented in this book at your own risk; it is not guaranteed to be correct nor accurate, please send your feedback and corrections to [email protected]

    https://riptutorial.com/ru/home 1

    http://riptutorial.com/ebook/couchbase https://archive.org/details/documentation-dump.7z mailto:[email protected]

  • глава 1: Начало работы с couchbase

    замечания

    В этом разделе представлен обзор того, что такое couchbase, и почему разработчик может захотеть его использовать.

    Следует также упомянуть о любых крупных предметах в рамках couchbase и ссылки на связанные темы. Поскольку документация для couchbase является новой, вам может потребоваться создать начальные версии этих связанных тем.

    Examples

    Установка или настройка

    Подробные инструкции по установке или установке couchbase.

    Прочитайте Начало работы с couchbase онлайн: https://riptutorial.com/ru/couchbase/topic/1233/начало-работы-с-couchbase

    https://riptutorial.com/ru/home 2

    https://riptutorial.com/ru/couchbase/topic/1233/%D0%BD%D0%B0%D1%87%D0%B0%D0%BB%D0%BE-%D1%80%D0%B0%D0%B1%D0%BE%D1%82%D1%8B-%D1%81-couchbase https://riptutorial.com/ru/couchbase/topic/1233/%D0%BD%D0%B0%D1%87%D0%B0%D0%BB%D0%BE-%D1%80%D0%B0%D0%B1%D0%BE%D1%82%D1%8B-%D1%81-couchbase https://riptutorial.com/ru/couchbase/topic/1233/%D0%BD%D0%B0%D1%87%D0%B0%D0%BB%D0%BE-%D1%80%D0%B0%D0%B1%D0%BE%D1%82%D1%8B-%D1%81-couchbase

  • глава 2: C # SDK

    Синтаксис

    новый кластер (); // Подключаем и загружаем файлы из локального кластера ( localhost)

    новый кластер (конфигурация ClientConfiguration) // Используйте указанную настраиваемую конфигурацию для подключения к кластеру

    новый кластер (string configurationSectionName) // Используйте указанный раздел конфигурации из app.config / web.config

    OpenBucket (); // Открыть ведро по умолчанию• OpenBucket (строка bucketname); // Открыть указанное ведро• OpenBucket (строка bucketname, строковый пароль); // Откройте указанный ведро с предоставленным паролем

    Examples

    Подключение к ковшу

    Конфигурирование соединения программно:

    var config = new ClientConfiguration { Servers = new List { new Uri("http://localhost:8091/pools") }, BucketConfigs = new Dictionary { { "default", new BucketConfiguration { BucketName = "default", UseSsl = false, Password = "", DefaultOperationLifespan = 2000, PoolConfiguration = new PoolConfiguration { MaxSize = 10, MinSize = 5, SendTimeout = 12000 } }} } }; var cluster = new Cluster(config); var bucket = cluster.OpenBucket();

    Настройка соединения в web.config / app.config :

    https://riptutorial.com/ru/home 3

  • Используя раздел конфигурации:

    var cluster = new Cluster("couchbaseClients/couchbase"); var bucket = cluster.OpenBucket();

    Вставить синхронизацию документов

    Существует два основных способа вставки документа

    Создайте документ, затем вставьте его1.

    var bucket = cluster.OpenBucket("default"); var document = new Document { Id = "doc_net", Content = new { name = "Roi", lastName = "Katz", someRandomField="Very important data!" }, Expiry = 0, // TTL in ms }; bucket.Insert(document);

    Используйте объект Serialized и Newtonsoft JSON.net2.

    public class MyDataObject { public string Name { get; set; }

    https://riptutorial.com/ru/home 4

  • public int LastName { get; set; } public string SomeRandomField { get; set; } }

    И используйте его для вставки ваших данных

    var dataObject = new MyDataObject(); //...Fill up the object bucket.Insert("MyUniqueDocumentKey", dataObject, 10); // Insert a document with 10 seconds TTL - or you can use a TimeSpan

    Вы также можете отправить постоянство коэффициента репликации при вставке документа.

    Добавление SDK в проект

    С консоли NuGet Package Manager:

    Install-Package CouchbaseNetClient

    Прочитайте C # SDK онлайн: https://riptutorial.com/ru/couchbase/topic/5079/c-sharp-sdk

    https://riptutorial.com/ru/home 5

    http://i.stack.imgur.com/M0kgn.png https://riptutorial.com/ru/couchbase/topic/5079/c-sharp-sdk

  • глава 3: Java SDK

    Examples

    Добавление SDK в проект

    Добавьте в файл pom.xml следующую зависимость:

    com.couchbase.client java-client 2.3.1

    Вы можете проверить репозиторий maven для последней версии.

    Если вы хотите использовать OEM-производителя Spring, используйте эту зависимость Gradle:

    compile(group: 'org.springframework.data', name: 'spring-data-couchbase', version: '2.1.6.RELEASE')

    Замените версию нужной версией. Обратите внимание, что это НЕ версия Couchbase, а версия разъема Spring.

    Подключение к ковшу

    String bucketName = "default"; String bucketPassword = ""; List nodes = Arrays.asList("127.0.0.1"); // IP or hostname of one or more nodes in the cluster Cluster cluster = CouchbaseCluster.create(nodes); Bucket bucket = cluster.openBucket(bucketName, bucketPassword);

    Проверка документа существует в БД

    String bucketName = "bucket"; List nodes = Arrays.asList("node1","node2"); // IP or hostname of one or more nodes in the cluster Cluster cluster = CouchbaseCluster.create(nodes); Bucket bucket = cluster.openBucket(bucketName); //check for a document by its ID String id="bucket_collection_user_123456";//document id boolean exists=bucket.exists(id); if(exists){

    https://riptutorial.com/ru/home 6

    https://mvnrepository.com/artifact/com.couchbase.client/java-client https://mvnrepository.com/artifact/com.couchbase.client/java-client

  • System.out.println("Docuemnt exists"); } bucket.close(); cluster.disconnect();

    Создание документа с TTL (Time To Live)

    Значение TTL может использоваться для определения того, как долго документ должен находиться в ведре. По умолчанию значение TTL равно 0, что означает, что он будет находиться в течение неопределенного периода времени.

    String bucketName = "bucket"; List nodes = Arrays.asList("node1","node2"); // IP or hostname of one or more nodes in the cluster Cluster cluster = CouchbaseCluster.create(nodes); Bucket bucket = cluster.openBucket(bucketName); //create the document with id 123 and TTL 1seconds bucket.insert(JsonDocument.create("123",JsonObject.empty(), 1)); //if TTL is 0 document will be there in the DB for indefinite time //do other stuffs //to update the TTL b