partitionRead
从Apache分区导入数据卡珊德拉数据库表
语法
描述
例子
从Cassandra数据库表导入数据
使用Apache™Cassandra®数据库c++接口,创建Cassandra数据库连接,并将数据从Cassandra数据库表导入MATLAB®。Cassandra数据库包含一个包含员工数据的数据库表。
使用配置的数据源创建Cassandra数据库连接CassandraDataSource
以及一个空白的用户名和密码。的apacheCassandra
函数返回康涅狄格州
作为一个连接
对象。
数据源=“CassandraDataSource”;用户名="";密码="";conn = apacheCassandra(数据源,用户名,密码);
将员工数据从employeedata键空间和employees_by_job
数据库表使用Cassandra数据库连接。
用于=“employeedata”;表名=“employees_by_job”;results = partitionRead(conn,keyspace,tablename);
显示返回的雇员数据的前几行。
(结果)
ans =表8×13job_id hire_date employee_id commission_pct department_id邮件first_name last_name manager_id办公室performance_ratings phone_number工资建筑房间 __________ ___________ ___________ ______________ _____________ __________ __________ _____________ __________ ________________ ___________________ ______________ ______ " ST_CLERK“08 - mar - 2008 128南50”SMARKLE”“史蒂芬”“Markle北部“120”“171”{3×1 int32} 650.124.1434“2200”ST_CLERK“06 - 136年2月- 2008年南50”HPHILTAN”“黑”" phil坦克船" 122 "北" 303 {[2]}"650.127.1634" 2200 "ST_CLERK" 12- 12- 2007 135南50 "KGEE" "Ki" "Gee" 122 "西" 287 {2×1 int32} "650.127.1734" 2400 "ST_CLERK" 10- 4- 2007 132南50 "TJOLSON" "TJ" "Olson" 121 "北" 256 {[7]}"650.124.8234" 2100 "ST_CLERK" 14- 1 -2007 127南50 "JLANDRY" "James" "Landry" 120 "西" 273 {2×1 int32} "650.124.1334" 2400 "ST_CLERK" 28- 9 -2006 126南50 "IMIKKILI" "Irene" "Mikkilineni" 120 "东" 246 {4×1 int32} "650.124.1224" 2700 "ST_CLERK" 26- 8- 2006134 NaN 50 "MROGERS" "Michael" "Rogers" 122 "East" 246 {3×1 int32} "650.127.1834" 2900 "ST_CLERK" 09- 7 -2006 144 NaN 50 "PVARGAS" "Peter" "Vargas" 124 "North" 129 {3×1 int32} "650.121.2004" 2500
结果
是一个包含以下变量的表:
job_id
-工作标识符hire_date
-租用日期employee_id
-员工标识commission_pct
-佣金百分比department_id
-部门标识电子邮件
-电子邮件地址first_name
-名字last_name
-姓氏manager_id
—管理员标识符办公室
-办公室位置(包含建筑和房间两个变量的表格)performance_ratings
-性能评级phone_number
-电话号码工资
- - - - - -工资
关闭Cassandra数据库连接。
关上(康涅狄格州)
使用多个分区键值导入数据
使用Apache™Cassandra®数据库c++接口,创建Cassandra®数据库连接,并将数据从Cassandra数据库表导入MATLAB®。使用数据库表中的两个分区键的值来导入数据。Cassandra数据库包含一个包含员工数据的数据库表。
使用配置的数据源创建Cassandra数据库连接CassandraDataSource
以及一个空白的用户名和密码。的apacheCassandra
函数返回康涅狄格州
作为一个连接
对象。
数据源=“CassandraDataSource”;用户名="";密码="";conn = apacheCassandra(数据源,用户名,密码);
导入员工数据到MATLAB中employeedata
键空间和employees_by_name
数据库表使用Cassandra数据库连接。该数据库表具有first_name
而且last_name
分区键。指定两个雇员的名和姓作为分区键的值,以导入这两个雇员的数据。
用于=“employeedata”;表名=“employees_by_name”;keyValue1 = [“克里斯托弗。”,“亚历山大”];keyValue2 = [“奥尔森”,“Hunold”];results = partitionRead(conn,keyspace,tablename,keyValue1,keyValue2);
显示两个雇员的返回雇员数据。
结果
结果=表2×13first_name last_name hire_date employee_id commission_pct department_id邮件job_id manager_id办公室performance_ratings phone_number工资建筑房间 _____________ _________ ___________ ___________ ______________ _____________ _________ _________ __________ ________________ ___________________ ____________________ ______ " 亚历山大”“Hunold“03 - 103年1月- 2006年南60”AHUNOLD”“IT_PROG西方国家“102”“155”{2×1 int32} 590.423.4567“9000”克里斯托弗“奥尔森“30 - mar - 2006 153 0.2 80”COLSEN”"SA_REP" 145 "South" 333 {4×1 int32} "011.44.1344.498718" 8000
结果
是一个包含以下变量的表:
first_name
-名字last_name
-姓氏hire_date
-租用日期employee_id
-员工标识commission_pct
-佣金百分比department_id
-部门标识电子邮件
-电子邮件地址job_id
-工作标识符manager_id
—管理员标识符办公室
-办公室位置(包含建筑和房间两个变量的表格)performance_ratings
-性能评级phone_number
-电话号码工资
- - - - - -工资
关闭Cassandra数据库连接。
关上(康涅狄格州)
使用一致性级别导入数据
使用Apache™Cassandra®数据库c++接口,创建Cassandra数据库连接,并将数据从Cassandra数据库表导入MATLAB®。使用数据库表中的分区键值导入数据。指定返回结果的一致性级别。Cassandra数据库包含一个包含员工数据的数据库表。
使用配置的数据源创建Cassandra数据库连接CassandraDataSource
以及一个空白的用户名和密码。的apacheCassandra
函数返回康涅狄格州
作为一个连接
对象。
数据源=“CassandraDataSource”;用户名="";密码="";conn = apacheCassandra(数据源,用户名,密码);
导入员工数据到MATLAB中employeedata
键空间和employees_by_job
数据库表使用Cassandra数据库连接。该数据库表具有job_id
分区键。指定IT_PROG
分区键的值,以便仅为程序员雇员导入所有数据。另外,将一致性级别指定为一个节点。
用于=“employeedata”;表名=“employees_by_job”;keyValue =“IT_PROG”;水平=“一”;results = partitionRead(conn,keyspace,tablename,keyValue,...“ConsistencyLevel”、水平);
一个副本节点响应返回的数据。
显示返回的员工数据。
结果
结果=5×13表job_id hire_date employee_id commission_pct department_id邮件first_name last_name manager_id办公室performance_ratings phone_number工资建筑房间 _________ ___________ ___________ ______________ _____________ __________ ___________ ___________ __________ ________________ ___________________ ______________ ______ " IT_PROG“21 - 104年5月- 2007年南60”BERNST”“布鲁斯”“恩斯特北部“103”“371”{[8]}590.423.4568“6000”IT_PROG“07 - 107年2月- 2007年南60”DLORENTZ”“戴安娜”“西洛伦兹“103””133 {3×1 int32} "590.423.5567" 4200 "IT_PROG" 05- 02 -2006 106 NaN 60" VPATABAL" "Valli" "Pataballa" 103 "东" 231 {5×1 int32} "590.423.4560" 4800 "IT_PROG" 03- 01 -2006 103 NaN 60" AHUNOLD" "Alexander" "Hunold" 102 "西" 155 {2×1 int32} "590.423.4567" 9000 "IT_PROG" 25- 06 -2005 105 NaN 60" DAUSTIN" "David" "Austin" 103 "南" 393 {2×1 int32} "590.423.4569" 4800
结果
是一个包含以下变量的表:
job_id
-工作标识符hire_date
-租用日期employee_id
-员工标识commission_pct
-佣金百分比department_id
-部门标识电子邮件
-电子邮件地址first_name
-名字last_name
-姓氏manager_id
—管理员标识符办公室
-办公室位置(包含建筑和房间两个变量的表格)performance_ratings
-性能评级phone_number
-电话号码工资
- - - - - -工资
关闭Cassandra数据库连接。
关上(康涅狄格州)
输入参数
康涅狄格州
- - - - - -Apache Cassandra数据库连接
连接
对象
Apache Cassandra数据库连接,指定为连接
对象。
用于
- - - - - -用于
特征向量|字符串标量
的表
- - - - - -Cassandra数据库表名
特征向量|字符串标量
keyValue1…keyValueN
- - - - - -分区键值
数字标量|数字数组|特征向量|字符向量的单元格数组|……
分区键值,指定为以下数据类型之一:
数字标量
数字数组
特征向量
字符向量的单元格数组
字符串标量
字符串数组
逻辑
逻辑
数组datetime
数组持续时间
数组
如果不指定keyValue1…keyValueN
输入参数,然后partitionRead
函数从Cassandra数据库表的所有分区导入数据(与CQL查询相同)SELECT * FROM tablename
).
为Cassandra数据库表的每个分区键指定一个键值。您可以指定的分区键值的最大数量是主键的数量,其中包括Cassandra数据库中的分区键和集群列。
如果指定标量值,则等价的CQL查询为=
子句在哪里
条款。如果指定一个值数组,则等价的CQL查询为在
子句在哪里
条款。
如果所有分区键值都是标量值,则partitionRead
函数从一个分区导入数据。如果某些分区键值是数组,则partitionRead
函数通过搜索与所有可能的键组合对应的多个分区来导入数据。
下表描述了支持的Cassandra分区键。
支持卡桑德拉分区键 | 一个分区的MATLAB有效数据类型 | MATLAB多分区有效数据类型 |
---|---|---|
|
字符向量或字符串标量 |
字符向量或字符串数组的单元格数组 |
|
数值标量或 |
数值数组或 |
|
数字数组 |
数值数组的单元格数组 |
|
数值标量或 |
数值数组或 |
|
|
|
|
数字标量, |
数字数组, |
|
数值标量或 |
数值数组或 |
|
数值标量或 |
数值数组或 |
|
字符向量或字符串标量 |
字符向量或字符串数组的单元格数组 |
|
数值标量或 |
数值数组或 |
|
数值标量或 |
数值数组或 |
|
字符向量或字符串标量 |
字符向量或字符串数组的单元格数组 |
|
|
|
|
|
|
|
字符向量或字符串标量 |
字符向量或字符串数组的单元格数组 |
|
数值标量或 |
数值数组或 |
|
字符向量或字符串标量 |
字符向量或字符串数组的单元格数组 |
|
字符向量或字符串标量 |
字符向量或字符串数组的单元格数组 |
|
数字标量, |
数字数组, |
不支持以下Cassandra分区键:
计数器
列表
地图
集
元组
用户定义类型
例子:(“马”,“CT”)
例子:1、2、“DataProvider1”、“AmbientTemp”
数据类型:双
|逻辑
|字符
|字符串
|结构体
|细胞
|datetime
|持续时间
名称-值参数
指定可选参数对为Name1 = Value1,…,以=家
,在那里的名字
参数名称和价值
对应的值。名-值参数必须出现在其他参数之后,但对的顺序并不重要。
在R2021a之前,名称和值之间用逗号隔开,并括起来的名字
在报价。
例子:results = partitionRead(conn,keyspace,tablename,'ConsistencyLevel',"ONE",'RequestTimeout',15)
通过从一个节点接收读响应返回导入的数据,数据库必须等待15秒才能执行读操作,然后抛出错误。
ConsistencyLevel
- - - - - -一致性水平
“一”
(默认)|特征向量|字符串标量
一致性级别,指定为这些值之一。
一致性级别值 | 一致性级别说明 |
---|---|
|
当所有复制节点都响应时返回查询结果。 |
|
当大多数副本节点响应时返回查询结果。 |
|
在本地数据中心的大多数副本节点响应时返回查询结果。 |
|
当一个副本节点响应时返回查询结果。 |
|
当两个副本节点响应时返回查询结果。 |
|
当三个复制节点响应时返回查询结果。 |
|
当本地数据中心的一个副本节点响应时返回查询结果。 |
|
返回任何数据中心的复制节点的当前(可能是未提交的)数据的查询结果。 |
|
返回本地数据中心副本节点的当前(可能是未提交的)数据的查询结果。 |
可以将一致性级别的值指定为字符向量或字符串标量。
关于一致性级别的详细信息,请参见配置数据一致性.
数据类型:字符
|字符串
RequestTimeout
- - - - - -请求超时
12
(默认)|正数值标量
此属性是只读的。
请求超时,指定为正数值标量。请求超时表示数据库在抛出错误之前等待返回CQL查询的秒数。
数据类型:双
输出参数
结果
-导入数据结果
表格
导入数据结果,作为表返回。表包含从对应的分区导入的数据keyValue1…keyValueN
输入参数。来自分区的每个Cassandra数据库列都成为表中的一个变量。变量名与指定分区中的Cassandra数据库列的名称相匹配。
表中变量的数据类型取决于Cassandra数据类型。有关CQL数据类型如何转换为MATLAB数据类型的详细信息,请参见使用Apache Cassandra数据库c++接口将CQL数据类型转换为MATLAB数据类型.
版本历史
在R2021a中引入
MATLAB命令
你点击了一个对应于这个MATLAB命令的链接:
在MATLAB命令窗口中输入命令来运行该命令。Web浏览器不支持MATLAB命令。
您也可以从以下列表中选择网站:
如何获得最佳的网站性能
选择中国网站(中文或英文)以获得最佳的网站表现。其他MathWorks国家网站没有针对从您的位置访问进行优化。