标签: bigtable

在GAE的大桌上,指数会以什么速度"爆炸"?

在GAE的大桌上,指数会以什么速度"爆炸"?

下面的文档摘录说明,对于集合值,索引可能会以指数方式"爆炸".

这是否意味着对于具有两个集合值的对象,第一个集合中的每个值子集都有一个索引条目,与第二个集合中的每个子集配对?或者每个可能的值对只有一个索引条目?

例:

实体:

widget:{
     mamas_list:         ['cookies', 'puppies']
     papas_list:         ['rain', 'sun']
    }
Run Code Online (Sandbox Code Playgroud)

第一个集合中每个值子集的索引条目与第二个集合中的每个子集配对:

cookies         rain
cookies puppies rain
cookies puppies rain sun
cookies         sun
cookies         rain sun
puppies         rain
puppies         sun
puppies         rain sun
Run Code Online (Sandbox Code Playgroud)

每个可能的值对只有一个索引条目:

cookies         rain
cookies         sun
puppies         rain
puppies         sun
Run Code Online (Sandbox Code Playgroud)

爆炸索引摘录:

资料来源:https://developers.google.com/appengine/docs/python/datastore/indexes#Index_Limits

对于同一属性可以具有多个值的实体需要为每个值指定单独的索引条目; 同样,如果可能值的数量很大,则这样的实体可以超过进入限制.

在具有多个属性的实体的情况下情况变得更糟,每个属性可以采用多个值.为了适应这样的实体,索引必须包含每个可能的属性值组合的条目.引用多个属性的自定义索引(每个属性具有多个值)可以组合"爆炸", 对于仅具有相对较少数量的可能属性值的实体需要大量条目.(取自: )

indexing google-app-engine bigtable

5
推荐指数
1
解决办法
278
查看次数

我的表需要对AppEngine的BigTable进行哪些更改?

假设我有一个由用户组成的预订数据库:

user_id
fname
lname
Run Code Online (Sandbox Code Playgroud)

和他们的门票

ticket_id
user_id
flight_no
Run Code Online (Sandbox Code Playgroud)

和相关的航班

flight_no
airline
departure_time
arrival_time
Run Code Online (Sandbox Code Playgroud)

移动此Google AppEngine需要更改哪些内容?

我知道AppEngine 不允许加入.

这是否意味着我的桌子应该成为一片混合在一起的大片?

预订:

user_id
fname
lname
ticket_id
flight_no
airline
departure_time
arrival_time
Run Code Online (Sandbox Code Playgroud)

换句话说,我的所有查询现在都针对同一个表运行?

sql database google-app-engine bigtable table-structure

4
推荐指数
1
解决办法
681
查看次数

App Engine BadValueError批量数据上传 - TextProperty被解释为StringProperty

bulkoader.yaml:

transformers: 
    - kind: ExampleModel 
      connector: csv 
      property_map: 
        - property: __key__ 
          external_name: key 
          export_transform: transform.key_id_or_name_as_string 
        - property: data 
          external_name: data 
        - property: type 
          external_name: type 
Run Code Online (Sandbox Code Playgroud)

model.py:

class ExampleModel(db.Model): 
        data = db.TextProperty(required=True) 
        type = db.StringProperty(required=True) 
Run Code Online (Sandbox Code Playgroud)

一切似乎都很好,但是当我上传时我得到了这个错误: BadValueError: Property data is 24788 bytes long; it must be 500 or less. Consider Text instead, which can store strings of any length.

出于某种原因,它认为数据是字符串属性.

任何人都知道如何解决这个问题?

google-app-engine bigtable data-import google-cloud-datastore

4
推荐指数
1
解决办法
1000
查看次数

bigtable上的全文搜索

有关使用java在bigtable上进行/优化全文搜索的任何见解?最佳做法等?你们是怎么做到的?

google-app-engine full-text-search bigtable

4
推荐指数
1
解决办法
1216
查看次数

xtable大表每页的标题?

你如何在每个页面上放置一个xtable表格头的大表?,这样就更容易在表格之间读取表格.

我在Sweave中使用以下内容:

