<!-- 
RSS generated by JIRA (9.7.1#970001-sha1:2222b88b221c4928ef0de3161136cc90c8356a66) at Thu Feb 08 08:08:12 UTC 2024

It is possible to restrict the fields that are returned in this document by specifying the 'field' parameter in your request.
For example, to request only the issue key and summary append 'field=key&field=summary' to the URL of your request.
-->
<rss version="0.92" >
<channel>
    <title>MongoDB Jira</title>
    <link>https://jira.mongodb.org</link>
    <description>This file is an XML representation of an issue</description>
    <language>en-us</language>    <build-info>
        <version>9.7.1</version>
        <build-number>970001</build-number>
        <build-date>13-04-2023</build-date>
    </build-info>


<item>
            <title>[DOCS-13590] Update mapReduce advice now that we have UDFs</title>
                <link>https://jira.mongodb.org/browse/DOCS-13590</link>
                <project id="10380" key="DOCS">Documentation</project>
                    <description>&lt;h2&gt;&lt;a name=&quot;Description&quot;&gt;&lt;/a&gt;Description&lt;/h2&gt;

&lt;p&gt;In 4.4 we&apos;re adding a feature called user-defined functions (UDFs), which lets users embed Javascript in an aggregation pipeline using the new $function and $accumulator operators. This removes one of the last few things that mapReduce can do that aggregation pipelines can&apos;t, so we can add more advice to steer people away from mapReduce and toward aggregation pipelines.&lt;/p&gt;

&lt;p&gt;&lt;del&gt;On this page: &lt;a href=&quot;https://docs.mongodb.com/manual/core/server-side-javascript/index.html&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;https://docs.mongodb.com/manual/core/server-side-javascript/index.html&lt;/a&gt;&lt;/del&gt;&lt;/p&gt;
&lt;ul class=&quot;alternate&quot; type=&quot;square&quot;&gt;
	&lt;li&gt;&lt;del&gt;We should include $function and $accumulator in the list of operators that can run Javascript.&lt;/del&gt;&lt;/li&gt;
	&lt;li&gt;&lt;del&gt;Under &quot;Disable...&quot; we should mention that as of 4.4, mongos can run Javascript, so if you want to disable Javascript in your cluster then you need to pass --noscripting or security.javascriptEnabled: false to mongos in addition to mongod.&lt;/del&gt;&lt;/li&gt;
&lt;/ul&gt;


&lt;p&gt;These three pages look like likely entry points for mapReduce, so we may want to link to aggregation near the top:&lt;/p&gt;
&lt;ul&gt;
	&lt;li&gt;&lt;a href=&quot;https://docs.mongodb.com/manual/reference/command/mapReduce/index.html&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;https://docs.mongodb.com/manual/reference/command/mapReduce/index.html&lt;/a&gt;&lt;/li&gt;
	&lt;li&gt;&lt;a href=&quot;https://docs.mongodb.com/manual/reference/method/db.collection.mapReduce/index.html&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;https://docs.mongodb.com/manual/reference/method/db.collection.mapReduce/index.html&lt;/a&gt;&lt;/li&gt;
	&lt;li&gt;&lt;del&gt;&lt;a href=&quot;https://docs.mongodb.com/manual/core/map-reduce/index.html&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;https://docs.mongodb.com/manual/core/map-reduce/index.html&lt;/a&gt;&lt;/del&gt;&lt;/li&gt;
&lt;/ul&gt;


&lt;p&gt;&lt;del&gt;I think this sentence is no longer true: &quot;In addition to grouping operations, can perform complex aggregation tasks as well as perform incremental aggregation on continuously growing datasets.&quot;&lt;/del&gt;&lt;br/&gt;
 &lt;del&gt;&lt;a href=&quot;https://docs.mongodb.com/manual/reference/aggregation-commands-comparison/index.html&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;https://docs.mongodb.com/manual/reference/aggregation-commands-comparison/index.html&lt;/a&gt;&lt;/del&gt;&lt;/p&gt;
&lt;ul&gt;
	&lt;li&gt;&lt;del&gt;I think &quot;incremental aggregation&quot; refers to &lt;a href=&quot;https://docs.mongodb.com/manual/reference/method/db.collection.mapReduce/#output-to-a-collection-with-an-action&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;mapReduce&apos;s ability to merge results with an existing collection&lt;/a&gt;. As of 4.2, aggregation can do this using $merge.&lt;/del&gt;&lt;/li&gt;
	&lt;li&gt;&lt;del&gt;I think &quot;complex aggregation tasks&quot; refers to mapReduce&apos;s ability to run arbitrary Javascript. As of 4.4, aggregation can also run Javascript.&lt;/del&gt;&lt;/li&gt;
&lt;/ul&gt;


&lt;p&gt;In the mapReduce tutorial, &quot;Various map-reduce operations can be rewritten&quot;. &lt;br/&gt;
 &lt;a href=&quot;https://docs.mongodb.com/manual/tutorial/perform-incremental-map-reduce/index.html&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;https://docs.mongodb.com/manual/tutorial/perform-incremental-map-reduce/index.html&lt;/a&gt;&lt;/p&gt;
&lt;ul&gt;
	&lt;li&gt;&lt;del&gt;We could probably strengthen this a little, by saying &quot;All&quot; or &quot;Almost all&quot; instead of &quot;Various&quot;.&lt;/del&gt;&lt;/li&gt;
	&lt;li&gt;&lt;del&gt;We could possibly mention $function and $accumulator, so people realize they aren&apos;t losing flexibility by starting with an agg pipeline.&lt;/del&gt;&lt;/li&gt;
	&lt;li&gt;We could possibly reuse this box on the other pages that talk about mapReduce, in case someone lands there directly.&lt;/li&gt;
&lt;/ul&gt;


&lt;h2&gt;&lt;a name=&quot;Scopeofchanges&quot;&gt;&lt;/a&gt;Scope of changes&lt;/h2&gt;
&lt;h2&gt;&lt;a name=&quot;ImpacttoOtherDocs&quot;&gt;&lt;/a&gt;Impact to Other Docs&lt;/h2&gt;
&lt;h2&gt;&lt;a name=&quot;MVP%28WorkandDate%29&quot;&gt;&lt;/a&gt;MVP (Work and Date)&lt;/h2&gt;
&lt;h2&gt;&lt;a name=&quot;Resources%28ScopeorDesignDocs%2CInvision%2Cetc.%29&quot;&gt;&lt;/a&gt;Resources (Scope or Design Docs, Invision, etc.)&lt;/h2&gt;</description>
                <environment></environment>
        <key id="1313594">DOCS-13590</key>
            <summary>Update mapReduce advice now that we have UDFs</summary>
                <type id="4" iconUrl="https://jira.mongodb.org/secure/viewavatar?size=xsmall&amp;avatarId=14710&amp;avatarType=issuetype">Improvement</type>
                                            <priority id="3" iconUrl="https://jira.mongodb.org/images/icons/priorities/major.svg">Major - P3</priority>
                        <status id="6" iconUrl="https://jira.mongodb.org/images/icons/statuses/closed.png" description="The issue is considered finished, the resolution is correct. Issues which are closed can be reopened.">Closed</status>
                    <statusCategory id="3" key="done" colorName="success"/>
                                    <resolution id="9">Done</resolution>
                                        <assignee username="kay.kim@mongodb.com">Kay Kim</assignee>
                                    <reporter username="david.percy@mongodb.com">David Percy</reporter>
                        <labels>
                            <label>docs-aggregation</label>
                            <label>docs-query</label>
                    </labels>
                <created>Mon, 13 Apr 2020 21:47:31 +0000</created>
                <updated>Mon, 30 Oct 2023 20:23:28 +0000</updated>
                            <resolved>Tue, 14 Apr 2020 21:42:32 +0000</resolved>
                                                    <fixVersion>Server_Docs_20231030</fixVersion>
                                    <component>manual</component>
                        <due></due>
                            <votes>0</votes>
                                    <watches>2</watches>
                                                                                                                <comments>
                            <comment id="3039793" author="xgen-internal-githook" created="Tue, 14 Apr 2020 21:44:23 +0000"  >&lt;p&gt;Author:&lt;/p&gt;
{&apos;name&apos;: &apos;Kay Kim&apos;, &apos;email&apos;: &apos;kay.kim@10gen.com&apos;, &apos;username&apos;: &apos;kay-kim&apos;}
&lt;p&gt;Message: &lt;a href=&quot;https://jira.mongodb.org/browse/DOCS-13590&quot; title=&quot;Update mapReduce advice now that we have UDFs&quot; class=&quot;issue-link&quot; data-issue-key=&quot;DOCS-13590&quot;&gt;&lt;del&gt;DOCS-13590&lt;/del&gt;&lt;/a&gt;: include note about aggregation at top of m-r command and method page&lt;br/&gt;
Branch: master&lt;br/&gt;
&lt;a href=&quot;https://github.com/mongodb/docs/commit/10091058354fa2ef1d4fc0c0c390d7f0ae2f435f&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;https://github.com/mongodb/docs/commit/10091058354fa2ef1d4fc0c0c390d7f0ae2f435f&lt;/a&gt;&lt;/p&gt;</comment>
                            <comment id="3039085" author="david.percy" created="Tue, 14 Apr 2020 16:19:31 +0000"  >&lt;p&gt;Sorry, I was looking at the 4.2 docs instead of the upcoming 4.4 docs.  I&apos;ve tried to cross out everything that doesn&apos;t make sense or is already done.  I guess what&apos;s left is only a suggestion to add those Note boxes to more pages, in case people land there directly from a link or search engine.&lt;/p&gt;</comment>
                            <comment id="3037792" author="ravind.kumar" created="Mon, 13 Apr 2020 21:49:30 +0000"  >&lt;p&gt;cc &lt;a href=&quot;https://jira.mongodb.org/secure/ViewProfile.jspa?name=kay.kim&quot; class=&quot;user-hover&quot; rel=&quot;kay.kim&quot;&gt;kay.kim&lt;/a&gt; &lt;/p&gt;</comment>
                    </comments>
                <issuelinks>
                            <issuelinktype id="10012">
                    <name>Related</name>
                                                                <inwardlinks description="is related to">
                                        <issuelink>
            <issuekey id="1128522">DOCS-13387</issuekey>
        </issuelink>
                            </inwardlinks>
                                    </issuelinktype>
                    </issuelinks>
                <attachments>
                    </attachments>
                <subtasks>
                    </subtasks>
                <customfields>
                                                <customfield id="customfield_10050" key="com.atlassian.jira.toolkit:comments">
                        <customfieldname># Replies</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue>3.0</customfieldvalue>
                        </customfieldvalues>
                    </customfield>
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        <customfield id="customfield_10055" key="com.atlassian.jira.ext.charting:firstresponsedate">
                        <customfieldname>Date of 1st Reply</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue>Mon, 13 Apr 2020 21:49:30 +0000</customfieldvalue>

                        </customfieldvalues>
                    </customfield>
                                                                <customfield id="customfield_10052" key="com.atlassian.jira.toolkit:dayslastcommented">
                        <customfieldname>Days since reply</customfieldname>
                        <customfieldvalues>
                                        3 years, 43 weeks, 1 day ago
    
                        </customfieldvalues>
                    </customfield>
                                                                <customfield id="customfield_18254" key="com.onresolve.jira.groovy.groovyrunner:scripted-field">
                        <customfieldname>Dependencies</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue><![CDATA[]]></customfieldvalue>


                        </customfieldvalues>
                    </customfield>
                                                                <customfield id="customfield_15850" key="com.atlassian.jira.plugins.jira-development-integration-plugin:devsummary">
                        <customfieldname>Development</customfieldname>
                        <customfieldvalues>
                            
                        </customfieldvalues>
                    </customfield>
                                                                                                                                                                                                            <customfield id="customfield_10857" key="com.pyxis.greenhopper.jira:gh-epic-link">
                        <customfieldname>Epic Link</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue>DOCS-12787</customfieldvalue>
                        </customfieldvalues>
                    </customfield>
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            <customfield id="customfield_10057" key="com.atlassian.jira.toolkit:lastusercommented">
                        <customfieldname>Last comment by Customer</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue>true</customfieldvalue>
                        </customfieldvalues>
                    </customfield>
                                                                <customfield id="customfield_10056" key="com.atlassian.jira.toolkit:lastupdaterorcommenter">
                        <customfieldname>Last commenter</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue>emet.ozar@mongodb.com</customfieldvalue>

                        </customfieldvalues>
                    </customfield>
                                                                <customfield id="customfield_11151" key="com.atlassian.jira.toolkit:LastCommentDate">
                        <customfieldname>Last public comment date</customfieldname>
                        <customfieldvalues>
                            3 years, 43 weeks, 1 day ago
                        </customfieldvalues>
                    </customfield>
                                                                                                                                                                                                            <customfield id="customfield_10051" key="com.atlassian.jira.toolkit:participants">
                        <customfieldname>Participants</customfieldname>
                        <customfieldvalues>
                                        <customfieldvalue>david.percy@mongodb.com</customfieldvalue>
            <customfieldvalue>xgen-internal-githook</customfieldvalue>
            <customfieldvalue>kay.kim@mongodb.com</customfieldvalue>
            <customfieldvalue>ravind.kumar</customfieldvalue>
    
                        </customfieldvalues>
                    </customfield>
                                                                                                                                                                                                                                        <customfield id="customfield_14254" key="com.pyxis.greenhopper.jira:gh-lexo-rank">
                        <customfieldname>Product Rank</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue>1|hxf1qf:</customfieldvalue>

                        </customfieldvalues>
                    </customfield>
                                                                                                                                                                                <customfield id="customfield_12550" key="com.pyxis.greenhopper.jira:gh-lexo-rank">
                        <customfieldname>Rank</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue>2|hx2kgv:</customfieldvalue>

                        </customfieldvalues>
                    </customfield>
                                                                <customfield id="customfield_10558" key="com.pyxis.greenhopper.jira:gh-global-rank">
                        <customfieldname>Rank (Obsolete)</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue>9223372036854775807</customfieldvalue>
                        </customfieldvalues>
                    </customfield>
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    <customfield id="customfield_10053" key="com.atlassian.jira.ext.charting:timeinstatus">
                        <customfieldname>Time In Status</customfieldname>
                        <customfieldvalues>
                            
                        </customfieldvalues>
                    </customfield>
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            <customfield id="customfield_14350" key="com.pyxis.greenhopper.jira:gh-lexo-rank">
                        <customfieldname>serverRank</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue>1|hxenzr:</customfieldvalue>

                        </customfieldvalues>
                    </customfield>
                                                                </customfields>
    </item>
</channel>
</rss>