>  기사  >  백엔드 개발  >  树形结构数据,指定节点的子节点个数问题

树形结构数据,指定节点的子节点个数问题

WBOY
WBOY원래의
2016-06-06 20:24:071519검색

最近遇到一个关于树形结构数据的查询问题,希望有大牛指点迷津:

  1. 背景:最近接手一个项目,里面含有会员推荐功能,随着用户的增加,发展成了一个属性的庞大数据。现在需要针对每个用户查找其发展用户的个数计算,但是由于数据量庞大,每次进行父节点寻址,递归查询,程序就超时无响应,服务器配置2G内存就跑到98%,然后无法计算出结果。

  2. 条件:a. 树形结构如下图

    <code>    b.每个父节点的子节点个数不定,可以任意数目
        c.数据表有一个pid来指定其父节点的ID
    </code>

树形结构数据,指定节点的子节点个数问题

求有相关经验的大牛前来指点~~

回复内容:

最近遇到一个关于树形结构数据的查询问题,希望有大牛指点迷津:

  1. 背景:最近接手一个项目,里面含有会员推荐功能,随着用户的增加,发展成了一个属性的庞大数据。现在需要针对每个用户查找其发展用户的个数计算,但是由于数据量庞大,每次进行父节点寻址,递归查询,程序就超时无响应,服务器配置2G内存就跑到98%,然后无法计算出结果。

  2. 条件:a. 树形结构如下图

    <code>    b.每个父节点的子节点个数不定,可以任意数目
        c.数据表有一个pid来指定其父节点的ID
    </code>

树形结构数据,指定节点的子节点个数问题

求有相关经验的大牛前来指点~~

以下纯属瞎诌

每个父节点里记录一下子节点个数不行吗。。
插入的时候顺便更新。。

数据量具体是什么数量级的?如果数据量不是特别大按理来说应该不需要消耗这么大资源,递归可以考虑优化,存取中间结果释放内存,改成非递归。

兄弟我也遇到这样的问题了,你们解决了吗?

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.