Dataflow 使用交易讀取
透過集合功能整理內容
你可以依據偏好儲存及分類內容。
使用 Dataflow 連接器,在單一交易中執行所有讀取作業,同時讀取多份資料表,確保資料一致性。
深入探索
如需包含這個程式碼範例的詳細說明文件,請參閱下列內容:
程式碼範例
Java
如要瞭解如何安裝及使用 Spanner 的用戶端程式庫,請參閱這篇文章。
如要向 Spanner 進行驗證,請設定應用程式預設憑證。
詳情請參閱「為本機開發環境設定驗證」。
除非另有註明,否則本頁面中的內容是採用創用 CC 姓名標示 4.0 授權,程式碼範例則為阿帕契 2.0 授權。詳情請參閱《Google Developers 網站政策》。Java 是 Oracle 和/或其關聯企業的註冊商標。
[[["容易理解","easyToUnderstand","thumb-up"],["確實解決了我的問題","solvedMyProblem","thumb-up"],["其他","otherUp","thumb-up"]],[["難以理解","hardToUnderstand","thumb-down"],["資訊或程式碼範例有誤","incorrectInformationOrSampleCode","thumb-down"],["缺少我需要的資訊/範例","missingTheInformationSamplesINeed","thumb-down"],["翻譯問題","translationIssue","thumb-down"],["其他","otherDown","thumb-down"]],[],[],[],null,["# Dataflow read with transaction\n\nUse the Dataflow connector to read data from multiple tables at the same point in time to ensure data consistency by performing all of the reads in a single transaction.\n\nExplore further\n---------------\n\n\nFor detailed documentation that includes this code sample, see the following:\n\n- [Import, export, and modify data using Dataflow](/spanner/docs/dataflow-connector)\n\nCode sample\n-----------\n\n### Java\n\n\nTo learn how to install and use the client library for Spanner, see\n[Spanner client libraries](/spanner/docs/reference/libraries).\n\n\nTo authenticate to Spanner, set up Application Default Credentials.\nFor more information, see\n\n[Set up authentication for a local development environment](/docs/authentication/set-up-adc-local-dev-environment).\n\n SpannerConfig spannerConfig =\n SpannerConfig.create().withInstanceId(instanceId).withDatabaseId(databaseId);\n PCollectionView\u003cTransaction\u003e tx =\n pipeline.apply(\n SpannerIO.createTransaction()\n .withSpannerConfig(spannerConfig)\n .withTimestampBound(TimestampBound.strong()));\n PCollection\u003cStruct\u003e singers =\n pipeline.apply(\n SpannerIO.read()\n .withSpannerConfig(spannerConfig)\n .withQuery(\"SELECT SingerID, FirstName, LastName FROM Singers\")\n .withTransaction(tx));\n PCollection\u003cStruct\u003e albums =\n pipeline.apply(\n SpannerIO.read()\n .withSpannerConfig(spannerConfig)\n .withQuery(\"SELECT SingerId, AlbumId, AlbumTitle FROM Albums\")\n .withTransaction(tx));\n\nWhat's next\n-----------\n\n\nTo search and filter code samples for other Google Cloud products, see the\n[Google Cloud sample browser](/docs/samples?product=spanner)."]]