基于成本的优化器的基础知识--第1部分

这一系列关于Oracle的基于成本的优化器的文章,针对的是缺乏经验的DBA和开发人员,帮助他们了解优化器想要达到什么目的,它是如何得到一个执行计划,它为什么会犯错误,以及(也许是最重要的)如何识别那些错误的根源,并以适当的方式解决由此所产生的问题。

我会尽量避免陷入极端的技术细节,虽然我将列出较多的技术问题,并会提及一些网址,这些网址就一些特定的主题会进入更深层的讨论。

为了从这个系列得到最佳的收获,你将需要具备一些阅读执行计划的经验,特别是当我们在查看优化的“故障排除”的那一方面。

概述

如果忽略掉那些影响到可读性(代码以及结果的可读性)的点滴细节,一个基本的SQL语句有如下的格式:

select {表达式清单}
from {表清单}
where {谓词清单}
group by {表达式清单}
having {谓词清单}
order by {表达式清单}

优化器的任务是制定出尽可能快的策略,以获取你所需要的原始数据,并把这些数据转化为你想看到的结果集。要做到这一点,它依赖于一种数值模型,该模型含有关于你的数据的信息(对象及其统计信息),机器性能(系统统计信息),以及可用机器资源(数据库/实例的配置)。

该模型允许优化器估计有多少数据需要检查,访问这些数据需要多少工作量,实际需要的数据有多少,对数据集进行匹配比较需要多少工作量,通过比较能够留下来或者被生成的数据有多少,对数据进行排序和/或聚集又需要多少工作量。

优化器碰到的问题是静态模型可能永远不够好——尽管Oracle公司一直不断增强代码来解决任何静态模型的先天不足——而且该模型不允许数据的使用方式的副作用(这副作用实际上可能是一件好事,除非你使用数据的方式是绝对乏味的,可预测的)。这就意味着如下的情形相对并不罕见,当优化器说:“如果我用策略A, 将需要不到1秒,如果我使用策略B, 将需要2分钟”,而你却知道策略A需要10分钟,但如果你强迫Oracle采取策略B, 你可以在5秒内得到结果。 每当这种情形发生,通常有一个能够轻易识别的原因;最常见的原因是,优化器并不真正了解你的数据是什么样子,或者不知道,有一种被涉及的机器因素,使得某些活动能够比优化器预估的更快完成。

例子

我们用一个很简单的查询来非正式描述一下优化器如何“思考”。 假设我有一个已经运行了近3年的订单处理系统,订单的数量差不多每年会提高一倍,目前为每周大约20,000个订单。大多数订单是单一种产品,但少量订单会包括2或3个项目(订单明细, order line),有一小部分有4到10个。因此,平均而言,每个订单会有1.2个订单明细与之关联,每个订单明细包括单一种产品。

下面是一些SQL来描述表和当前的索引:
create table orders (

    order_id        number(10,0) not null,
    customer_id     number(10,0) not null,
    date_ordered    date         not null,
    other_bits      varchar2(250),

-- constraint ord_fk_cus foreign key(customer_id) references customers,

    constraint ord_pk primary key(order_id)

);

create index ord_fk_cus on orders(customer_id) compress;
create index ord_date_ord on orders(date_ordered) compress;

create table order_lines(

    order_id        number(10,0)    not null,
    order_line      number(4,0)     not null,
    product_id      number(10,0)    not null,
    quantity        number(4,0)     not null,
    unit_price      number(6,2)     not null,
    other_bits      varchar2(100),
    constraint orl_pk primary key(order_id, order_line),

-- constraint orl_fk_prd foreign key(product_id) references products,

    constraint orl_fk_ord foreign key(order_id) references orders

);

create index orl_fk_prd on order_lines(product_id) compress;

有几个外键约束在这个简约的结构中被注释掉了——我还没定义一个产品表或客户表,它们自然是order_lines.product_id和orders.customer_id的参照完整性的目标。

所以,这是一个我们可能运行的查询:“找出上一周的某种特定产品的所有销售记录,找出每日订单明细的数量,以及销量和金额”。

select

    trunc(ord.date_ordered),
    count(*),
    sum(orl.quantity),
    sum(orl.quantity * orl.unit_price) total_value

from

    orders          ord,   
    order_lines     orl