test.big<- xtable(test,label="table",caption='test')
align(test.big) <- "|c|c|c|c|l|c|c|c|"
print(test.big,tabular.environment='longtable',include.colnames = TRUE,floating=FALSE)
Run Code Online (Sandbox Code Playgroud)

谢谢你的回答

latex r bigtable sweave xtable

4
推荐指数
2
解决办法
3143
查看次数

谷歌appengine和实际大表之间的区别

我知道app引擎是在大桌面上实现的,任何人都可以描述大表的实际实现和google的大表.ie(app引擎)的实现之间的区别

google-app-engine bigtable

4
推荐指数
1
解决办法
545
查看次数

GAE Cloud SQL和高复制数据存储区

使用HRD和BigTable,您将被迫处理所有非祖先查询的查询的最终一致性.您的代码必须足够强大,以应对结果可能过时的事实.

随着Google推出Cloud SQL,他们发布了免责声明:(https://developers.google.com/cloud-sql/faq#hrapps)

"We recommend that you use Google Cloud SQL with 
High Replication App Engine applications. While you can use use 
Google Cloud SQL with applications that 
do not use high replication, doing so might impact performance."
Run Code Online (Sandbox Code Playgroud)

这是什么意思?这是否意味着使用SQL与HRD存在相同的最终一致性问题?SQL中没有实体组的概念,但这是否意味着在特定情况下特定的SQL查询会产生陈旧的结果?

这意味着谷歌的SQL原子事务合同的实现将被破坏,并且SQL将不会像关系数据库的用户期望的那样起作用.如果不是这种情况,那么对于使用SQL的主/从或HRD模型有什么顾虑?为什么Google会让您选择性能较差的模型?

sql cloud google-app-engine bigtable

4
推荐指数
1
解决办法
1754
查看次数

Redis与Cassandra(Bigtable数据模型)

假设我需要密集地执行以下操作:
put(key, value)
其中value是<column name,column value>的映射.
我不知道NoSQL很长时间,我所知道的是Cassandra插入(符合Bigtable论文中定义的api)和Redis"HSET"命令都可以做到.但这两种方式的优点和缺点是什么?那里有任何性能和可扩展性差异吗?

编辑:

我的要求类似于IM服务器---我需要存储会话数据,我希望它们都存储在内存中,以便轻松实现低延迟.会议持续最多2个小时.尚未考虑一致性要求.磁盘仅用于故障转移.丢失的数据并不可怕.我只需要更低的延迟.每秒操作---越多越好.

bigtable cassandra nosql redis

4
推荐指数
1
解决办法
3838
查看次数

为什么 BigTable 有列族?

为什么 BigTable 的结构是“family:qualifier”的两级层次结构?具体来说,为什么要强制执行此操作,而不是仅仅拥有列,并建议用户将其限定符命名为“vertical:column”?

我感兴趣的是强制执行此操作是否可以实现某些工程优化,或者这是否严格来说是一个设计问题。

bigtable google-cloud-bigtable

4
推荐指数
1
解决办法
4968
查看次数

大表与大查询用于时间序列数据

我希望最终确定Big table vs Big Query以获取我的时间序列数据.

我通过了https://cloud.google.com/bigtable/docs/schema-design-time-series

这是用于存储Omniture数据,其中包含网站访问者密钥(一些Long密钥),他的cookie id(一些Long密钥),他的IP的时间戳系列数据web命中,cookie等信息

什么可以用作Big table的rowkey?我不能使用时间戳或CookieId作为前缀,因为我从最佳实践中学习.但是应该有一个标识符(最好是字母?),然后是时间序列后缀.数据量为5亿,今天在SQL表中存储了52列.我认为数据可能会根据OLTP处理进行更新.但是稍后会在时间序列数据上查询该表以进行类似的OLAP处理.

a)Big table在这里是最好的选择,还是我应该使用Big Query,因为稍后根据时间序列数据查询会对我有所帮助?b)如果使用Big table,那么最好的行键是什么,因为timeseries是我看到的唯一意义过滤器.我相信,使用表中的其他字段,如visitorkey,cookieid ID(Long ids)作为带时间戳的前缀仍然会导致整个数据填满Bigtable中的1个节点,而不是分发.

请告诉我.

bigtable google-bigquery google-cloud-bigtable

4
推荐指数
1
解决办法
1712
查看次数