What is Tablestore?

更新时间:
复制 MD 格式

Tablestore is a serverless table storage service for large volumes of structured data. It supports four data models: Wide Column, AI (Agent Memory), TimeSeries, and Timeline. Tablestore is suitable for scenarios that involve AI data, metadata, message data, and spatio-temporal data. It provides features such as search index, vector search, and SQL query. Tablestore seamlessly integrates with compute ecosystems such as MaxCompute, Flink, Spark, and Presto, and is compatible with mainstream AI frameworks such as Dify, LangChain, and LlamaIndex. Tablestore offers the MCP intelligent Agent architecture for AI chat applications and the IoTstore solution for IoT needs, enabling data storage and intelligent analysis for all scenarios.

Before you start

Before you read this topic, you may need to understand the following concepts:

Terms

Before using Tablestore, you need to understand the following basic concepts.

Term

Description

Region

A region is a physical data center. Tablestore is deployed in multiple Alibaba Cloud regions. You can select a region to use the Tablestore service as needed. For more information, see Regions and zones.

Read/write throughput

Read throughput and write throughput are measured in read capacity units and write capacity units. A capacity unit (CU) is the smallest billing unit for read and write operations. For more information, see Read/write throughput.

Instance

An instance is an entity used to manage and use the Tablestore service. Each instance is equivalent to a database. Tablestore performs access control and resource metering for applications at the instance level. For more information, see Instances.

Endpoint

Each instance has an endpoint. An application must specify the endpoint when it performs operations on tables and data. For more information, see Endpoints.

Data lifecycle

Time to live (TTL) is a property of a data table. It specifies the retention period of data in seconds. Tablestore runs in the background to clear expired data. This reduces your data storage space and storage costs. For more information, see Data versions and time to live (TTL).

Data storage models

Tablestore provides three data storage models: Wide Column, TimeSeries, and Timeline. You can select a model based on your scenario. For information about the features supported by different data storage models, see Features.

Model

Description

Wide table model

This model is similar to the Bigtable and HBase models. It can be used in various scenarios, such as metadata and big data. It supports features such as data versions, TTL, auto-increment primary key columns, conditional updates, local transactions, atomic counters, and filters. For more information, see Wide Column model.

TimeSeries model

This model is designed based on the characteristics of time series data. It can be used in scenarios such as IoT device monitoring, device data collection, and machine monitoring data. It supports features such as automatic creation of time series metadata indexes and a wide range of time series query capabilities. For more information, see TimeSeries model.

Message model

This model is designed for message data scenarios. It can be used in message scenarios such as instant messaging (IM) and feed streams. It meets the requirements of message scenarios for message ordering, massive message storage, and real-time synchronization. It also supports full-text search and multi-dimensional composite queries. For more information, see Timeline model.

Billing

Tablestore supports two billing modes: reserved capacity (subscription) and on-demand (pay-as-you-go). For more information, see the table below.

Billing mode

Description

VCU mode (formerly reserved mode)

You can purchase reserved VCUs in advance based on resource evaluation results, or enable elastic capacity and pay for consumed computing performance on a pay-as-you-go basis. You can use reserved VCUs and elastic capacity together to save costs.

  • When you purchase reserved VCUs, you must pay for compute resources in advance. Tablestore provides fixed computing power based on the purchased reserved VCUs. The unit is VCU.

  • After you enable elastic capacity for an instance, the instance enters Serverless mode. You can pay for consumed computing performance based on actual usage without purchasing compute resources in advance.

This mode helps you save on compute resource costs. This mode also lets you control overall resource usage by configuring an upper limit for elastic capacity or disabling elastic capacity. This prevents extra fees caused by unusual traffic. This makes it a better choice for scenarios that require cost control.

Note

For more information, see Resource estimation and selection.

Billable items include computing power, data storage, cross-region replication traffic, and outbound public traffic, where data storage includes high-performance storage, Capacity storage, and search index storage. For more information, see VCU mode (formerly Reserved mode).

CU mode (formerly pay-as-you-go mode)

You are charged for resources such as real-time read/write throughput and storage space. You do not need to plan hardware resource consumption in advance.

This mode is suitable for scenarios where workloads fluctuate significantly and unpredictably. The elastic capacity provided by CU mode (formerly pay-as-you-go mode) ensures that your application can handle traffic bursts. This makes it a better choice for scenarios that require high service stability.

Important

In CU mode (formerly pay-as-you-go mode), you cannot control the upper limit of overall resource usage. You must manage resource usage at the application layer to prevent extra overhead from unusual traffic and usage.

Billable items include read throughput, write throughput, data storage, cross-region replication traffic, and outbound public network traffic. For more information, see CU mode (formerly Pay-As-You-Go mode).

Select a recommended solution based on your business scenario.

Business scenario

Description

Recommended solution

References

Stable and predictable workloads

The workload does not have significant peaks and valleys, and no unexpected traffic bursts occur. Examples include monitoring and IoT scenarios.

VCU mode (formerly reserved mode)

Workloads with traffic bursts

The workload has unpredictable traffic bursts. Examples include media assets and news.

  • VCU mode (formerly reserved mode)

  • CU mode (formerly pay-as-you-go mode) and resource plans

Batch offline tasks

Low-frequency but large-scale offline data reads and writes are performed at scheduled times every day.

CU mode (formerly pay-as-you-go mode) and resource plans

Business testing

Set up a staging environment to test the product in the early stages.

