CINXE.COM

Couchbase Scala SDK 1.7 | Couchbase Docs

<!DOCTYPE html> <html lang="en"> <head> <meta charset="utf-8"> <meta http-equiv=content-security-policy content="default-src 'none'; script-src 'self' 'unsafe-eval' 'unsafe-inline' https:; style-src 'self' 'unsafe-inline' https:; font-src 'self' https://fonts.gstatic.com; frame-src 'self' https:; img-src 'self' data: https:; connect-src 'self' https:; worker-src blob:;"> <meta name="viewport" content="width=device-width,initial-scale=1.0"> <!-- Google Tag Manager --> <script>(function(w,d,s,l,i){w[l]=w[l]||[];w[l].push({'gtm.start': new Date().getTime(),event:'gtm.js'});var f=d.getElementsByTagName(s)[0], j=d.createElement(s),dl=l!='dataLayer'?'&l='+l:'';j.async=true;j.src= 'https://metrics.couchbase.com/gtm.js?id='+i+dl;f.parentNode.insertBefore(j,f); })(window,document,'script','dataLayer','GTM-MVPNN2');</script> <!-- End Google Tag Manager --> <title>Couchbase Scala SDK 1.7 | Couchbase Docs</title> <link rel="canonical" href="https://docs.couchbase.com/scala-sdk/current/hello-world/overview.html"> <link rel="stylesheet" href="../../../_/css/site.css"> <script src="../../../_/js/vendor/jquery.js"></script> <script src="https://cdn.cookielaw.org/scripttemplates/otSDKStub.js" data-domain-script="748511ff-10bf-44bf-88b8-36382e5b5fd9"></script> <script>function OptanonWrapper(){}</script> <link rel="schema.dcterms" href="https://purl.org/dc/terms/"> <meta name="dcterms.subject" content="scala-sdk"> <meta name="dcterms.identifier" content="1.7"> <meta name="page-url" content="/scala-sdk/current/hello-world/overview.html"> <meta name="page-nav-header-levels" content="2"> <meta name="docsearch:component" content="scala-sdk"> <meta name="docsearch:component_title" content="Scala SDK"> <meta name="docsearch:cversion" content="1.7"> <meta name="docsearch:component_version" content="scala-sdk@1.7"> <meta name="docsearch:module" content="hello-world"> <meta name="docsearch:breadcrumbs" content="Scala SDK / Couchbase Scala SDK Overview"> <meta name="docsearch:topic_type" content=""> <meta name="docsearch:version_rank" content="1"> <meta name="docsearch:status" content=""> <meta name="docsearch:edition" content=""> <meta name="docsearch:page_rank" content="50"> <meta name="generator" content="Antora 3.1.5"> <link rel="icon" href="../../../_/img/favicon.svg" type="image/svg+xml"> <link rel="icon" href="../../../_/img/favicon.ico" type="image/x-icon" sizes="any"> </head> <body class="landing-page"> <noscript><iframe src="https://www.googletagmanager.com/ns.html?id=GTM-MVPNN2" height="0" width="0" style="display:none;visibility:hidden"></iframe></noscript> <header class="header fixed-top"> <div class="header-top-row"> <div class="container"> <nav class="navbar navbar-expand-md flex-nowrap justify-content-between navbar-new-top"> <ul class="navbar-brand-list"> <li class="brand-logo"> <a class="navbar-brand" href="https://www.couchbase.com"> <img src="../../../_/img/couchbase-logo.svg" alt="Couchbase" /> </a> </li> <li> <a class="navbar-brand cb-documentation" href="https://docs.couchbase.com/home/index.html"> <img src="../../../_/img/cb-documentation.svg" alt="Couchbase Documentation" class="cb-docs" /> <img src="../../../_/img/cb-docs-hover.svg" alt="Couchbase Documentation" class="hide cb-hover-docs" /> </a> </li> </ul> <button class="navbar-burger" data-target="topbar-menu"> <span></span> <span></span> <span></span> </button> </nav> </div> </div> <div class="header-bottom-row" id="topbar-menu"> <div class="container"> <nav class="navbar navbar-new-bottom "> <div class="navbar-collapse collapse" id="navbar2"> <ul class="navbar-nav w-100 justify-content-start"> <li class="nav-item ""> <a href="https://docs.couchbase.com/home/index.html" class="nav-link"> <i class="fas fa-home"></i> </a> </li> <li class="nav-item "> <a class="nav-link" href="../../../home/server.html"> Server </a> </li> <li class="nav-item "> <a class="nav-link" href="../../../home/mobile.html"> Mobile </a> </li> <li class="nav-item "> <a class="nav-link" href="../../../home/cloud.html"> Capella </a> </li> <li class="nav-item "> <a class="nav-link" href="../../../cloud-native-database/index.html"> Cloud-Native </a> </li> <li class="nav-item nav-item-selected"> <a class="nav-link" href="../../../home/sdk.html"> Couchbase SDKs </a> </li> <li class="nav-item "> <a class="nav-link" href="../../../home/columnar-sdk.html"> Columnar SDKs </a> </li> </ul> </div> <div class="primary-action"> <div class="navbar-item search" id="search"> <input class="dataLayer query" type="text" placeholder="Search Docs"><i class="fas fa-search"></i> </div> <a class="btn btn-primary btn-grey-reverse" onclick="(window.dataLayer=window.dataLayer||[]).push({'event':'customEvent', 'category':'CTA', 'action':'Button Click', 'label':'Download'});" href="https://www.couchbase.com/downloads"> Downloads <i class="far fa-arrow-to-bottom fa-fw"></i> </a> <a href="https://cloud.couchbase.com/sign-up" class="btn btn-primary" onclick="(window.dataLayer=window.dataLayer||[]).push({'event':'customEvent', 'category':'CTA', 'action':'Button Click', 'label':'Free Trial'});" > Try Free <i class="far fa-cloud fa-fw"></i> </a> </div> </nav> </div> </div> </header> <div class="body container"> <aside class="nav left-sidebar"> <div class="nav-container"> <a href="#" class="menu-expand-toggle"><span>Navigation</span><i class="fas fa-times-circle"></i><i class="fas fa-chevron-circle-left"></i></a> </div> </aside> <main class="article" data-ceiling="topbar"> <article class="doc landing-page-doc"> <h1 class="sect0">Couchbase Scala SDK 1.7</h1> <div class="paragraph"> <p>The Couchbase Scala SDK allows Scala applications to access a Couchbase cluster&#8201;&#8212;&#8201;Capella or self-managed.</p> </div> <div class="paragraph"> <p><a href="start-using-sdk.html" class="xref page">Quickstart Guide</a> | <a href="../project-docs/sdk-release-notes.html" class="xref page">SDK Release Notes</a> | <a href="https://docs.couchbase.com/sdk-api/couchbase-scala-client/com/couchbase/client/scala/index.html">Scala SDK API Reference</a></p> </div> <div class="paragraph"> <p>What&#8217;s the point of a fast and scalable database if it&#8217;s not easy to develop for? Couchbase gives you the Scala APIs to work with Capella, our managed solution, or self-managed options in your private Cloud or datacenter.</p> </div> <div id="tabs-1" class="openblock tabs is-sync is-loading"> <div class="content"> <div class="ulist tablist"> <ul> <li id="tabs-1-data-ops-crud" class="tab"> <p>Data Ops (CRUD)</p> </li> <li id="tabs-1-sql-query-oltp" class="tab"> <p>SQL++ Query (OLTP)</p> </li> <li id="tabs-1-vector-search" class="tab"> <p>Vector Search</p> </li> </ul> </div> <div id="tabs-1-data-ops-crud--panel" class="tabpanel" aria-labelledby="tabs-1-data-ops-crud"> <div class="listingblock"> <div class="content"> <pre class="highlightjs highlight"><code class="language-scala hljs" data-lang="scala" data-source-url="https://github.com/couchbase/docs-sdk-scala/blob/f8164be309f39ac07b1183d12924594d04013de9/modules/devguide/examples/scala/KvOperations.scala#L128-L133">val json = JsonObject("foo" -&gt; "bar", "baz" -&gt; "qux") collection.upsert("document-key", json) match { case Success(result) =&gt; println("Document upsert successful") case Failure(exception) =&gt; println("Error: " + exception) }</code></pre> </div> </div> </div> <div id="tabs-1-sql-query-oltp--panel" class="tabpanel" aria-labelledby="tabs-1-sql-query-oltp"> <div class="listingblock"> <div class="content"> <pre class="highlightjs highlight"><code class="language-scala hljs" data-lang="scala" data-source-url="https://github.com/couchbase/docs-sdk-scala/blob/f8164be309f39ac07b1183d12924594d04013de9/modules/devguide/examples/scala/Queries.scala#L40-L41">val statement = """select * from `travel-sample` limit 10;""" val result: Try[QueryResult] = cluster.query(statement)</code></pre> </div> </div> </div> <div id="tabs-1-vector-search--panel" class="tabpanel" aria-labelledby="tabs-1-vector-search"> <div class="listingblock"> <div class="content"> <pre class="highlightjs highlight"><code class="language-scala hljs" data-lang="scala" data-source-url="https://github.com/couchbase/docs-sdk-scala/blob/f8164be309f39ac07b1183d12924594d04013de9/modules/devguide/examples/scala/FTS.scala#L110-L112">val request = SearchRequest.vectorSearch(VectorSearch(VectorQuery("vector_field", vectorQuery))) val result: Try[SearchResult] = scope.search("vector-index", request)</code></pre> </div> </div> </div> </div> </div> <div class="paragraph"> <p>Couchbase is a large platform&#8201;&#8212;&#8201;covering many services&#8201;&#8212;&#8201;and Couchbase SDKs are not thin wrappers generated around a REST API, but well thought out interfaces to the platform that make it easier to design and maintain your client code, and work with Couchbase in more natural ways for your platform. Install the SDK, and explore in the way that works best for you.</p> </div> <div class="listingblock"> <div class="title">Installing the SDK via Scala Build Tool</div> <div class="content"> <pre class="highlightjs highlight"><code class="language-sbt hljs" data-lang="sbt">libraryDependencies += "com.couchbase.client" %% "scala-client" % "1.7.5"</code></pre> </div> </div> <div class="paragraph"> <p>The links below will take you where you want to go&#8201;&#8212;&#8201;as will the navigation on the left-hand side of this page. But if you don&#8217;t know exactly where you need to go, try one of the following:</p> </div> <div class="ulist"> <ul> <li> <p>Our <a href="start-using-sdk.html" class="xref page">Quickstart Guide</a> introduces the SDK with a quick install, and CRUD examples against the Data Service.</p> </li> <li> <p>Couchbase&#8217;s familiar SQL-family query language and fuzzy search options (including vector search) are introduced on the <a href="../concept-docs/querying-your-data.html" class="xref page">Querying Your Data</a> page.</p> </li> <li> <p>The Scala SDK docs are, necessarily, just a sub-set <a href="https://docs.couchbase.com/sdk-api/couchbase-scala-client/com/couchbase/client/scala/index.html">Scala SDK API Reference</a>&#8201;&#8212;&#8201;and a complete reference of all APIs can be found there.</p> </li> <li> <p>For a fuller orientation, there is a <a href="../project-docs/metadoc-about-these-sdk-docs.html" class="xref page">guide to the Scala SDK docs</a></p> </li> </ul> </div> <div class="paragraph"> <p><br></p> </div> <div class="sect1"> <h2><span class="icon"><i class="fa fa-database"></i></span> Using Your Database</h2> <div class="sectionbody"> <div class="paragraph"> <p>How-to guides to help you start your development journey with Couchbase and the Scala SDK.</p> </div> <div class="card-row two-column-row"> <div class="ulist column"> <div class="title">Easy to Connect &amp; Get Started</div> <ul> <li> <p><a href="start-using-sdk.html" class="xref page">Quickstart Guide</a></p> </li> <li> <p><a href="sample-application.html" class="xref page">Sample Application</a></p> </li> <li> <p><a href="../howtos/managing-connections.html" class="xref page">Managing Connections</a></p> </li> </ul> </div> <div class="ulist column"> <div class="title">Search, Query, Analyze</div> <ul> <li> <p><a href="../howtos/sqlpp-queries-with-sdk.html" class="xref page">Query with a familiar, SQL-like language</a></p> </li> <li> <p><a href="../howtos/vector-searching-with-sdk.html" class="xref page">Vector Search for your AI app</a></p> </li> <li> <p><a href="../howtos/full-text-searching-with-sdk.html" class="xref page">Fuzzy Search with text and Geo data</a></p> </li> <li> <p><a href="../howtos/analytics-using-sdk.html" class="xref page">OLAP&#8201;&#8212;&#8201;long running analytical queries</a></p> </li> </ul> </div> <div class="ulist column"> <div class="title">Lightning Fast Data Service</div> <ul> <li> <p><a href="../howtos/kv-operations.html" class="xref page">Data Operations</a></p> </li> <li> <p><a href="../howtos/subdocument-operations.html" class="xref page">Sub-Document Operations</a></p> </li> <li> <p><a href="../howtos/encrypting-using-sdk.html" class="xref page">Field Level Encryption from the SDK</a></p> </li> <li> <p><a href="../howtos/distributed-acid-transactions-from-the-sdk.html" class="xref page">Multi-Document Distributed ACID Transactions</a></p> </li> </ul> </div> <div class="ulist column"> <div class="title">Observability &amp; Error Handling</div> <ul> <li> <p><a href="../howtos/error-handling.html" class="xref page">Handling Errors</a></p> </li> <li> <p><a href="../howtos/collecting-information-and-logging.html" class="xref page">Logging</a></p> </li> <li> <p><a href="../howtos/slow-operations-logging.html" class="xref page">Slow Operations Logging</a></p> </li> <li> <p><a href="../howtos/health-check.html" class="xref page">Health Check</a></p> </li> </ul> </div> </div> <div class="paragraph"> <p><br></p> </div> </div> </div> <div class="sect1"> <h2><span class="icon"><i class="fa fa-book"></i></span> Resources</h2> <div class="sectionbody"> <div class="paragraph"> <p>Useful resources to help support your development experience with Couchbase and the Scala SDK.</p> </div> <div class="card-row two-column-row"> <div class="ulist column"> <div class="title">Reference</div> <ul> <li> <p><a href="https://docs.couchbase.com/sdk-api/couchbase-scala-client/com/couchbase/client/scala/index.html" target="_blank" rel="noopener">API Reference</a></p> </li> <li> <p><a href="../ref/client-settings.html" class="xref page">Client Settings</a></p> </li> <li> <p><a href="../ref/error-codes.html" class="xref page">Error Messages</a></p> </li> <li> <p><a href="https://github.com/couchbase/couchbase-jvm-clients/tree/master/scala-client">SDK source code</a></p> </li> </ul> </div> <div class="ulist column"> <div class="title">Deployment</div> <ul> <li> <p><a href="../project-docs/sdk-release-notes.html" class="xref page">SDK Release Notes</a></p> </li> <li> <p><a href="../project-docs/compatibility.html" class="xref page">Compatibility</a></p> </li> <li> <p><a href="../project-docs/third-party-integrations.html" class="xref page">Integrations &amp; Ecosystem</a></p> </li> <li> <p><a href="../project-docs/sdk-full-installation.html" class="xref page">Couchbase Scala SDK Installation</a></p> </li> </ul> </div> </div> <div class="admonitionblock tip"> <table> <tr> <td class="icon"> <i class="fa icon-tip" title="Tip"></i> </td> <td class="content"> <div class="title">Columnar SDKs</div> <div class="paragraph"> <p>SDKs for <a href="../../../columnar/intro/intro.html" class="xref page">Capella Columnar</a>&#8201;&#8212;&#8201;Couchbase&#8217;s analytical database (RT-OLAP) for real time apps and operational intelligence&#8201;&#8212;&#8201;are available for the Java, Node.js, and Python platforms. See the <a href="#home:columnar-sdk.adoc" class="xref unresolved">Capella Columnar SDK pages</a> for more information.</p> </div> </td> </tr> </table> </div> </div> </div> </article> </main> </div> <footer class="footer"> <div class="container"> <div class="footer-links"> <div class="col"> <div class="footer-logo"> <a href="https://www.couchbase.com" class="icon"> <img src="../../../_/img/couchbase-logo.svg" alt="Couchbase"> </a> </div> </div> <div class="col"> <ul> <li><a href="https://docs.couchbase.com" target="_blank" rel="noopener">Documentation</a></li> <li><a href="https://forums.couchbase.com" target="_blank" rel="noopener">Forums</a></li> <li><a href="https://support.couchbase.com" target="_blank" rel="noopener">Support</a></li> </ul> </div> <div class="col"> <ul> <li><a href="https://developer.couchbase.com" target="_blank" rel="noopener">Developer Portal</a></li> <li><a href="https://blog.couchbase.com" target="_blank" rel="noopener">Blog</a></li> <li><a href="https://www.couchbase.com/resources">Resources</a></li> </ul> </div> <div class="col"> <ul> <li><a href="https://www.couchbase.com/get-started-developing-nosql">Get Started</a></li> <li><a href="https://www.couchbase.com/downloads">Downloads</a></li> <li><a href="https://learn.couchbase.com/store?utf8=%E2%9C%93&ss=1&ct=78327&commit=Filter" target="_blank" rel="noopener">Training</a></li> </ul> </div> <div class="col"> <ul class="social-icons"> <li> <svg width="14" height="14" viewBox="0 0 32.1 26.1"> <path id="twitter" class="cls-1" d="M32,7.1a11.836,11.836,0,0,1-3.8,1,6.462,6.462,0,0,0,2.9-3.6,12.606,12.606,0,0,1-4.2,1.6A6.492,6.492,0,0,0,22.1,4a6.594,6.594,0,0,0-6.6,6.6,7.719,7.719,0,0,0,.2,1.5A18.458,18.458,0,0,1,2.2,5.2a6.294,6.294,0,0,0-.9,3.3A6.765,6.765,0,0,0,4.2,14a6.109,6.109,0,0,1-3-.8v.1a6.543,6.543,0,0,0,5.3,6.4,4.678,4.678,0,0,1-1.7.2,4.869,4.869,0,0,1-1.2-.1,6.679,6.679,0,0,0,6.1,4.6,12.917,12.917,0,0,1-8.2,2.8,9.151,9.151,0,0,1-1.6-.1,18.438,18.438,0,0,0,10.1,3c12.1,0,18.7-10,18.7-18.7v-.8A13.336,13.336,0,0,0,32,7.2Z" transform="translate(0.1 -4)"/></svg> <a href="https://twitter.com/couchbase" class="icon"> Twitter </a> </li> <li> <svg width="14" height="14" viewBox="0 0 32 32"> <path id="linkedin" class="cls-1" d="M29,0H3A3.076,3.076,0,0,0,0,3V29a3.009,3.009,0,0,0,3,3H29a2.946,2.946,0,0,0,3-3V3A3.009,3.009,0,0,0,29,0ZM12,26H8V12h4ZM10,10a2,2,0,1,1,2-2A2.006,2.006,0,0,1,10,10ZM26,26H22V18a2,2,0,0,0-4,0v8H14V12h4v2.5c.8-1.1,2.1-2.5,3.5-2.5A4.736,4.736,0,0,1,26,17Z"/></svg> <a href="https://www.linkedin.com/company/couchbase" class="icon"> Linkedin </a> </li> <li> <svg width="14" height="14" viewBox="0 0 32 32"> <path id="facebook" class="cls-1" d="M29,0H3A2.652,2.652,0,0,0,0,3V29a2.652,2.652,0,0,0,3,3H16V18H12V14h4V12a6.452,6.452,0,0,1,6-6h4v4H22a2.151,2.151,0,0,0-2,2v2h6l-1,4H20V32h9a2.652,2.652,0,0,0,3-3V3A2.652,2.652,0,0,0,29,0Z"/></svg> <a href="https://www.facebook.com/Couchbase" class="icon"> Facebook </a> </li> </ul> </div> </div> <div class="footer-terms"> <div class="footer-terms-copyright"> <span>漏 2024 Couchbase and the Couchbase logo are registered trademarks of Couchbase, Inc. All third party trademarks (including logos and icons) referenced by Couchbase, Inc. remain the property of their respective owners. </span> </div> <div class="footer-terms-links"> <a href="https://www.couchbase.com/terms-of-use">Terms of Use</a> <a href="https://www.couchbase.com/privacy-policy">Privacy Policy</a> <a href="https://www.couchbase.com/cookie-policy">Cookie Policy</a> <a href="https://www.couchbase.com/support-policy">Support Policy</a> <a href="https://info.couchbase.com/unsubscribe-or-manage-preferences.html" target="_blank" rel="noopener">Marketing Preference Center</a> </div> </div> </div> </footer> <script src="../../../_/js/site-navigation-data.js"></script> <script id="page-navigation-group" type="application/json"> {"title":"Couchbase SDKs","components":["dotnet-sdk","c-sdk","cxx-sdk","go-sdk","java-sdk","kotlin-sdk","nodejs-sdk","php-sdk","python-sdk","ruby-sdk","scala-sdk","elasticsearch-connector","kafka-connector","spark-connector","tableau-connector","power-bi-connector","sdk-extensions"],"url":"/home/sdk.html","latestVersions":{"dotnet-sdk":"3.6","c-sdk":"3.3","cxx-sdk":"1.0","go-sdk":"2.9","java-sdk":"3.7","kotlin-sdk":"1.4","nodejs-sdk":"4.4","php-sdk":"4.2","python-sdk":"4.3","ruby-sdk":"3.5","scala-sdk":"1.7","elasticsearch-connector":"4.4","kafka-connector":"4.2","spark-connector":"3.5","tableau-connector":"1.1","power-bi-connector":"1.0","sdk-extensions":"master"}} </script> <template id="run-code-panel"> <div class="action-panel"> <form class="action-panel-control" method="POST" action="https://couchbase.live/run" target="run-code-output"> <input type="hidden" name="lang"> <input type="hidden" name="code"> <input type="hidden" name="from" value="docs"> <div class="controls"> <button class="control-button rerun" type="submit"><i class="fas fa-redo"></i></button> <span class="shell-name control-label">Output</span> <button class="control-button close"><i class="fas fa-times"></i> Close</button> </div> </form> <iframe class="run-code-output" name="run-code-output"></iframe> </div> </template> <script id="site-script" src="../../../_/js/vendor/chatbox-ui.js"></script> <script id="site-script" src="../../../_/js/site.js"></script> <script async src="../../../_/js/vendor/tabs.js" data-sync-storage-key="preferred-tab"></script> <script defer src="../../../_/js/vendor/fontawesome-icon-defs.js"></script> <script defer src="../../../_/js/vendor/fontawesome.js" data-search-pseudo-elements="true"></script> <script async src="../../../_/js/vendor/highlight.js"></script> <script async id="search-script" src="../../../_/js/vendor/docsearch.js" data-app-id="NI1G57N08Q" data-api-key="d3eff3e8bcc0860b8ceae87360a47d54" data-index-name="prod_docs_couchbase" data-stylesheet="../../../_/css/vendor/docsearch.css"></script> <script async id="feedback-script" src="../../../_/js/vendor/feedback.js?v=1" data-collector-id="709818cb"></script> </body> </html>

Pages: 1 2 3 4 5 6 7 8 9 10