Visão geral de APIs, bibliotecas de cliente e drivers ORM
Mantenha tudo organizado com as coleções
Salve e categorize o conteúdo com base nas suas preferências.
Interfaces disponíveis
Você pode usar uma das várias interfaces programáticas ao interagir com o Spanner. Estas são as interfaces disponíveis, na ordem em que recomendamos usá-las:
Bibliotecas de cliente: as bibliotecas de cliente do Spanner estão
disponíveis em várias linguagens e são criadas no gRPC. Essas bibliotecas
de cliente fornecem uma camada de abstração sobre o gRPC e processam os detalhes
de gerenciamento de sessão, execução de transações, novas tentativas e muito mais.
Drivers ORM e framework: o Google oferece suporte a drivers do Spanner de código aberto
para várias bibliotecas conhecidas de mapeamento relacional de objetos (ORMs) e
frameworks, como JDBC. Esses drivers permitem o uso de bancos de dados do Spanner por meio de
APIs definidas por esses frameworks.
API RPC: se uma biblioteca de cliente ou driver ORM não estiver disponível para sua opção de linguagem de programação,
use a API RPC, que é criada no gRPC. Ele
oferece uma série de benefícios de desempenho em comparação ao uso da API REST,
incluindo a representação de objetos no formato de buffer de protocolo (que são mais rápidos para
produzir e consumir se comparados ao JSON) e conexões persistentes (que
resultam em sobrecarga menor por solicitação). Leia mais sobre esses e outros benefícios em Conceitos de gRPC.
API REST: se não for possível usar as bibliotecas de cliente do Spanner
ou a API RPC, use a API REST. Alguns recursos que estão disponíveis
na API RPC não são aceitos na API REST, conforme documentado abaixo.
API REST x RPC
Esta tabela compara os recursos do Spanner disponíveis nas interfaces da API REST e RPC.
[[["Fácil de entender","easyToUnderstand","thumb-up"],["Meu problema foi resolvido","solvedMyProblem","thumb-up"],["Outro","otherUp","thumb-up"]],[["Difícil de entender","hardToUnderstand","thumb-down"],["Informações incorretas ou exemplo de código","incorrectInformationOrSampleCode","thumb-down"],["Não contém as informações/amostras de que eu preciso","missingTheInformationSamplesINeed","thumb-down"],["Problema na tradução","translationIssue","thumb-down"],["Outro","otherDown","thumb-down"]],["Última atualização 2025-08-17 UTC."],[],[],null,["# Overview of APIs, client libraries, and ORM drivers\n\nAvailable interfaces\n--------------------\n\nYou can use one of several programmatic interfaces when interacting with\nSpanner. These are the available interfaces, in the order that we\nrecommend using them:\n\n- [Client libraries](/spanner/docs/reference/libraries): The Spanner client libraries are available in multiple languages and are built on [gRPC](https://grpc.io/). These client libraries provide a layer of abstraction on top of gRPC and handle the details of session management, transaction execution, retries, and more.\n- [ORM and framework drivers](/spanner/docs/drivers-overview): Google supports open-source Spanner drivers for several popular object-relational mapping libraries (ORMs) and frameworks, such as JDBC. These drivers allow the use of Spanner databases through APIs defined by those frameworks.\n- [RPC API](/spanner/docs/reference/rpc): If a client library or ORM driver is not available for your programming language of choice, use the RPC API, which is built on [gRPC](https://grpc.io/). gRPC offers a number of performance benefits compared with using the REST API, including representing objects in protocol buffer format (which are faster to produce and consume compared with JSON) and persistent connections (which result in less per-request overhead). Read more about these and other benefits in [gRPC Concepts](https://grpc.io/docs/guides/concepts/).\n- [REST API](/spanner/docs/reference/rest): If you're unable to use Spanner's client libraries or the RPC API, use the REST API. Note that some features that are available in the RPC API are not supported in the REST API, as documented below.\n\nRPC versus REST API\n-------------------\n\nThis table compares Spanner features available through its RPC and REST API interfaces.\n\nClient libraries features support\n---------------------------------\n\nThe following table lists the client libraries, noting the major Spanner features that each one supports."]]