where

    ord.date_ordered >= trunc(sysdate) – 7

and ord.date_ordered < trunc(sysdate)
and orl.order_id = ord.order_id
and orl.product_id = 101234
group by

    trunc(ord.date_ordered)

order by

    total_value desc

;

优化器会如何解决这个问题?

根据我们的业务知识可知,在相关的时间段大约会有20,000的订单。然而,将横跨三年的数据平均下来,优化器会产生一个接近12,000的估计值。(练习题1:检查后者是否为一个合理的近似值,然后再想想它是否仍然可能不准确)

我们可能知道产品101234很受欢迎,每天都会出现在30个订单明细上; 或者我们可能知道,这是一个高价物品,每周只有几个订单。如果它很受欢迎,并且在order_lines表上的统计数据包括了PRODUCT_ID的直方图(运气足够好的话),则优化器可能有足够的信息来获得一个很好的估计值,否则它可能只是算出有订单的每个产品的ORDER_LINES的平均数量,并将其用在计算中。假设优化器通过三年数据得到了(基于平均值)产品101234有大约1000个订单明细的估计值。

下一步是什么?据其基本预测,优化器需要来比较12000个订单和1000个订单明细,找到匹配(上周有产品101234的订单),然后做一个小小的聚合操作。顺着优化器基于这些数字的算法,我们可以看出,它会产生一个关于上周含有产品101234的订单的估算值,包含6或7个订单——这是一个很小的结果集,但我们必须获取并去除许多数据才能到它。(练习题2:检查该数据的描述,确认每星期6或7个订单是一个合理的估算计;然后解释一下产生这个估算值的逻辑有什么漏洞,即使所有产品受欢迎的程度都一样)

在“多少数据”这个问题之后,下一个问题就是“它在哪里”。因为了解数据库和订单处理系统的工作原理,我们(人类)可以假设上一周的订单是在过去的几天内入表的,并会被放在表的最后几个数据块——也许优化器在其模型中的数字(最明显的是ord_dt_ord索引上的clustering_factor)会允许它识别出上周的12,000个订单(这个估算并不正确)会被放在表中的仅仅400个数据块中。

相反,我们(人类)知道,产品101234的订单明细会分布在整个3年的交易历史中,并且优化器在其模型中的数字(特别是在orl_fk_prd索引上的clustering_factor)应该告诉它我们感兴趣的每一行数据可能是在表中的不同的块,所以(估计的)1000行会分散在表中的1000块,这对我们和优化器都可以认为是一个征兆,表明我们需要做1000个随机物理读来获取数据。

从人类的角度来说,优化器必须使用该信息来比较三种可能的策略:

  1. 独立收集所有“可能相关的”订单(ORDERS)和所有的“可能相关”的订单明细(ORDER_LINES),然后比较两组数据,以寻找匹配的(基本上有两种机制来做到这一点, 哈希连接hash join和合并连接merge join)
  2. 收集上一周所有的订单,并且当我们在获取数据时,依次查找匹配的订单明细数据(有多行),丢弃那些和产品101234无关的数据(由ORDERS驱动的嵌套循环连接nested loop join)
  3. 收集所有产品101234的订单明细(ORDER_LINES),并且正当我们在获取数据时,依次为每个订单明细查找匹配的订单(只有一行),丢弃那些不是上周的数据(由ORDER_LINES驱动的嵌套循环连接nested loop join)

