【发布时间】:2015-11-14 09:28:09
【问题描述】:
我有一个包含以下表格的 RDBMS 数据库:
机场(iata PK、机场、城市、州、国家、纬度、经度)
cancellation_cause(cod_cancellation PK,描述)
制造商(id_manufacturer PK,制造商名称)
型号(id_model PK、model_name、id_manufacturer FK)
航空公司(航空公司代码PK,描述)
airplane_type(id_AirplaneType PK,airplane_type)
engine_type(id_engine PK,engine_type)
Aircraft_type(id_aircraft PK,aircraft_type)
飞机(TailNumber PK、id_model FK、 id_aircraft FK、airline_code FK, id_AirplaneType FK, id_engine FK, Issue_date, status, year)
Flight(id_flight PK、cod_cancellation FK、TailNumber FK、iata_origin FK >, iata_destin FK, Year, Month, DayofMonth, DayofWeek, DepTime, CRSTime, ArrTime, CRSArrTime, FlightNum, AtualElapsedTime, CRSElapsedTime, AirTime, ArrDelay, DepDelay, distance, TaxiIn, TaiOut, Cancelled, Diverted)
注意:PK - 主键; FK - 外键
我正在 RDBMS 和 Cassandra 数据库之间进行比较研究。我的目标是将此数据库迁移到 Cassandra 并在两者中运行一些查询,以便在类似情况下比较两者的性能。
谁能告诉我最好的方法?我应该如何在 Cassandra 中为数据库建模?
【问题讨论】:
-
为什么要强调PK/FK关系?这对你在 Cassandra 很重要吗?你的测试用例/基准是什么?
-
PK/FK 关系与关系模型有关。我需要将此架构迁移到 Cassandra,并具有必要的差异。在我的测试中,我打算咨询以下内容:注册更多出发延误(DepDelay)的航空公司;覆盖距离更大的飞机类型和发动机类型;飞行时间更长的制造商模型飞机是什么? (通话时间)。我的问题是如何关联数据,因为无法执行 JOIN。
-
-我会尽快详细说明。
-
谢谢。感谢您的帮助,我在这方面遇到了很多困难。
-
说吧。我将尝试逐步提供帮助并提供答案。只需继续添加到 cmets 即可。我知道的越多,我就越能完善答案(我会将其保留在答案中,以使其更明显,因此对更广泛的社区更有用)
标签: database-design cassandra database-migration rdbms nosql