Skip to main content
cancel
Showing results for 
Search instead for 
Did you mean: 

We've captured the moments from FabCon & SQLCon that everyone is talking about, and we are bringing them to the community, live and on-demand. Starts on April 14th. Register now

Reply
pafnuty
Frequent Visitor

Filter in $project cursor in copy activity using Atlas MongoDB connector doesn't work

I have MongoDB Atlas as a source and then upload this data into Fabric DWH with some mappings
I've set up a $project cursor method in the "Source" tab of the Data Pipeline Copy Activity

It works fine when I write it like this:  {field1: 1, field2: 1, field3: 1}

But in my case, I need to add more complex logic with filtering for a particular field, like:

 

field1: 1, 
field2: 1,
results: {
$filter: {
input: '$results',
as: 'result',
cond: {
$in: [
'$$result.step',
[
'Value1',
'Value2',
'Value3',
'Value4'
]
]
}
}
}
}

But the fact that this query works with aggregate() function in MongoDB

 

What can be the issue using this projection within copy activity?

1 ACCEPTED SOLUTION
Anonymous
Not applicable

Hi @pafnuty ,

 

I have a suggestion that you can create an Azure Function to handle complex filtering logic. This Azure Function is then called in the data factory to process the data and pass the results to the next copy activity.

 

Best Regards,
Adamk Kong

 

If this post helps, then please consider Accept it as the solution to help the other members find it more quickly.

View solution in original post

3 REPLIES 3
Anonymous
Not applicable

Hi @pafnuty ,

 

Ensure that the MongoDB Atlas connector configured in the replication activity supports the use of $filter in the $project phase.

You can refer to the following official documentation:

Copy data from or to MongoDB Atlas - Azure Data Factory & Azure Synapse | Microsoft Learn

 

Best Regards,
Adamk Kong

 

If this post helps, then please consider Accept it as the solution to help the other members find it more quickly.

Thanks @Anonymous 
Seems like this is not supported by Azure Data Factory

Do you think there is some other way of applying this filtering with the help of Fabric?
I have really a lot of data in case I'm not using filtering, which increase processing time in tens times

Anonymous
Not applicable

Hi @pafnuty ,

 

I have a suggestion that you can create an Azure Function to handle complex filtering logic. This Azure Function is then called in the data factory to process the data and pass the results to the next copy activity.

 

Best Regards,
Adamk Kong

 

If this post helps, then please consider Accept it as the solution to help the other members find it more quickly.

Helpful resources

Announcements
FabCon and SQLCon Highlights Carousel

FabCon &SQLCon Highlights

Experience the highlights from FabCon & SQLCon, available live and on-demand starting April 14th.

New to Fabric survey Carousel

New to Fabric Survey

If you have recently started exploring Fabric, we'd love to hear how it's going. Your feedback can help with product improvements.

Join our Fabric User Panel

Join our Fabric User Panel

Share feedback directly with Fabric product managers, participate in targeted research studies and influence the Fabric roadmap.

March Fabric Update Carousel

Fabric Monthly Update - March 2026

Check out the March 2026 Fabric update to learn about new features.

Top Kudoed Authors