www.51sole.com/b2b/pd_458660316.htm
www.51sole.com/b2b/pd_458660359.htm
www.51sole.com/b2b/pd_458660425.htm
www.51sole.com/b2b/pd_458660521.htm
www.51sole.com/b2b/pd_458660613.htm
www.51sole.com/b2b/pd_458660657.htm
www.51sole.com/b2b/pd_458660700.htm
www.51sole.com/b2b/pd_458660758.htm
www.51sole.com/b2b/pd_458664821.htm
www.51sole.com/b2b/pd_458664849.htm
www.51sole.com/b2b/pd_458664985.htm
www.51sole.com/b2b/pd_458665089.htm
www.51sole.com/b2b/pd_458665117.htm
www.51sole.com/b2b/pd_458665336.htm
www.51sole.com/b2b/pd_458665380.htm
www.51sole.com/b2b/pd_458665429.htm
www.51sole.com/b2b/pd_458665463.htm
www.51sole.com/b2b/pd_458665549.htm
www.51sole.com/b2b/pd_458665590.htm
www.51sole.com/b2b/pd_458665659.htm
www.51sole.com/b2b/pd_458665685.htm
www.51sole.com/b2b/pd_458665742.htm
www.51sole.com/b2b/pd_458665811.htm
www.51sole.com/b2b/pd_458665842.htm
www.51sole.com/b2b/pd_458665866.htm
www.51sole.com/b2b/pd_458665901.htm
www.51sole.com/b2b/pd_458666079.htm
www.51sole.com/b2b/pd_458666113.htm
www.51sole.com/b2b/pd_458666136.htm
www.51sole.com/b2b/pd_458666176.htm
www.51sole.com/b2b/pd_458666211.htm
www.51sole.com/b2b/pd_458666243.htm
www.51sole.com/b2b/pd_458666277.htm
www.51sole.com/b2b/pd_458666301.htm
www.51sole.com/b2b/pd_458666406.htm
www.51sole.com/b2b/pd_458666439.htm
www.51sole.com/b2b/pd_458666505.htm
www.51sole.com/b2b/pd_458666601.htm
www.51sole.com/b2b/pd_458666663.htm
www.51sole.com/b2b/pd_458666716.htm
www.51sole.com/b2b/pd_458666758.htm
www.51sole.com/b2b/pd_458666794.htm
www.51sole.com/b2b/pd_458666829.htm
www.51sole.com/b2b/pd_458666894.htm
www.51sole.com/b2b/pd_458666966.htm
www.51sole.com/b2b/pd_458666997.htm
www.51sole.com/b2b/pd_458667046.htm
www.51sole.com/b2b/pd_458667073.htm
www.51sole.com/b2b/pd_458670686.htm
www.51sole.com/b2b/pd_458670713.htm
www.51sole.com/b2b/pd_458670873.htm
www.51sole.com/b2b/pd_458670963.htm
www.51sole.com/b2b/pd_458671002.htm
www.51sole.com/b2b/pd_458671203.htm
www.51sole.com/b2b/pd_458671270.htm
www.51sole.com/b2b/pd_458671299.htm
www.51sole.com/b2b/pd_458671329.htm
www.51sole.com/b2b/pd_458671475.htm
www.51sole.com/b2b/pd_458671532.htm
www.51sole.com/b2b/pd_458671570.htm
www.51sole.com/b2b/pd_458671582.htm
www.51sole.com/b2b/pd_458671610.htm
www.51sole.com/b2b/pd_458671673.htm
www.51sole.com/b2b/pd_458671707.htm
www.51sole.com/b2b/pd_458671746.htm
www.51sole.com/b2b/pd_458671779.htm
www.51sole.com/b2b/pd_458671900.htm
www.51sole.com/b2b/pd_458671933.htm
www.51sole.com/b2b/pd_458671958.htm
www.51sole.com/b2b/pd_458671991.htm
www.51sole.com/b2b/pd_458672026.htm
www.51sole.com/b2b/pd_458672058.htm
www.51sole.com/b2b/pd_458672095.htm
www.51sole.com/b2b/pd_458672157.htm
www.51sole.com/b2b/pd_458672218.htm
www.51sole.com/b2b/pd_458672243.htm
www.51sole.com/b2b/pd_458672276.htm
www.51sole.com/b2b/pd_458672411.htm
www.51sole.com/b2b/pd_458672443.htm
www.51sole.com/b2b/pd_458672475.htm
www.51sole.com/b2b/pd_458672507.htm
www.51sole.com/b2b/pd_458672536.htm
www.51sole.com/b2b/pd_458672640.htm
www.51sole.com/b2b/pd_458672677.htm
www.51sole.com/b2b/pd_458672763.htm
www.51sole.com/b2b/pd_458672797.htm
www.51sole.com/b2b/pd_458672836.htm
www.51sole.com/b2b/pd_458672919.htm
www.51sole.com/b2b/pd_458676477.htm
www.51sole.com/b2b/pd_458676515.htm
www.51sole.com/b2b/pd_458676728.htm
www.51sole.com/b2b/pd_458676812.htm
www.51sole.com/b2b/pd_458676844.htm
www.51sole.com/b2b/pd_458677100.htm
www.51sole.com/b2b/pd_458677200.htm
www.51sole.com/b2b/pd_458677233.htm
www.51sole.com/b2b/pd_458677281.htm
www.51sole.com/b2b/pd_458677435.htm
www.51sole.com/b2b/pd_458677495.htm
www.51sole.com/b2b/pd_458677542.htm
www.51sole.com/b2b/pd_458677570.htm
www.51sole.com/b2b/pd_458677632.htm
www.51sole.com/b2b/pd_458677687.htm
www.51sole.com/b2b/pd_458677710.htm
www.51sole.com/b2b/pd_458677752.htm
www.51sole.com/b2b/pd_458677818.htm
www.51sole.com/b2b/pd_458678002.htm
www.51sole.com/b2b/pd_458678040.htm
www.51sole.com/b2b/pd_458678069.htm
www.51sole.com/b2b/pd_458678111.htm
www.51sole.com/b2b/pd_458678147.htm
www.51sole.com/b2b/pd_458678175.htm
www.51sole.com/b2b/pd_458678218.htm
www.51sole.com/b2b/pd_458678258.htm
www.51sole.com/b2b/pd_458678321.htm
www.51sole.com/b2b/pd_458678351.htm
www.51sole.com/b2b/pd_458678387.htm
www.51sole.com/b2b/pd_458678543.htm
www.51sole.com/b2b/pd_458678584.htm
www.51sole.com/b2b/pd_458678627.htm
www.51sole.com/b2b/pd_458678661.htm
www.51sole.com/b2b/pd_458678695.htm
www.51sole.com/b2b/pd_458678732.htm
www.51sole.com/b2b/pd_458678753.htm
www.51sole.com/b2b/pd_458678820.htm
www.51sole.com/b2b/pd_458678862.htm
www.51sole.com/b2b/pd_458678883.htm
www.51sole.com/b2b/pd_458678938.htm
www.51sole.com/b2b/pd_458682116.htm
www.51sole.com/b2b/pd_458682154.htm
www.51sole.com/b2b/pd_458682268.htm
www.51sole.com/b2b/pd_458682321.htm
www.51sole.com/b2b/pd_458682369.htm
www.51sole.com/b2b/pd_458682521.htm
www.51sole.com/b2b/pd_458682581.htm
www.51sole.com/b2b/pd_458682603.htm
www.51sole.com/b2b/pd_458682620.htm
www.51sole.com/b2b/pd_458682749.htm
www.51sole.com/b2b/pd_458682772.htm
www.51sole.com/b2b/pd_458682795.htm
www.51sole.com/b2b/pd_458682825.htm
www.51sole.com/b2b/pd_458682889.htm
www.51sole.com/b2b/pd_458682906.htm
www.51sole.com/b2b/pd_458682933.htm
www.51sole.com/b2b/pd_458682959.htm
www.51sole.com/b2b/pd_458682988.htm
www.51sole.com/b2b/pd_458683139.htm
www.51sole.com/b2b/pd_458683177.htm
www.51sole.com/b2b/pd_458683207.htm
www.51sole.com/b2b/pd_458683226.htm
www.51sole.com/b2b/pd_458683279.htm
www.51sole.com/b2b/pd_458683303.htm
www.51sole.com/b2b/pd_458683335.htm
www.51sole.com/b2b/pd_458683356.htm
www.51sole.com/b2b/pd_458683385.htm
www.51sole.com/b2b/pd_458683406.htm
www.51sole.com/b2b/pd_458683431.htm
www.51sole.com/b2b/pd_458683568.htm
www.51sole.com/b2b/pd_458683591.htm
www.51sole.com/b2b/pd_458683611.htm
www.51sole.com/b2b/pd_458683633.htm
www.51sole.com/b2b/pd_458683677.htm
www.51sole.com/b2b/pd_458683731.htm
www.51sole.com/b2b/pd_458683766.htm
www.51sole.com/b2b/pd_458683804.htm
www.51sole.com/b2b/pd_458683862.htm
www.51sole.com/b2b/pd_458683892.htm
www.51sole.com/b2b/pd_458683931.htm
www.51sole.com/b2b/pd_458686516.htm
www.51sole.com/b2b/pd_458686544.htm
www.51sole.com/b2b/pd_458686694.htm
www.51sole.com/b2b/pd_458686742.htm
www.51sole.com/b2b/pd_458686793.htm
www.51sole.com/b2b/pd_458686944.htm
www.51sole.com/b2b/pd_458687011.htm
www.51sole.com/b2b/pd_458687041.htm
www.51sole.com/b2b/pd_458687069.htm
www.51sole.com/b2b/pd_458687194.htm
www.51sole.com/b2b/pd_458687218.htm
www.51sole.com/b2b/pd_458687251.htm
www.51sole.com/b2b/pd_458687280.htm
www.51sole.com/b2b/pd_458687374.htm
www.51sole.com/b2b/pd_458687389.htm
www.51sole.com/b2b/pd_458687420.htm
www.51sole.com/b2b/pd_458687453.htm
www.51sole.com/b2b/pd_458687477.htm
www.51sole.com/b2b/pd_458687623.htm
www.51sole.com/b2b/pd_458687654.htm
www.51sole.com/b2b/pd_458687690.htm
www.51sole.com/b2b/pd_458687721.htm
www.51sole.com/b2b/pd_458687747.htm
www.51sole.com/b2b/pd_458687786.htm
www.51sole.com/b2b/pd_458687814.htm
www.51sole.com/b2b/pd_458687831.htm
www.51sole.com/b2b/pd_458687866.htm
www.51sole.com/b2b/pd_458687900.htm
www.51sole.com/b2b/pd_458687930.htm
www.51sole.com/b2b/pd_458688080.htm
www.51sole.com/b2b/pd_458688105.htm
www.51sole.com/b2b/pd_458688131.htm
www.51sole.com/b2b/pd_458688163.htm
www.51sole.com/b2b/pd_458688184.htm
www.51sole.com/b2b/pd_458688216.htm
www.51sole.com/b2b/pd_458688246.htm
www.51sole.com/b2b/pd_458688301.htm
www.51sole.com/b2b/pd_458688332.htm
www.51sole.com/b2b/pd_458688358.htm
www.51sole.com/b2b/pd_458688392.htm
www.51sole.com/xinxi/458623732.htm
www.51sole.com/xinxi/458623785.htm
www.51sole.com/xinxi/458623836.htm
www.51sole.com/xinxi/458623894.htm
www.51sole.com/xinxi/458623954.htm
www.51sole.com/xinxi/458624019.htm
www.51sole.com/xinxi/458624081.htm
www.51sole.com/xinxi/458624218.htm
www.51sole.com/xinxi/458624279.htm
www.51sole.com/xinxi/458624425.htm
www.51sole.com/xinxi/458624496.htm
www.51sole.com/xinxi/458624539.htm
www.51sole.com/xinxi/458624687.htm
www.51sole.com/xinxi/458624735.htm
www.51sole.com/xinxi/458624801.htm
www.51sole.com/xinxi/458624852.htm
www.51sole.com/xinxi/458624909.htm
www.51sole.com/xinxi/458624957.htm
www.51sole.com/xinxi/458625126.htm
www.51sole.com/xinxi/458625283.htm
www.51sole.com/xinxi/458625346.htm
www.51sole.com/xinxi/458625410.htm
www.51sole.com/xinxi/458625604.htm
www.51sole.com/xinxi/458625721.htm
www.51sole.com/xinxi/458625791.htm
www.51sole.com/xinxi/458625863.htm
www.51sole.com/xinxi/458626013.htm
www.51sole.com/xinxi/458626079.htm
www.51sole.com/xinxi/458626135.htm
www.51sole.com/xinxi/458626184.htm
www.51sole.com/xinxi/458626245.htm
www.51sole.com/xinxi/458626312.htm
www.51sole.com/xinxi/458626374.htm
www.51sole.com/xinxi/458626432.htm
www.51sole.com/xinxi/458626496.htm
www.51sole.com/xinxi/458626559.htm
www.51sole.com/xinxi/458626617.htm
www.51sole.com/xinxi/458626692.htm
www.51sole.com/xinxi/458626758.htm
www.51sole.com/xinxi/458626826.htm
www.51sole.com/xinxi/458635071.htm
www.51sole.com/xinxi/458635262.htm
www.51sole.com/xinxi/458635333.htm
www.51sole.com/xinxi/458635403.htm
www.51sole.com/xinxi/458635476.htm
www.51sole.com/xinxi/458635542.htm
www.51sole.com/xinxi/458635606.htm
www.51sole.com/xinxi/458635670.htm
www.51sole.com/xinxi/458635815.htm
www.51sole.com/xinxi/458635902.htm
www.51sole.com/xinxi/458636046.htm
www.51sole.com/xinxi/458636116.htm
www.51sole.com/xinxi/458636346.htm
www.51sole.com/xinxi/458636399.htm
www.51sole.com/xinxi/458636540.htm
www.51sole.com/xinxi/458636617.htm
www.51sole.com/xinxi/458636672.htm
www.51sole.com/xinxi/458636823.htm
www.51sole.com/xinxi/458636900.htm
www.51sole.com/xinxi/458636981.htm
www.51sole.com/xinxi/458637060.htm
www.51sole.com/xinxi/458637111.htm
www.51sole.com/xinxi/458637250.htm
www.51sole.com/xinxi/458637370.htm
www.51sole.com/xinxi/458637429.htm
www.51sole.com/xinxi/458637504.htm
www.51sole.com/xinxi/458637639.htm
www.51sole.com/xinxi/458637721.htm
www.51sole.com/xinxi/458637804.htm
www.51sole.com/xinxi/458637857.htm
www.51sole.com/xinxi/458637909.htm
www.51sole.com/xinxi/458637977.htm
www.51sole.com/xinxi/458638033.htm
www.51sole.com/xinxi/458638097.htm
www.51sole.com/xinxi/458638164.htm
www.51sole.com/xinxi/458638299.htm
www.51sole.com/xinxi/458638363.htm
www.51sole.com/xinxi/458638416.htm
www.51sole.com/xinxi/458638491.htm
www.51sole.com/xinxi/458638548.htm
www.51sole.com/xinxi/458647277.htm
www.51sole.com/xinxi/458647351.htm
www.51sole.com/xinxi/458647436.htm
www.51sole.com/xinxi/458647536.htm
www.51sole.com/xinxi/458647693.htm
www.51sole.com/xinxi/458647906.htm
www.51sole.com/xinxi/458647960.htm
www.51sole.com/xinxi/458648036.htm
www.51sole.com/xinxi/458648103.htm
www.51sole.com/xinxi/458648203.htm
www.51sole.com/xinxi/458648274.htm
www.51sole.com/xinxi/458648431.htm
www.51sole.com/xinxi/458648476.htm
www.51sole.com/xinxi/458648561.htm
www.51sole.com/xinxi/458648622.htm
www.51sole.com/xinxi/458648692.htm
www.51sole.com/xinxi/458648767.htm
www.51sole.com/xinxi/458648842.htm
www.51sole.com/xinxi/458648902.htm
www.51sole.com/xinxi/458648975.htm
www.51sole.com/xinxi/458649028.htm
www.51sole.com/xinxi/458649099.htm
www.51sole.com/xinxi/458649153.htm
www.51sole.com/xinxi/458649297.htm
www.51sole.com/xinxi/458649354.htm
www.51sole.com/xinxi/458649436.htm
www.51sole.com/xinxi/458649570.htm
www.51sole.com/xinxi/458649633.htm
www.51sole.com/xinxi/458649702.htm
www.51sole.com/xinxi/458649770.htm
www.51sole.com/xinxi/458649840.htm
www.51sole.com/xinxi/458649911.htm
www.51sole.com/xinxi/458649972.htm
www.51sole.com/xinxi/458650024.htm
www.51sole.com/xinxi/458650085.htm
www.51sole.com/xinxi/458650175.htm
www.51sole.com/xinxi/458650249.htm
www.51sole.com/xinxi/458650310.htm
www.51sole.com/xinxi/458650384.htm
www.51sole.com/xinxi/458650456.htm
www.51sole.com/xinxi/458657496.htm
www.51sole.com/xinxi/458657582.htm
www.51sole.com/xinxi/458657630.htm
www.51sole.com/xinxi/458657675.htm
www.51sole.com/xinxi/458657816.htm
www.51sole.com/xinxi/458657960.htm
www.51sole.com/xinxi/458658014.htm
www.51sole.com/xinxi/458658075.htm
www.51sole.com/xinxi/458658120.htm
www.51sole.com/xinxi/458658224.htm
www.51sole.com/xinxi/458658284.htm
www.51sole.com/xinxi/458658373.htm
www.51sole.com/xinxi/458658422.htm
www.51sole.com/xinxi/458658473.htm
www.51sole.com/xinxi/458658528.htm
www.51sole.com/xinxi/458658573.htm
www.51sole.com/xinxi/458658754.htm
www.51sole.com/xinxi/458659181.htm
www.51sole.com/xinxi/458659227.htm
www.51sole.com/xinxi/458659278.htm
www.51sole.com/xinxi/458659334.htm
www.51sole.com/xinxi/458659485.htm
www.51sole.com/xinxi/458659533.htm
www.51sole.com/xinxi/458659594.htm
www.51sole.com/xinxi/458659643.htm
www.51sole.com/xinxi/458659779.htm
www.51sole.com/xinxi/458659917.htm
www.51sole.com/xinxi/458659964.htm
www.51sole.com/xinxi/458660046.htm
www.51sole.com/xinxi/458660146.htm
www.51sole.com/xinxi/458660223.htm
www.51sole.com/xinxi/458660267.htm
www.51sole.com/xinxi/458660316.htm
www.51sole.com/xinxi/458660359.htm
www.51sole.com/xinxi/458660425.htm
www.51sole.com/xinxi/458660521.htm
www.51sole.com/xinxi/458660613.htm
www.51sole.com/xinxi/458660657.htm
www.51sole.com/xinxi/458660700.htm
www.51sole.com/xinxi/458660758.htm
www.51sole.com/xinxi/458664821.htm
www.51sole.com/xinxi/458664849.htm
www.51sole.com/xinxi/458664985.htm
www.51sole.com/xinxi/458665089.htm
www.51sole.com/xinxi/458665117.htm
www.51sole.com/xinxi/458665336.htm
www.51sole.com/xinxi/458665380.htm
www.51sole.com/xinxi/458665429.htm
www.51sole.com/xinxi/458665463.htm
www.51sole.com/xinxi/458665549.htm
www.51sole.com/xinxi/458665590.htm
www.51sole.com/xinxi/458665659.htm
www.51sole.com/xinxi/458665685.htm
www.51sole.com/xinxi/458665742.htm
www.51sole.com/xinxi/458665811.htm
www.51sole.com/xinxi/458665842.htm
www.51sole.com/xinxi/458665866.htm
www.51sole.com/xinxi/458665901.htm
www.51sole.com/xinxi/458666079.htm
www.51sole.com/xinxi/458666113.htm
www.51sole.com/xinxi/458666136.htm
www.51sole.com/xinxi/458666176.htm
www.51sole.com/xinxi/458666211.htm
www.51sole.com/xinxi/458666243.htm
www.51sole.com/xinxi/458666277.htm
www.51sole.com/xinxi/458666301.htm
www.51sole.com/xinxi/458666406.htm
www.51sole.com/xinxi/458666439.htm
www.51sole.com/xinxi/458666505.htm
www.51sole.com/xinxi/458666601.htm
www.51sole.com/xinxi/458666663.htm
www.51sole.com/xinxi/458666716.htm
www.51sole.com/xinxi/458666758.htm
www.51sole.com/xinxi/458666794.htm
www.51sole.com/xinxi/458666829.htm
www.51sole.com/xinxi/458666894.htm
www.51sole.com/xinxi/458666966.htm
www.51sole.com/xinxi/458666997.htm
www.51sole.com/xinxi/458667046.htm
www.51sole.com/xinxi/458667073.htm
www.51sole.com/xinxi/458670686.htm
www.51sole.com/xinxi/458670713.htm
www.51sole.com/xinxi/458670873.htm
www.51sole.com/xinxi/458670963.htm
www.51sole.com/xinxi/458671002.htm
www.51sole.com/xinxi/458671203.htm
www.51sole.com/xinxi/458671270.htm
www.51sole.com/xinxi/458671299.htm
www.51sole.com/xinxi/458671329.htm
www.51sole.com/xinxi/458671475.htm
www.51sole.com/xinxi/458671532.htm
www.51sole.com/xinxi/458671570.htm
www.51sole.com/xinxi/458671582.htm
www.51sole.com/xinxi/458671610.htm
www.51sole.com/xinxi/458671673.htm
www.51sole.com/xinxi/458671707.htm
www.51sole.com/xinxi/458671746.htm
www.51sole.com/xinxi/458671779.htm
www.51sole.com/xinxi/458671900.htm
www.51sole.com/xinxi/458671933.htm
www.51sole.com/xinxi/458671958.htm
www.51sole.com/xinxi/458671991.htm
www.51sole.com/xinxi/458672026.htm
www.51sole.com/xinxi/458672058.htm
www.51sole.com/xinxi/458672095.htm
www.51sole.com/xinxi/458672157.htm
www.51sole.com/xinxi/458672218.htm
www.51sole.com/xinxi/458672243.htm
www.51sole.com/xinxi/458672276.htm
www.51sole.com/xinxi/458672411.htm
www.51sole.com/xinxi/458672443.htm
www.51sole.com/xinxi/458672475.htm
www.51sole.com/xinxi/458672507.htm
www.51sole.com/xinxi/458672536.htm
www.51sole.com/xinxi/458672640.htm
www.51sole.com/xinxi/458672677.htm
www.51sole.com/xinxi/458672763.htm
www.51sole.com/xinxi/458672797.htm
www.51sole.com/xinxi/458672836.htm
www.51sole.com/xinxi/458672919.htm
www.51sole.com/xinxi/458676477.htm
www.51sole.com/xinxi/458676515.htm
www.51sole.com/xinxi/458676728.htm
www.51sole.com/xinxi/458676812.htm
www.51sole.com/xinxi/458676844.htm
www.51sole.com/xinxi/458677100.htm
www.51sole.com/xinxi/458677200.htm
www.51sole.com/xinxi/458677233.htm
www.51sole.com/xinxi/458677281.htm
www.51sole.com/xinxi/458677435.htm
www.51sole.com/xinxi/458677495.htm
www.51sole.com/xinxi/458677542.htm
www.51sole.com/xinxi/458677570.htm
www.51sole.com/xinxi/458677632.htm
www.51sole.com/xinxi/458677687.htm
www.51sole.com/xinxi/458677710.htm
www.51sole.com/xinxi/458677752.htm
www.51sole.com/xinxi/458677818.htm
www.51sole.com/xinxi/458678002.htm
www.51sole.com/xinxi/458678040.htm
www.51sole.com/xinxi/458678069.htm
www.51sole.com/xinxi/458678111.htm
www.51sole.com/xinxi/458678147.htm
www.51sole.com/xinxi/458678175.htm
www.51sole.com/xinxi/458678218.htm
www.51sole.com/xinxi/458678258.htm
www.51sole.com/xinxi/458678321.htm
www.51sole.com/xinxi/458678351.htm
www.51sole.com/xinxi/458678387.htm
www.51sole.com/xinxi/458678543.htm
www.51sole.com/xinxi/458678584.htm
www.51sole.com/xinxi/458678627.htm
www.51sole.com/xinxi/458678661.htm
www.51sole.com/xinxi/458678695.htm
www.51sole.com/xinxi/458678732.htm
www.51sole.com/xinxi/458678753.htm
www.51sole.com/xinxi/458678820.htm
www.51sole.com/xinxi/458678862.htm
www.51sole.com/xinxi/458678883.htm
www.51sole.com/xinxi/458678938.htm
www.51sole.com/xinxi/458682116.htm
www.51sole.com/xinxi/458682154.htm
www.51sole.com/xinxi/458682268.htm
www.51sole.com/xinxi/458682321.htm
www.51sole.com/xinxi/458682369.htm
www.51sole.com/xinxi/458682521.htm
www.51sole.com/xinxi/458682581.htm
www.51sole.com/xinxi/458682603.htm
www.51sole.com/xinxi/458682620.htm
www.51sole.com/xinxi/458682749.htm
www.51sole.com/xinxi/458682772.htm
www.51sole.com/xinxi/458682795.htm


已注销
1 声望1 粉丝