Tablestore is a cost-effective table-based serverless storage service that can be used to store large volumes of structured data. Tablestore allows you to query and retrieve online data within milliseconds and perform multi-dimensional analysis on stored data. Tablestore is suitable for scenarios such as billing, instant messaging (IM), IoT, Internet of Vehicles (IoV), risk control, and intelligent recommendation. Tablestore provides a deeply optimized all-in-one storage solution for IoT applications.
Terms
The following table describes the terms that are frequently used in Tablestore.
Term | Description |
region | Regions are physical data centers that are distributed around the world. Tablestore is deployed across multiple Alibaba Cloud regions. You can select a region to use Tablestore based on your business requirements. For more information, see Regions. |
read or write throughput | The read or write throughput is measured by read or write capacity units (CUs). A CU is the smallest billing unit for read or write operations. For more information, see Read and write throughput. |
instance | An instance is a logical entity that is used to manage and use tables in Tablestore. Each instance is equivalent to a database. Tablestore manages access to Tablestore from applications and measures resources at the instance level. For more information, see Instances. |
endpoint | An endpoint is a connection URL that is used to access a Tablestore instance. To perform operations on tables and data in a Tablestore instance, you must specify the endpoint of the Tablestore instance. For more information, see Endpoints. |
time to live (TTL) | TTL is used to manage the lifecycle of data stored in Tablestore data tables. Tablestore automatically deletes data whose TTL is expired. This helps you reduce storage space and save storage costs. The TTL of data is specified in seconds. For more information, see Data versions and TTL. |
Data storage models
Tablestore provides three data storage models: the Wide Column model, the TimeSeries model, and the Timeline model. You can select a model based on your business requirements. Different models support different features. For more information, see Functions and features.
Model | Description |
Wide Column model | This model is similar to the Google Cloud Bigtable and HBase models, and can be used in various scenarios such as metadata and big data storage. The Wide Column model supports features such as max versions, TTL, auto-increment primary key column, conditional update, local transaction, atomic counter, and filter. For more information, see Overview. |
TimeSeries model | The TimeSeries model is designed based on the characteristics of time series data. This model is suitable for scenarios, such as IoT device monitoring, and can be used to store data that is collected by devices and the monitoring data of machines. The TimeSeries model supports automatic indexing of time series metadata and time series query based on various composite conditions. For more information, see Overview. |
Timeline model | This model is designed to store message data and is suitable for storing message data that is generated from IM applications and feed streams. This model can meet the requirements of messaging processes, such as message order preservation, storage of large numbers of messages, and real-time synchronization. This model also supports full-text search and Boolean query. For more information, see Overview. |
Use Tablestore
The following table describes the methods for using Tablestore.
Method | Description |
Tablestore console | Alibaba Cloud provides a user-friendly web-based console for Tablestore. For more information, log on to the Tablestore console. |
SDK | Tablestore SDKs are provided for popular programming languages, such as Java, Go, Python, Node.js, .NET, and PHP. For more information, see SDK overview. |
Tablestore CLI | Tablestore allows you to perform operations by running simple commands. For more information, see Start the Tablestore CLI and configure access information. |
Getting started
You can use the Tablestore console or Tablestore CLI to perform operations on data tables in the Wide Column or TimeSeries model. For more information, see Use Tablestore.
Data computing and analysis
Tablestore allows you to compute and analyze data by using a tool, such as MaxCompute, Spark, Hive, Hadoop MapReduce, Function Compute, Realtime Compute for Apache Flink, or Tablestore SQL query. You can select a tool to compute and analyze data based on your business requirements.
Tool | Applicable model | References | Description |
MaxCompute | Wide Column | You can use the MaxCompute client to create an external table and use the external table to access Tablestore data. | |
Spark | Wide Column | You can use Spark to perform complex computing and analysis on Tablestore data that is accessed by using E-MapReduce (EMR) SQL or DataFrame. | |
Hive or Hadoop MapReduce | Wide Column | You can use Hive or Hadoop MapReduce to access a Tablestore table. | |
Function Compute | Wide Column | You can use Function Compute to perform real-time computing on the incremental data in Tablestore. | |
Realtime Compute for Apache Flink |
| You can use Realtime Compute for Apache Flink to access source tables, dimension tables, or result tables in Tablestore to compute and analyze big data. Data tables can be used as source tables, dimension tables, or result tables. Time series tables can be used only as result tables. | |
PrestoDB | Wide Column | After you connect PrestoDB to Tablestore, you can execute SQL statements to query and analyze data in Tablestore, write data to Tablestore, and import data to Tablestore by using PrestoDB. | |
Tablestore search index | Wide Column | Search indexes are used for multi-dimensional data queries and statistical analysis in big data scenarios based on inverted indexes and column stores. Tablestore provides the search index feature to meet your data analysis requirements such as obtaining extreme values, counting rows, and grouping data. If your business requires multi-dimensional queries such as queries based on non-primary key columns, Boolean queries, and fuzzy queries, you can create a search index based on the fields that you need. Then, you can query and analyze the data by using the search index. | |
Tablestore SQL query |
| The SQL query feature of Tablestore provides a unified access interface for multiple data engines. You can use the SQL query feature to perform complex queries and analysis on data in Tablestore in an efficient manner. |
Data migration and synchronization
You can seamlessly migrate or synchronize data from disparate data sources to Tablestore. You can also synchronize data from Tablestore to other Alibaba Cloud services, such as Object Storage Service (OSS).
Category | References | Description |
Data import | You can use Tablestore Sink Connector to batch import data from Apache Kafka to a data table or time series table in Tablestore. | |
Synchronize data from one table to another table in Tablestore | You can synchronize data from one table to another table in Tablestore by using Tunnel Service, DataWorks, or DataX. | |
Data export | You can use DataWorks to export full data from Tablestore to MaxCompute. | |
You can use DataWorks to export full or incremental data from Tablestore to OSS. | ||
You can use the CLI or DataX to download data in Tablestore to a local file. You can also use DataWorks to synchronize data in Tablestore to OSS and download data from OSS to a local file. |
More features
To configure user permissions, you can use Resource Access Management (RAM) to grant custom permissions to different users. For more information, see Use a RAM policy to grant permissions to a RAM user.
You can use the following methods to manage and control user access to Tablestore: the control policy feature provided by the resource directory service of Resource Management, the network ACL feature provided by Tablestore, and the instance policy feature provided by Tablestore. For more information, see Access control overview.
To ensure the security of data storage and network access, you can encrypt data tables or bind a virtual private cloud (VPC) to your Tablestore instance to allow access only over the VPC. 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 back up important data on a regular basis. For more information, see Back up data in Tablestore.
To configure alert notifications for monitoring metrics, you can use CloudMonitor. For more information, see Overview.
To visualize data, you can use DataV or Grafana. For example, you can use DataV or Grafana to display data in charts. For more information, see Data visualization tools.