CU mode (formerly pay-as-you-go mode)

CU mode (formerly Pay-As-You-Go mode)

fig_20220902_case

Methods

You can use the Tablestore product in the following ways.

Method

Description

Console

Alibaba Cloud provides a web service page that lets you easily operate Tablestore. For more information, see the Tablestore console.

SDK

Supports mainstream development languages such as Java, Go, Python, Node.js, .Net, and PHP. For more information, see SDK Reference.

Command line interface

Lets you operate Tablestore using simple commands. For more information, see Command line interface.

Quick Start

You can use the console or command line interface to quickly perform operations on data tables in the Wide Column model or time series tables in the TimeSeries model. For more information, see Quick Start for the Wide Column model and Quick Start for the TimeSeries model.

Computing and Analytics

Tablestore supports computing and analysis through MaxCompute, Spark, Hive or HadoopMR, Function Compute, Flink, and Tablestore SQL query. You can select an analysis tool based on your scenario.

Analytical tool

Applicable model

Operation

Description

MaxCompute

Wide table model

Use MaxCompute

You can create a foreign table for a data table in Tablestore using the MaxCompute client, which lets you access the data in Tablestore.

Spark

Wide table model

Use the Spark compute engine

When you use the Spark compute engine, you can access Tablestore through E-MapReduce SQL or DataFrame programming.

Hive or HadoopMR

Wide table model

Use Hive or HadoopMR

Use Hive or Hadoop MapReduce to access data in Tablestore.

Function Compute

Wide table model

Use Function Compute

Use Function Compute to access Tablestore and perform real-time computing on Tablestore incremental data.

Flink

  • Wide table model

  • Time series model

Use Flink

You can use Real-time Compute Flink to access source tables, dimension tables, or sink tables in Tablestore to perform real-time computing and analysis on big data.

PrestoDB

Wide table model

Use Tablestore with PrestoDB

After connecting PrestoDB to Tablestore, use SQL to query and analyze data in Tablestore, write data to Tablestore, and import data into Tablestore through PrestoDB on Tablestore.

Tablestore search index

Wide table model

Search index

Search index uses inverted indexes and columnar storage to address complex multidimensional queries and statistical analysis for big data. When your business requires queries on non-primary key columns, multi-column combined queries, fuzzy queries, or analytics such as finding maximum/minimum values, counting rows, or grouping data, define these attributes as fields in a search index and use it to query and analyze your data.

Tablestore SQL query

  • Wide table model

  • Time series model

Use SQL query

SQL query provides a unified access interface for multiple data engines. With the SQL query feature, you can access Tablestore data to run complex queries and perform efficient analysis.

Migration and synchronization

You can smoothly migrate and synchronize heterogeneous data to Tablestore. You can also synchronize Tablestore data to other services such as Object Storage Service (OSS).

Category

Data synchronization

Description

Data import

Synchronize MySQL data

Use DataX, DTS, Canal, or Tapdata Cloud to synchronize data from a MySQL database to Tablestore.

Sync Kafka data

Use the Tablestore Sink Connector to batch import data from Apache Kafka into data tables or time series tables in Tablestore.

Sync Oracle data

Using the Tapdata Cloud visualization interface, sync Oracle data to Tablestore in real time.

Sync HBase data

Synchronize full data from an HBase database toTablestore using DataX.

Sync MaxCompute data

Use DataWorks to sync full data from MaxCompute to Tablestore.

Sync data in Tablestore data tables

Use Tunnel Service, DataWorks, or DataX to synchronize data from a Tablestore data table to another data table.

Sync data in a Tablestore time series table

Use the DataWorks tool to synchronize full data or incremental data from a Tablestore time series table to another time series table.

Data exporting

Sync to MaxCompute

Use DataWorks to export full data or incremental data from Tablestore to MaxCompute.

Sync to OSS

Use DataWorks to export full or incremental data from Tablestore to OSS.

Sync to a local file

Use the command line interface or DataX to download data directly to a local file. You can also use DataWorks to sync data to OSS, then download the data from OSS to a local file.

More features

  • To control user access permissions, you can use Resource Access Management (RAM) to implement custom permissions. For more information, see Grant permissions to a RAM user using a RAM policy.

    You can also further restrict user access permissions using control policies in a resource directory, Tablestore network ACLs, and Tablestore instance policies. For more information, see Authorization management.

  • To ensure data storage security and network access security, you can use methods such as data table encryption and VPC network access. For more information, see Data encryption and Network security management.

  • To prevent important data from being accidentally deleted, you can use the data backup feature to periodically back up important data. For more information, see Data backup.

  • To configure alert notifications for monitoring metrics, you can use Cloud Monitor. For more information, see Data monitoring and alerts.

  • To visualize data in forms such as charts, you can use DataV or Grafana. For more information, see Data visualization.

FAQ

What are the differences between Tablestore and traditional relational databases such as MySQL and SQL Server?

Technical support

Tablestore provides professional and free technical consulting services. You are welcome to join the corresponding communication groups on DingTalk.

  • The latest technical communication group for developers of internet applications, big data, and social applications is 36165029092 (Tablestore Technical Support-3).

    Note

    Tablestore user groups 11789671 (Tablestore Technical Support) and 23307953 (Tablestore Technical Support-2) are full and cannot be joined at the moment.

  • The technical communication group for developers of IoT and TimeSeries models is 44327024 (IoTstore Developer Group).

Related concepts