Php AWS数据库结构-MySQL&;发电机
我希望为我的transational数据运行一个DynamoDB数据库,为需要SQL连接查询的数据运行一个mysql数据库 为了避免MySQL中出现大容量/大型表(保持更好的性能),我将把一些数据移动到DynamoDB中,有时需要引用MySQL中的数据 查询DynamoDB中的某些数据并查询MySQL,然后用PHP(或另一种服务器端语言)执行最终的数据比较,以获得返回到客户端/浏览器所需的数据,这是否是糟糕的编程/查询 我想基本的问题是:必须查询NoSQL&SQL数据库,然后用php(或服务器端语言)查询结果。。。这是正常的还是坏主意 thxPhp AWS数据库结构-MySQL&;发电机,php,mysql,amazon-web-services,amazon-dynamodb,Php,Mysql,Amazon Web Services,Amazon Dynamodb,我希望为我的transational数据运行一个DynamoDB数据库,为需要SQL连接查询的数据运行一个mysql数据库 为了避免MySQL中出现大容量/大型表(保持更好的性能),我将把一些数据移动到DynamoDB中,有时需要引用MySQL中的数据 查询DynamoDB中的某些数据并查询MySQL,然后用PHP(或另一种服务器端语言)执行最终的数据比较,以获得返回到客户端/浏览器所需的数据,这是否是糟糕的编程/查询 我想基本的问题是:必须查询NoSQL&SQL数据库,然后用php(或服务器端
注意:这项工作的主要目的是进行数据库规划,以避免出现无法管理过大关系数据库的情况。因此,您希望将批量数据移动到NoSQL(DynamoDB).是的,您肯定可以同时使用这两个。。。 但是它有一些优点和缺点。
缺点:
- 在MySQL中,您将获得ACID保证,但在Dynamo db中没有这样的保证李>
- 在MySQL中,您可以编写复杂的查询,而在Dynamo db中,您不能编写复杂的查询
- 它具有分布式哈希表的特性,因此与MySQL相比,它的性能更高
HiveQl比Dynamo Db更强大,它可以比Dynamo Db更有效地提高性能。是的,您肯定可以同时使用这两种技术。。。 但是它有一些优点和缺点。
缺点:
- 在MySQL中,您将获得ACID保证,但在Dynamo db中没有这样的保证李>
- 在MySQL中,您可以编写复杂的查询,而在Dynamo db中,您不能编写复杂的查询
- 它具有分布式哈希表的特性,因此与MySQL相比,它的性能更高
HiveQl远不止Dynamo Db,它可以比Dynamo Db更有效地提高性能。将数据分离到不同的数据存储区是一个非常好的主意,每个存储区都有其优点 例如:
- 您可以将BLOB放在RDBMS中(作为MySQL),但最好将其放在存储中
- 您可以将文本文档放在RDBMS中,并使用“…如%query%…”进行查询,但最好将它们放在弹性搜索或查询中
- 您可以将会话管理数据放在RDBMS中,但最好放在或中
- 您可以在RDBMS中使用查找表,但最好使用内存或基于内存的NoSQL(如Memecached或Redis)或DynamoDB
关于编写PHP(或其他编程语言)代码来操作分布式数据,这也取决于。如果需要数据存储本机支持的复杂连接、分组、筛选功能,最好使用DB功能。但很多时候,您的代码编写起来非常简单,比如查询正确的数据库(例如,从文本搜索到CloudSearch)并在不同的数据存储中组装数据块。将数据分离到不同的数据存储是一个非常好的主意,每个数据存储都有其优点 例如:
- 您可以将BLOB放在RDBMS中(作为MySQL),但最好将其放在存储中
- 您可以将文本文档放在RDBMS中,并使用“…如%query%…”进行查询,但最好将它们放在弹性搜索或查询中
- 您可以将会话管理数据放在RDBMS中,但最好放在或中
- 您可以在RDBMS中使用查找表,但最好使用内存或基于内存的NoSQL(如Memecached或Redis)或DynamoDB