暂时未有相关云产品技术能力~
没关系。
欢迎加入我们的钉钉公开群来交流:11789671
BatchGetRow是单行读,必须指定完整的PrimaryKey。
您要的需求是BatchGetRange? 可以参考下这篇文章:https://yq.aliyun.com/articles/54368
表格存储是schema free的模型,属性列不需要在建表的时候指定,每一行都可以任意的动态添加删除列。
针对你问题中的需求,如果想要在一定量的数据后添加一列,对于新写入的数据,你可以任意写入你要新加的列。
对于已经写入的行,这一列是没有值的,如果你想要赋予默认值,需要在应用层读出某一行并判断该行不存在该列后,可以选择赋予一个默认值。
抱歉,表格存储还没有提供android sdk
表格存储和盘古的关系,就好比HBase和HDFS的关系。
数据『丢失』的原因见该文章的分析:https://yq.aliyun.com/articles/65035。
解决方案是需要更改DataX内部bytes到String转换的编码,需要更改Job的配置文件,添加如下配置:
同时,在从ODPS内读出String类型字段后,需要使用iso-8859-1编码来转换回bytes:
value.getBytes("iso-8859-1");
OTS没法做多表关联查询。
您可以把业务场景描述一下,我们可以帮您设计表结构,看是否可以规避关联查询。
您是自己开发SDK?
『按照创建先后顺序排序』,您的整张表上的数据,都需要按照创建先后顺序排序吗?
线索有点少,需要补充一些信息后才能给您设计上的建议,需要您提供:
目前可以采取的实现是:
未来,我们会提供Increment操作,将步骤简化。
这个错误是「duplicate entry」,也就是说通过DataX写mysql表的时候,mysql报了这个错误,原因是有重复的primary key。
具体如何解决的话,可以google下duplicate entry when insert data into mysql.
对于单行查询和范围查询,查询的速度不在于数据量有多少。
像表格存储或HBase这种NoSQL数据库,数据量都是可以随集群的规模线性扩展的,且数据规模上去后,对单行和范围查询的速度不会有任何影响,也就是说数据规模达到亿级还是百亿级,查询速度都不会变。
在我们的高性能实例(底层是SSD)上,单行查询的速度是毫秒级别,如果单行数据量比较小,查询速度一般在10毫秒以内。
您可以关注我们的圈子:https://yq.aliyun.com/groups/82
该篇文章介绍了表格存储的数据模型和查询操作:https://yq.aliyun.com/articles/38621
可以使用自增ID,但是前提是每个ID上的访问需要均匀。如果你的表的访问热度都集中在最新创建的ID的话,那就很容易产生热点了。
哈希算法的话,可以用md5,也可以直接用java的hashcode函数自带的实现。
关于自增ID,有个典型的例子是时间序列数据,可以参考下这篇文章: https://yq.aliyun.com/articles/54644
您的问题最好发到表格存储( https://yq.aliyun.com/groups/82 )的圈子,这样我们能即时看到。
您好,以后表格存储的问答,可以发在这个圈子里:https://yq.aliyun.com/groups/82
关于如何查询多行数据,可以使用getRange接口,具体的代码示例请参考:https://github.com/aliyun/aliyun-tablestore-java-sdk/blob/master/src/test/java/examples/OTSMultiDataSample.java
batchGetRow和batchWriteRow都支持多表的操作,具体的示例可以参考:https://github.com/aliyun/aliyun-tablestore-java-sdk/blob/master/src/test/java/examples/OTSMultiTableOperationSample.java